前言
今天抽空体验了一下openGauss运维工具DataKit6.0,现把安装部署过程分享出来供大家参考学习。
DataKit介绍
openGauss官方文档:https://docs.opengauss.org/zh/docs/6.0.0/docs/ToolandCommandReference/DataKit.html
DataKit使用文档和开发文档:https://gitee.com/opengauss/docs/blob/6.0.0/content/zh/docs/ToolandCommandReference/DataKit.md
功能介绍
openGauss的开发运维涉及到很多复杂操作,DataKit提供了一个可视化操作的运维界面,可以帮助用户管理,安装,监控运维自己的openGauss数据库以及对应的物理机资源。
DataKit是一个以资源(物理机,数据库)为底座的开发运维工具,将上层的开发运维工具插件化,各插件之间相互独立,方便用户按需引入。各插件围绕DataKit的资源中心进行扩展开,完成数据库的运维,监控,迁移,开发,建模等复杂的操作。
原理简介
DataKit是基于spring-brick开发的插件化的工具,前台使用vue,后台使用spring-boot技术栈。DataKit基座提供资源管理,安全中心,日志中心等基础的公共能力,具体的数据库安装,运维,监控,数据迁移等能力是基于spring-brick开发的插件工具,可以灵活的在基座上面安装卸载,方便客户按需使用。
特性优势
本项目是基于Web的openGauss的可视化的一体化工具:DataKit,目的是方便客户使用和管理openGauss可视化工具,可以为客户降低openGauss数据库安装使用门槛,做到安全中心管理,插件管理,以及其它功能包括一键化部署、卸载、组件化安装、多版本升级和日常运维。
DataKit安装部署
安装前准备
注意事项
- 当前平台运行依赖于openJDK11
- 平台使用的数据库,当前仅支持openGauss数据库,并且需要提前创建database。
- 如果有防火墙,需要将部署服务器IP配置在平台使用的数据库(openGauss)的白名单列表中。
- 平台默认的登录账号密码:admin/admin123,请在首次登录后及时修改密码。
DataKit安装
DataKit下载
下载地址:https://opengauss.org/zh/download/
上传并解压Datakit软件包
把Datakit-6.0.0.tar.gz安装包上传到/opt/soft目录下。
解压安装包:
tar -zxvf Datakit-6.0.0.tar.gz
解压后的目录结构如下:
[root@node1 soft]# tree
.
├── application-temp.yml
├── build_commit_id.log
├── Datakit-6.0.0.tar.gz
├── doc
│ ├── alert-monitor-README.md
│ ├── base-ops-README.md
│ ├── compatibility-assessment-README.md
│ ├── datakit-README.md
│ ├── data-migration-README.md
│ ├── data-studio-README.md
│ ├── intelligent-parameter-tuning-README.md
│ ├── oauth-login-README.md
│ ├── observability-instance-README.md
│ ├── observability-log-search-README.md
│ ├── observability-sql-diagnosis-README.md
│ └── openGauss-tools-monitor-README.md
├── openGauss-datakit-6.0.0.jar
├── run.sh
└── visualtool-plugin
├── alert-monitor-6.0.0-repackage.jar
├── base-ops-6.0.0-repackage.jar
├── compatibility-assessment-6.0.0-repackage.jar
├── data-migration-6.0.0-repackage.jar
├── MetaTune-6.0.0-repackage.jar
├── monitor-tools-6.0.0-repackage.jar
├── oauth-login-6.0.0-repackage.jar
├── observability-instance-6.0.0-repackage.jar
├── observability-log-search-6.0.0-repackage.jar
├── observability-sql-diagnosis-6.0.0-repackage.jar
└── webds-plugin-6.0.0-repackage.jar
安装jdk
yum install -y java-11-openjdk
检查jdk版本
[root@node1 ~]# java -version
openjdk version "1.8.0_332"
OpenJDK Runtime Environment (build 1.8.0_332-b09)
OpenJDK 64-Bit Server VM (build 25.332-b09, mixed mode)
设置jdk版本为11
安装完后设置jdk版本为11,过程如下:
[root@node1 ~]# alternatives --config java
There are 3 programs which provide 'java'.
Selection Command
-----------------------------------------------
1 java-1.7.0-openjdk.x86_64 (/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.261-2.6.22.2.el7_8.x86_64/jre/bin/java)
*+ 2 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.332.b09-1.el7_9.x86_64/jre/bin/java)
3 java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.23.0.9-2.el7_9.x86_64/bin/java)
Enter to keep the current selection[+], or type selection number: 3
再次检查jdk版本
[root@node1 ~]# java -version
openjdk version "11.0.23" 2024-04-16 LTS
OpenJDK Runtime Environment (Red_Hat-11.0.23.0.9-2.el7_9) (build 11.0.23+9-LTS)
OpenJDK 64-Bit Server VM (Red_Hat-11.0.23.0.9-2.el7_9) (build 11.0.23+9-LTS, mixed mode, sharing)
[root@node1 ~]#
创建DataKit工作目录
mkdir -p /data/Datakit/logs #日志目录
mkdir -p /data/Datakit/openGauss-visualtool/config #配置文件目录
mkdir -p /data/Datakit/ssl #ssl目录
mkdir -p /data/Datakit/files #files目录
配置文件application-temp.yml
vi /opt/soft/application-temp.yml
修改这些地方:
修改后的结果如下:
注意:出于安全考虑,文件中的ip地址和password用*****代替。
[root@node1 config]# cat application-temp.yml
system:
# File storage path
defaultStoragePath: /data/Datakit/files
# Whitelist control switch
whitelist:
enabled: false
server:
port: 9494
ssl:
key-store: /data/Datakit/ssl/keystore.p12
key-store-password: 123456
key-store-type: PKCS12
enabled: true
servlet:
context-path: /
logging:
file:
path: /data/Datakit/logs/
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
# For openGauss
driver-class-name: org.opengauss.Driver
url: jdbc:opengauss://192.*.*.60:15400/datakitdb?currentSchema=public&batchMode=off
username: datakit
password: ******
# For Intarkdb
# driver-class-name: org.intarkdb.IntarkdbJDBC
# url: jdbc:intarkdb:data/datakit
druid:
test-while-idle: true
test-on-borrow: true
validation-query: "select 1"
validation-query-timeout: 10000
connection-error-retry-attempts: 0
break-after-acquire-failure: true
max-wait: 300000
keep-alive: true
max-active: 30
min-evictable-idle-time-millis: 600000
management:
server:
port: 9494
plugins:
oauth-login:
# A unique identifier obtained by registering with DevKit
client-id: your_client_id
# A secret key paired with the client_id
client-secret: your_client_secret
datakit-url: https://ip:port
devkit-url: https://ip:port
# SSL certificate
ssl-key: your_ssl_key
[root@node1 config]#
配置文件拷贝到 /data/Datakit/openGauss-visualtool/config目录下:
cp application-temp.yml /data/Datakit/openGauss-visualtool/config/
生成ssl文件
[root@node1 soft]# 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 /data/Datakit/ssl/keystore.p12 -validity 3650 -storepass 123456
[root@node1 soft]#
注意:命令中的keystore、storepass两个参数的值需要和application-temp.yml文件中保持一致。
拷贝openGauss-datakit-6.0.0.jar文件
cp /opt/soft/openGauss-datakit-6.0.0.jar /data/Datakit/openGauss-visualtool/
启动Datakit
nohup java -Xms1024m -Xmx2048m -jar /data/Datakit/openGauss-visualtool/openGauss-datakit-6.0.0.jar --spring.profiles.active=temp >/data/Datakit/logs/visualtool-main.out 2>&1 &
登录datakit web端
平台默认的登录默认端口9494,平台默认的登录账号密码:admin/admin123,请在首次登录后及时修改密码。
登录地址:https://ip:9494
实例管理
可以看到实例的实时运行情况。
服务器管理
可以看到服务器的实时运行情况。
插件管理
安装插件后,可以看到左边的菜单增加了安装部署、基础运维、智能运维、告警、数据迁移、兼容性评估、智能性参数调优等内容,完全满足日常运维需要。
安装的插件会存放在服务器的这个目录:/data/Datakit/openGauss-visualtool/visualtool-plugin
[root@node1 ~]# cd /data/Datakit/openGauss-visualtool/visualtool-plugin
[root@node1 visualtool-plugin]# ll
total 613416
-rw-r--r-- 1 root root 82833727 Nov 21 13:02 alert-monitor-6.0.0-repackage.jar
-rw-r--r-- 1 root root 58341751 Nov 21 12:43 base-ops-6.0.0-repackage.jar
-rw-r--r-- 1 root root 63093773 Nov 21 13:03 compatibility-assessment-6.0.0-repackage.jar
-rw-r--r-- 1 root root 32585208 Nov 21 13:00 data-migration-6.0.0-repackage.jar
-rw-r--r-- 1 root root 64090612 Nov 21 13:05 MetaTune-6.0.0-repackage.jar
-rw-r--r-- 1 root root 37983131 Nov 21 13:04 monitor-tools-6.0.0-repackage.jar
-rw-r--r-- 1 root root 42026528 Nov 21 13:06 oauth-login-6.0.0-repackage.jar
-rw-r--r-- 1 root root 247163511 Nov 21 13:01 observability-instance-6.0.0-repackage.jar
[root@node1 visualtool-plugin]#
总结
openGauss运维工具DataKit安装部署还是比较容易的,快动手试一试吧!