openGauss Datakit:
openGauss社区推出的可视化的运维工具.
特性优势
初级用户学习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 环境概要
主机名 操作系统 架构 IP trex01 openEuler20.03 x86_64 192.168.7.111 trex02 openEuler20.03 x86_64 192.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 备节点1 192.168.7.112
初始化密码:Trex@123
默认数据库用postgres
2.5 集群一览
在首页界面可以看到集群一览信息
实时显示服务器的cpu使用率、内存使用率、网络状态、连接数等信息
2.7 集群管理
进入集群管理界面,可以进行启动、停止、重启、备份、卸载、强制卸载、删除集群
2.8 实例管理
新增数据源
2.9 业务开发
2.9.1 填写数据库连接信息
数据库列表显示如下
2.9.2 创建测试表,并进行查询
2.10 其他功能
关于其它功能,操作很简单,这里不做赘述,快开始动手探索吧!