32 Star 34 Fork 100

openGauss / openGauss-workbench

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 10.46 KB
一键复制 编辑 原始数据 按行查看 历史

openGauss DataKit

openGauss的安装、运维场景对于初级用户或单纯想要测试openGauss数据库基本特性的使用者来说技术难度较大、过程较为复杂、学习曲线较为陡峭,尤其企业版安装对一般用户来说操作难度很大。使用可视化运维平台可以屏蔽openGauss的技术细节,让普通用户能够快速上手体验功能,让运维人员能够快速在企业环境中部署、卸载各类openGauss集群,减少了用户的学习成本和运维成本,实现了对openGauss各种常见操作的可视化,屏蔽了各种不同openGauss版本中的运维命令差异,可以让用户使用相同的方式操作数据库,不用知道命令细节也可以使用openGauss数据库的各项能力,让用户可以专注于自身的业务领域。

因此需要开发一些有针对性的运维监控工具,为不同配置不同运维要求的客户提供运维技术支撑,这些都将是openGauss社区的宝贵资产。而社区急需一个一体化的平台通过插件的方式将这些工具进行整合,并支持方便快捷的个性化配置。

本项目是基于Web的openGauss的可视化的平台系统,目的是方便客户使用和管理openGauss可视化工具,可以为客户降低openGauss数据库安装使用门槛,做到安全中心管理,插件管理,以及其它功能包括一键化部署、卸载、组件化安装、多版本升级、日常运维和监控。

项目仓库结构

├── openGauss-datakit  //平台项目
├── plugins
├───├─alert-monitor         // 告警插件
├───├─base-ops              //基础运维插件项目
├───├─data-migration        //MySql数据迁移插件项目
├───├─data-studio           // Web 版本DataStudio
├───├─datakit-demo-plugin  //平台项目插件开发脚手架
├───├─datasync-mysql        //MySql数据迁移插件项目(已弃用)
├───├─observability-instance  //智能运维插件实例监控项目
├───├─observability-log-search  //智能运维插件日志检索项目
├───├─observability-sql-diagnosis  //智能运维插件慢sql诊断项目
├───├─openGauss-tools-monitor  // openGauss 数据库监控插件

下载链接

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

说明

  1. 插件需要安装在平台上运行,因此需要先将平台项目安装部署后,再将其他插件项目打包安装使用。

  2. 插件开发脚手架项目是为了方便开发者快速开发与平台适配的插件,而搭建的插件开发脚手架,开发者可在此脚手架之上开发业务功能。该脚手架配置的各项依赖版本已经经过验证,和平台兼容性最好,因此建议不要修改依赖版本。

编译代码

  1. 请提前安装java 11+, maven 3.8.0+, node v18+(含npm),并配置好maven镜像源和node镜像源
  2. 执行sh build.sh
  3. 编译输出件在output/Datakit-${pom_version}.tar.gz

安装步骤

  1. 解压安装包
    通过下载链接或编译代码获取安装包Datakit-6.0.0.tar.gz,解压安装包至datakit安装目录下,例如安装目录为/path/datakit_server时,解压目录如下:
    $ tar -zxvf Datakit-6.0.0.tar.gz -C /path/datakit_server
    ./application-temp.yml
    ./doc/
    ./doc/datasync-mysql-README.md
    ./doc/data-migration-README.md
    ./doc/datakit-README.md
    ./doc/datakit-demo-plugin-README.md
    ./doc/observability-log-search-README.md
    ./doc/observability-instance-README.md
    ./doc/data-studio-README.md
    ./doc/alert-monitor-README.md
    ./doc/observability-sql-diagnosis-README.md
    ./doc/compatibility-assessment-README.md
    ./doc/openGauss-tools-monitor-README.md
    ./doc/base-ops-README.md
    ./openGauss-datakit-6.0.0.jar
    ./run.sh
    ./visualtool-plugin/
    ./visualtool-plugin/webds-plugin-6.0.0-repackage.jar
    ./visualtool-plugin/compatibility-assessment-6.0.0-repackage.jar
    ./visualtool-plugin/observability-instance-6.0.0-repackage.jar
    ./visualtool-plugin/observability-sql-diagnosis-6.0.0-repackage.jar
    ./visualtool-plugin/observability-log-search-6.0.0-repackage.jar
    ./visualtool-plugin/monitor-tools-6.0.0-repackage.jar
    ./visualtool-plugin/data-migration-6.0.0-repackage.jar
    ./visualtool-plugin/alert-monitor-6.0.0-repackage.jar
    ./visualtool-plugin/datakit-demo-plugin-6.0.0-repackage.jar
    ./visualtool-plugin/datasync-mysql-6.0.0-repackage.jar
    ./visualtool-plugin/base-ops-6.0.0-repackage.jar
  2. 创建新目录
    datakit安装目录下,创建新的目录config, files, ssl, logs
    $ cd /path/datakit_server
    mkdir config files ssl logs
  3. 更改配置文件 - 修改工作目录
    修改datakit安装目录下的application-temp.yml文件,文件中的/ops默认工作目录路径统一修改为实际datakit安装目录的路径/path/datakit_server,而第二步创建的目录就是为了此处统一使用的
    $ vim application-temp.yml
    system.defaultStoragePath: /ops/files
    server.ssl.key-store: /ops/ssl/keystore.p12
    logging.file.path: /ops/logs
  4. 更改配置文件 - 配置数据库
    数据库可选用openGauss或轻量嵌入式数据库Intarkdb,平台默认使用openGauss作为后台数据库。使用openGauss作为后台数据库时,需要正确配置openGauss的连接信息。配置内容如下:
    # For openGauss
    driver-class-name: org.opengauss.Driver
    url: jdbc:opengauss://ip:port/database?currentSchema=public&batchMode=off
    username: dbuser
    password: dbpassword
    使用轻量嵌入式数据库Intarkdb作为后台数据库时,只需注释openGauss的配置内容,并解开对Intarkdb配置内容的注释,即可完成配置。目前datakitbase-opsalert-monitor在启动时会在数据库初始化数据。配置内容如下:
    # For Intarkdb
    driver-class-name: org.intarkdb.IntarkdbJDBC
    url: jdbc:intarkdb:data/datakit
    配置文件更改完成后,保存并退出文件编辑,然后执行如下命令,将application-temp.yml文件移动到第二步创建的config目录下
    mv application-temp.yml config
    注意:此处使用openGauss作为后台数据库时,需要提前对数据库做一些参数配置,详细步骤请参考下方目录补充:openGauss参数配置
  5. 生成密钥信息
    修改并执行如下命令生成密钥信息。修改-storepass参数值与application.yml配置文件中的key-store-password值保持一致,默认时两者均为123456;修改-keystore路径值与配置文件中的key-store路径值保持一致,即第三步中修改/ops后的路径。
    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 /ops/ssl/keystore.p12 -validity 3650 -storepass 123456
    注意:此处为一条完整命令。
  6. 启动与日常运维
    启动应用:
    sh ./run.sh start
    停止应用:
    sh ./run.sh stop
    重启应用:
    sh ./run.sh restart
    检查应用状态:
    sh ./run.sh status
  7. 访问服务
    启动成功后,通过浏览器输入如下地址:https://ip:9494/ 访问datakit服务,这里的ipdatakit服务安装在的主机ip9494datakit服务默认端口,如有修改请根据实际情况替换。初始用户为admin,初始密码为admin123,首次登录需修改初始密码。

补充:openGauss参数配置

  1. 安装openGauss数据库
    openGauss数据库的下载及安装请参考官网教程,这里不做赘述,下载地址:https://opengauss.org/zh/download/
  2. 切换数据库安装用户,并加载环境变量
    成功安装openGauss数据库后,主机切换到数据库安装用户,如omm用户。然后source环境变量文件,来加载openGauss的环境变量,如omm用户环境变量文件~/.bashrc。注意此环境变量文件为openGauss数据库环境变量所在文件,请根据实际情况替换。
    source ~/.bashrc
  3. 参数配置
    修改并执行如下命令,设置配置文件pg_hba.conf相关参数
    gs_guc set -D /opt/software/openGauss/data/single_node -h "host all all 0.0.0.0/0 sha256"
    修改并执行如下命令,配置文件postgresql.conf相关参数
    gs_guc set -D /opt/software/openGauss/data/single_node -c "listen_addresses = '*'"
    上述命令中的/opt/software/openGauss/data/single_node为数据库节点的安装目录路径,此目录下包含有上述两个文件,请根据数据库的实际情况替换。此处参数配置的目的是使得数据库接受来自任意ip地址的连接请求,以便在外部服务器可以成功连接到数据库。
  4. 重启数据库
    执行如下命令重新启动数据库,使参数配置生效。此处的/opt/software/openGauss/data/single_node请按第三步的方法替换为实际路径
    gs_ctl restart -D /opt/software/openGauss/data/single_node
  5. 连接数据库
    执行如下命令连接数据库,此处5432openGauss数据库默认端口,请根据实际情况替换
    gsql -d postgres -p 5432 -r
  6. 创建用户及数据库
    成功连接数据库后,依次执行如下三条命令,分别进行创建用户,赋予用户管理员权限,创建数据库的操作。
    create user opengauss_test with password 'Sample@123';
    grant all privileges to opengauss_test;
    create database db_datakit;
    由于openGauss数据库不支持通过初始用户进行远程连接,因此此处创建新的用户供datakit远程连接时使用。同时,由于datakit需要拥有管理员权限对数据库进行操作,因此需要赋予连接用户管理员权限。此处新建db_datakit数据库作为datakit平台的底层数据库使用,不用做任何操作,datakit成功连接后会自动初始化数据。
  7. 所有配置完成,保持openGauss数据库服务启动

参与开发

开发环境搭建参考 开发环境搭建

插件开发请参考openGauss-datakit/doc目录下的开发手册

新增插件请务必更新build.sh脚本,保证可以一键编译

1
https://gitee.com/opengauss/openGauss-workbench.git
git@gitee.com:opengauss/openGauss-workbench.git
opengauss
openGauss-workbench
openGauss-workbench
master

搜索帮助