暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

openGauss + Datakit搭建openGauss运维平台

是赐赐啊!🦄 2025-01-21
96


特性优势

  • 初级用户学习openGauss门槛高让你望而却步? openGauss Datakit一键化安装企业版集群、监控、日志分析、SQL诊断,让你快速上手,快速部署,从容面对企业环境!
  • 不同openGauss版本运维命令让你晕头转向? openGauss Datakit屏蔽命令差异,可视化操作,屏蔽命令差异,让你不再为细节犯愁,轻松驾驭openGauss数据库!
  • 数据迁移和校验速度慢成了难题? openGauss Datakit携手全新迁移工具集,图形化、批量并行迁移全流程,速度大幅提升,告别烦恼!
  • openGauss的监控和日志分析让你头疼? openGauss Datakit一站式解决方案,让你轻松掌控数据库状态!

openGaussDatakit,开启数据库畅玩时代,让运维如丝般顺滑!

完全干货,本文将从实操方面手把手带你安装Datakit以及使用Datakit部署openGauss5.0.0集群。

注意事项

  • 当前平台运行依赖于openJDK11
  • 平台使用的数据库,当前仅支持openGauss数据库,并且需要提前创建database
  • 如果有防火墙,需要将部署服务器IP配置在平台使用的数据库(openGauss)的白名单列表中
  • 平台默认的登录账号密码:admin/admin123,请在首次登录后及时修改密码

注:

本文基于openEuler release 22.03 LTS x86_64部署openGaussDatakit5.0.0

Datakit的安装

1 环境准备

1.1 创建安装包存放目录

mkdir -p /soft/

我这里已经将用到的各种包整理到datakit-about.zip

datakit下载地址:

https://opengauss.obs.cn-south-1.myhuaweicloud.com/latest/tools/Datakit/Datakit-5.0.0.tar.gz

上传datakit-about.zip到/soft并解压

cd /soft

unzip datakit-about.zip

解压后的目录结构如下

/soft/datakit-about

├── datakit

│ └── Datakit-5.0.0.tar.gz

├── docker

│ └── docker-engine-18.09.0-300.oe2203.x86_64.rpm

├── openGaussRPM

│ └── opengauss-2.1.0-5.oe2203.x86_64.rpm

└── openjdk

├── giflib-5.2.1-4.oe2203.x86_64.rpm

├── java-11-openjdk-11.0.20.8-0.oe2203.x86_64.rpm

├── java-11-openjdk-headless-11.0.20.8-0.oe2203.x86_64.rpm

├── java-1.8.0-openjdk-1.8.0.352.b08-3.oe2203.x86_64.rpm

├── java-1.8.0-openjdk-devel-1.8.0.352.b08-3.oe2203.x86_64.rpm

└── java-1.8.0-openjdk-headless-1.8.0.352.b08-3.oe2203.x86_64.rpm

1.2 解压Datakit-5.0.0.tar.gz

cd /soft/datakit-about/datakit/

tar -xvf Datakit-5.0.0.tar.gz

解压后的Datakit-5.0.0目录结构如下

/soft/datakit-about/datakit/

├── alert-monitor-5.0.0-repackage.jar

├── alert-monitor-README.md

├── application-temp.yml

├── base-ops-5.0.0-repackage.jar

├── base-ops-README.md

├── Datakit-5.0.0.tar.gz

├── data-migration-5.0.0-repackage.jar

├── data-migration-README.md

├── data-studio-readme.md

├── monitor-tools-1.0.0-repackage.jar

├── observability-instance-5.0.0-repackage.jar

├── observability-instance-README.md

├── observability-log-search-5.0.0-repackage.jar

├── observability-log-search-README.md

├── observability-sql-diagnosis-5.0.0-repackage.jar

├── observability-sql-diagnosis-README.md

├── openGauss-tools-monitor-README.md

├── visualtool-main.jar

├── visualtool-README.md

└── webds-plugin-5.0.0-repackage.jar

2 安装docker

注:

jar方式安装Datakit时略过此步骤

cd /soft/datakit-about/docker/

rpm -ivh *.rpm

3 安装openJDK11

cd /soft/datakit-about/openjdk

rpm -ivh *.rpm

系统中安装多个jdk版本,可以使用alternatives命令来切换默认的Java版本,后面会提到。

4 安装openGauss数据库

该平台当前仅支持openGauss数据库,并且需要提前创建database。

这里采用最简单的一种方式——通过RPM方式安装极简版的openGauss。

cd /soft/datakit-about/openGaussRPM

rpm -ivh *.rpm

切换到openGauss用户

su - opengauss

进入openGauss数据目录

cd $PGDATA

编辑 postgresql.conf

vi postgresql.conf

修改下面两个参数

listen_addresses = '*'

max_connections = 1000

编辑 pg_hba.conf

vi pg_hba.conf

文末追加

host all all 0.0.0.0/0 sha256

重启openGauss服务

gs_ctl restart

登录数据库

gsql -d postgres -p 7654 -r

修改openGauss密码

初次登录,执行命令时会提示修改openGauss密码

出现如下信息

ERROR: Please use "ALTER ROLE user_name PASSWORD 'password';" to set the password of user opengauss before other operation!

修改openGauss密码即可

ALTER ROLE opengauss PASSWORD 'Admin@123';

创建用户

CREATE USER trex IDENTIFIED BY 'Trex@123';

授权

alter user trex sysadmin;

创建数据库

create database trexdb;

5 安装部署

5.1 jar包方式(离线安装)

5.1.1 创建datakit工作目录,并在工作目录中创建存放系统运行数据的子目录

mkdir -p /ogdatakit/{logs,config,ssl,files,visualtool-plugin}

5.1.2 将visualtool-main.jar包复制到 /ogdatakit 下

cd /ogdatakit/

cp /soft/datakit-about/datakit/visualtool-main.jar .

5.1.3 将插件复制到/ogdatakit/visualtool-plugin

cp /soft/datakit-about/datakit/base-ops-5.0.0-repackage.jar /ogdatakit/visualtool-plugin

5.1.4 修改配置文件

将配置文件application-temp.yml 复制到 /ogdatakit/config/下

修改application-temp.yml文件中的数据链链接ip、port、database、dbuser、dbpassword。

cp /soft/datakit-about/datakit/application-temp.yml /ogdatakit/config/

vi /ogdatakit/config/application-temp.yml

修改如下部分内容

5.1.5 修改配置文件中平台工作目录

sed -i s#/ops#$(pwd)#g config/application-temp.yml

5.1.6 创建ssl文件

keytool -genkey 命令用于创建 SSL 文件(包括密钥对和证书),并且它与 JDK(Java Development Kit)是有关系的。keytool 是 JDK 提供的一个工具,用于管理密钥库和证书,用于加密和身份验证等安全通信。

切换到openJDK11环境,并验证版本

alternatives --config java

java -version

keytool -genkey -noprompt \

-dname "CN=opengauss, OU=opengauss, O=opengauss, L=Beijing, S=Beijing, C=CN"\

-alias opengauss\

-storetype PKCS12 \

-keyalg RSA \

-keysize 2048 \

-keystore $(pwd)/ssl/keystore.p12 \

-validity 3650 \

-storepass 123456

5.1.7 执行启动命令

nohup java -Xms2048m -Xmx4096m -jar $(pwd)/visualtool-main.jar \

--spring.profiles.active=temp >$(pwd)/logs/visualtool-main.out 2>&1 &

5.1.8 查看执行日志

tail -200f /ogdatakit/logs/visualtool-main.out

显示如下信息表示初始化完成

接下来就可以使用Datakit了,详见步骤 【Datakit的使用】

5.2 docker方式安装(联网安装)

5.2.1 创建datakit工作目录,并在工作目录中创建存放系统运行数据的子目录

mkdir -p /ogdatakit/{logs,config,ssl,files,visualtool-plugin}

5.2.2 将visualtool-main.jar包复制到 /ogdatakit 下

cd /ogdatakit/

cp /soft/datakit-about/datakit/visualtool-main.jar .

5.2.3 将插件复制到/ogdatakit/visualtool-plugin

cp /soft/datakit-about/datakit/*.jar /ogdatakit/visualtool-plugin

5.2.4 修改配置文件

将配置文件application-temp.yml 复制到 /ogdatakit/config/下

修改application-temp.yml文件中的数据链链接ip、port、database、dbuser、dbpassword.

cp /soft/datakit-about/datakit/application-temp.yml /ogdatakit/config/

vi /ogdatakit/config/application-temp.yml

修改如下部分内容

5.2.5 创建ssl文件

keytool -genkey 命令用于创建 SSL 文件(包括密钥对和证书),并且它与 JDK(Java Development Kit)是有关系的。keytool 是 JDK 提供的一个工具,用于管理密钥库和证书,用于加密和身份验证等安全通信。

切换到openJDK11环境

alternatives --config java

验证版本

java -version

创建ssl文件

cd /ogdatakit/

keytool -genkey -noprompt \

-dname "CN=opengauss, OU=opengauss, O=opengauss, L=Beijing, S=Beijing, C=CN"\

-alias opengauss\

-storetype PKCS12 \

-keyalg RSA \

-keysize 2048 \

-keystore $(pwd)/ssl/keystore.p12 \

-validity 3650 \

-storepass 123456

5.2.6 编辑Dockerfile

cd /ogdatakit/

vi Dockerfile

粘贴以下内容

FROM openjdk:11

ENV TZ=Asia/Shanghai

RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

EXPOSE 9494 5432

WORKDIR /ops/

ENTRYPOINT ["java","-Xms2048m","-Xmx4096m", "-jar", "visualtool-main.jar"]

5.2.7 构建镜像

cd /ogdatakit/

docker build -f Dockerfile -t datakit:5.0.0 .

5.2.8 启动容器

cd /ogdatakit/

docker run -idt -p 9494:9494 \

-v /etc/localtime:/etc/localtime:ro \

-v $(pwd):/ops \

--name datakit datakit:5.0.0 \

--spring.profiles.active=temp

显示的a25f5fdda47531e9c9093e501e569a4aeba59b610581d11c2ff4be317108e697为容器ID

列出当前正在运行的容器

docker ps

显示如下

查看日志

docker logs -f datakit

显示如下信息表示初始化完成

接下来就可以使用Datakit了,详见步骤 【Datakit的使用】

Datakit的使用

1 登录管理界面

在浏览器中打开如下地址:https://192.168.7.100:9494

平台默认的登录账号密码:admin/admin123,请在首次登录后及时修改密码。

进入主界面

2 安装部署openGauss集群

此处以安装一主一备集群为例进行演示

2.1 环境概要

主机名操作系统架构IPtrex01openEuler20.03x86_64192.168.7.111trex02openEuler20.03x86_64192.168.7.112

2.2 安装前准备

下载openGauss企业版安装包:https://opengauss.org/zh/download/

下载完成后会得到 openGauss-5.0.0-openEuler-64bit-all.tar.gz

2.2.1 创建用户组dbgrp及用户

注:

1 操作系统root用户执行

2 trex01和trex02都操作

groupadd dbgrp

useradd -g dbgrp omm

passwd omm

密码这里设置为omm@123

2.2.2 给omm授予root权限

chmod u+w /etc/sudoers

vi /etc/sudoers

追加如下内容

omm ALL=(ALL) NOPASSWD: ALL

2.2.3 创建软件包路径并授权

mkdir -p /opt/software/openGauss

chmod +x /opt/software/openGauss/

chown -R omm:dbgrp /opt/software

2.2.4 在root用户下验证下述命令是否执行成功

注:

如果不成功,请检查上述3个步骤

su - omm -c 'cd /opt/software/openGauss/'

2.2.5 安装依赖包

yum install libaio-devel flex bison ncurses-devel glibc-devel patch readline-devel libnsl2 bzip2 python3 expect

2.3 配置服务器信息

进入Datakit管理界面

2.3.1 配置trex01

  • 新增物理机

1 准确的来说,界面上应该是新增服务器,这里物理机和虚拟机均可

2 如果服务器只有一个网卡,内外网ip可以设置成同一个。

3 端口为ssh端口

4 密码:操作系统root密码

  • 添加普通用户

这里添加的用户是在2.2.1步骤创建的omm用户

2.3.2 配置trex02

以配置trex01同样的方法,配置trex02

2.3.3 配置信息预览

trex01和trex02配置完成后,显示如下

2.4 集群安装

2.4.1 选择安装的openGauss版本

此处以企业版为例

2.4.2 选择安装方式

这里以离线安装为例

2.4.3 上传安装包

点击上传

在弹出的界面直接点击图中的“+”上传,会自动识别并填充其它信息

选择 openGauss-5.0.0-openEuler-64bit-all.tar.gz

安装包名称可自定义,其它信息为自动识别

上传完成后,会显示到如下

选中openGauss的安装包

2.4.4 集群配置

  • 集群配置

1 这里选择环境分离后,openGauss的环境变量会单独配置的自定义文件中,避免和用户环境变量产生混乱。

2 根据个人习惯,你也可以不选择环境分离

  • 主节点配置 因为前面配置过服务器信息,这里直接下拉框选择即可

  • 备节点1配置

2.4.5 环境检测

图中的警告信息可忽略。

原因:这里内存建议32GB或以上是针对生产环境的要求,实际开发测试4GB完全可以正常安装。

2.4.6 集群信息预览

2.4.7 执行安装

安装过程中:

1 openGauss集群安装完全自动化

2 窗口中会显示执行命令的详细信息

3 请勿进行其他操作,否则将导致安装失败

2.4.8 安装完成

显示如下信息,表示安装成功

请妥善保管用户名密码

名称值集群标识cluster_trex端口号5432数据库用户gaussdb主节点192.168.7.111备节点1192.168.7.112

初始化密码:Trex@123

默认数据库用postgres

2.5 集群一览

在首页界面可以看到集群一览信息

实时显示服务器的cpu使用率、内存使用率、网络状态、连接数等信息

2.7 集群管理

进入集群管理界面,可以进行启动、停止、重启、备份、卸载、强制卸载、删除集群

2.8 实例管理

新增数据源

2.9 业务开发

2.9.1 填写数据库连接信息

数据库列表显示如下

2.9.2 创建测试表,并进行查询

2.10 其他功能

自行探索

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论