openGauss 单机部署

目标:在单台已支持的 Linux 主机上,快速验证 openGauss 单机部署链路。

1. 适用范围

  • 适合新环境验证、安装包校验、功能演练。
  • 当前已按 CentOS 7.5 + openGauss 6.0.1192.168.199.131 实测通过。
  • 如果你的实验机是 BigCloud21,不要使用本页;请改用 CentOS 7.5openEuler 22.03

2. 准备 dbops 与绿色版 Ansible

dbops_version="v0.1.0-beta.1"
wget "https://gitee.com/dbops/dbops/releases/download/${dbops_version}/dbops-${dbops_version}-Linux-x86_64.tar.gz"
tar -zxvf "dbops-${dbops_version}-Linux-x86_64.tar.gz" -C /usr/local/

cd /usr/local/dbops/portable-ansible-v0.5.0-py3
sh setup_portable_ansible.sh
source ~/.bashrc
ansible --version

说明:

  • 在干净的 CentOS 7.5 控制节点上,setup_portable_ansible.sh 会自动安装 python3,并写入 ansible / ansible-playbook alias。
  • 如果控制节点和数据库节点复用为同一台机器,这一步仍然必须先执行。

3. 上传 openGauss 安装包

上传到:

/usr/local/dbops/opengauss_ansible/downloads

如果你允许控制节点联网,并保持:

fcs_auto_download_opengauss: true

CentOS 7 / openEuler 22 的 openGauss 安装包也可以自动下载。

4. 配置主机清单

单机验证仍然使用 inventory/hosts.ini,但执行时用 --limit 收敛到一台:

[dbops_opengauss]
192.168.199.131 ansible_user=root ansible_ssh_pass="'密码'"
192.168.199.132 ansible_user=root ansible_ssh_pass="'密码'"
192.168.199.133 ansible_user=root ansible_ssh_pass="'密码'"

5. 配置参数

编辑 playbooks/common_config.yml,至少确认:

opengauss_version: "6.0.1"
db_type: opengauss
opengauss_port: 5432
opengauss_user_password: "请改成你自己的密码"
opengauss_admin_password: "请改成你自己的密码"

说明:

  • 单机部署同样默认禁止直接使用仓库里的公开默认密码。
  • 如仍保留 Dbops@9999 / Dbops@8888simple_single_node.yml 会在 pre_tasks 阶段失败。
  • 仅在实验环境明确需要时,才显式设置 fcs_allow_dbops_default_passwd: true 放开该限制。

6. 执行单机部署

cd /usr/local/dbops/opengauss_ansible/playbooks
ansible-playbook simple_single_node.yml --limit 192.168.199.131

按提示输入 confirm 后继续执行。

7. 完成后验证

检查版本:

su - omm
gsql -d postgres -p 5432 -c "select version();"

检查 systemd 服务:

systemctl status opengauss5432

快速登录别名:

su - omm
db5432

8. 说明补充

  • simple_single_node.yml 只适合单机链路验证,不替代一主两备企业部署。
  • 单机剧本会创建 opengauss5432.service 这类 systemd 单元,并在 omm 用户下写入 db5432 这类 alias。
  • 如果你要重复演练,先执行卸载清理页中的 unsafe_uninstall.yml,避免旧目录和旧服务影响下一轮结果。