dbops for openGauss 目录结构和配置文件原理

本文面向首次使用者,帮助快速理解 openGauss / PanWeiDB 生态下的目录结构、配置入口和执行逻辑。

1. 顶层目录

典型安装路径:

/usr/local/dbops

关键目录:

  • opengauss_ansible/:openGauss / PanWeiDB 相关剧本。
  • portable-ansible/:绿色版 Ansible 2.10.17 运行时。
  • bin/dbopsctl:环境自检、语法检查、文档检查、支持矩阵和安装包校验入口。
  • libexec/dbopsctl/dbopsctl 的实现脚本和支持矩阵。
  • docs/:离线 Markdown 文档。

2. opengauss_ansible 结构

opengauss_ansible/
├── downloads/
├── inventory/
│   └── hosts.ini
├── playbooks/
│   ├── common_config.yml
│   ├── simple_single_node.yml
│   ├── enterprise_deployment.yml
│   ├── panweidb_distributed.yml
│   └── unsafe_uninstall.yml
└── roles/

说明:

  • downloads/:数据库安装包目录。
  • inventory/hosts.ini:目标主机清单。
  • playbooks/common_config.yml:主参数入口。
  • playbooks/simple_single_node.yml:openGauss 单机部署入口。
  • playbooks/enterprise_deployment.yml:openGauss / PanWeiDB 一主两备部署入口。
  • playbooks/panweidb_distributed.yml:PanWeiDB 分布式部署入口。
  • playbooks/unsafe_uninstall.yml:卸载清理入口。

3. 配置文件职责

3.1 inventory/hosts.ini

[dbops_opengauss]
192.168.161.11 ansible_user=root ansible_ssh_pass="'你的密码'"
192.168.161.12 ansible_user=root ansible_ssh_pass="'你的密码'"
192.168.161.13 ansible_user=root ansible_ssh_pass="'你的密码'"

3.2 playbooks/common_config.yml

常见参数:

  • opengauss_version
  • db_type
  • opengauss_user_password
  • opengauss_admin_password
  • opengauss_packages_dir
  • fcs_allow_dbops_default_passwd

仓库内置的 Dbops@9999 / Dbops@8888 属于公开默认密码。部署剧本默认会拦截这两个默认值,要求先修改密码后再执行。

4. 支持矩阵

cd /usr/local/dbops
./bin/dbopsctl support list
./bin/dbopsctl support packages --stack opengauss
./bin/dbopsctl support packages --stack panweidb
./bin/dbopsctl support check

机器可读数据位于:

libexec/dbopsctl/support/

5. 实践建议

  • 先在测试环境验证安装包与操作系统的匹配关系。
  • openGauss 与 PanWeiDB 通过 db_type 区分,不要混用安装包。
  • BigCloud21 当前优先用于 PanWeiDB,不作为 openGauss 默认验证环境。
  • 执行高危剧本前,先确认 inventory 中的目标主机范围。