您可以根据自动化需求,在以下两种编排器接口之间进行选择:
- AlloyDB Omni 编排器 CLI
alloydbctl:建议用于使用 Shell 脚本进行自动化的环境。 - AlloyDB Omni 编排器 Ansible 集合:建议用于使用 Ansible 的自动化的环境。
限制
此版本存在以下限制:
- 此版本仅支持 AlloyDB Omni PostgreSQL 18。
- 此版本仅支持与 RHEL 9 兼容的软件包。
- 此版本仅支持基于 Intel x86 64 位平台的平台。
- 此版本不支持主要版本升级。
- 此版本不包含有关设置灾难恢复的说明。
- 此版本不包含有关设置读取池实例的说明。
- AlloyDB Omni 监控器不支持 SSL 连接。您必须将监控信息中心服务器部署在与 AlloyDB Omni 节点相同的专用网络上。
- AlloyDB Omni 假定 SELinux(如果存在)已在主机上配置为宽容模式,包括访问文件系统。
准备工作
在开始部署之前,请确保满足以下要求:
获取 AlloyDB Omni 软件包
AlloyDB Omni 使用 RPM 编排器软件包处于 预览版阶段。您必须使用 AlloyDB Omni 使用 RPM 编排器预览版注册表单 进行注册,才能接收 RPM 文件。
如果您通过私有 Yum 代码库管理软件包,请按照代码库管理中的说明将依赖的 RPM 文件添加到代码库中。如需了解详情,请参阅软件包依赖项。
设置软件代码库
AlloyDB Omni RPM 保存在全局 YUM 代码库中。或者,如果您的组织通过私有 YUM 代码库管理软件,则必须根据您的管理工具,将注册后提供的 RPM 软件包添加到您的代码库中。在部署过程中,您需要私有代码库网址。
配置机器
配置一组运行 RHEL 9 的虚拟机,包括:
- 控制器:1 个节点。编排部署,并且必须对所有其他节点拥有无需密码的 SSH 访问权限。
- 数据库:1 个或 3 个节点。运行 AlloyDB Omni 核心服务和监控服务。
- 负载平衡器:可选,2 个节点。运行 HAProxy 和可选的连接池程序(如 PgBouncer)。
配置网络和防火墙
根据您的架构,配置防火墙以允许以下 TCP 端口:
| 端口 | 协议 | 节点 | 服务 | 流量 | 备注 |
|---|---|---|---|---|---|
| 5432 | TCP | 负载平衡器 | HAProxy | 传入 | 在负载均衡器节点上(如果适用) |
| 6432 | TCP | 负载平衡器 | PgBouncer | 传入 | 连接池程序(如果适用) |
| 9187 | TCP | 数据库 | AlloyDB 监控器 | 传入 | 监控器(如果适用);不支持 TLS |
| 5432 | TCP | 数据库 | AlloyDB | 传入 | 3 节点弹性架构 |
| 6432 | TCP | 数据库 | PgBouncer | 传入 | 连接池程序(如果适用于 3 节点弹性架构) |
| 2380 | TCP | etcd | etcd | 传入 | 适用于 etcd 对等互连协议 |
| - | VRRP | 负载平衡器 | Keepalived | 传入 | Keepalived 主节点选举 |
| - | VRRP | 数据库 | Keepalived | 传入 | Keepalived 主节点选举(适用于 3 节点弹性架构) |
| 6703 | TCP | 集群管理器 | 集群管理器 | 传入 | 集群管理器 gRPC 端口 |
| 6702 | TCP | 所有节点 | 节点管理器 | 传入 | 节点管理器 gRPC 端口 |
| 6700 | TCP | 所有节点 | 节点管理器 | 传入 | 节点管理器 Init gRPC 端口 |
| 8086 | HTTP | 所有节点 | 节点管理器 | 传入 | 节点管理器 HTTP 端口,用于检查主节点或备用节点 |
| 2379 | TCP | etcd | etcd | 传入 | 供集群管理器与 etcd 搭配使用 |
| 443 | HTTPS | 数据库 | Cloud Storage | 传出 | 用于发送备份数据 |
如需确保 SELinux 处于宽容模式,请在所有数据库节点和负载均衡器节点上运行以下命令。控制节点不需要这些命令:
sudo sed -i 's/^SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config
sudo setenforce 0
安装编排器
Ansible
如果您计划使用 Ansible playbook 管理集群,请使用此方法。
在控制节点上,安装 Ansible 和所需的 Python 库:
# Install EPEL for RHEL 9 sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm -y # Install Ansible and dependencies sudo dnf install ansible sudo dnf install python3-grpcio python3-protobuf python3-googleapis-common-protos下载 Ansible 集合 tar 文件及其签名,验证软件包并安装:
# Download the collection and its signature wget ALLOYDBOMNI_SERVER/google-alloydbomni_orchestrator-0.1.0-1.tar.gz wget ALLOYDBOMNI_SERVER/google-alloydbomni_orchestrator-0.1.0-1.tar.gz.asc # Import the Google Linux signing key curl -sS https://dl.google.com/linux/linux_signing_key.pub | gpg --import # Verify the collection tarball gpg --verify google-alloydbomni_orchestrator-0.1.0-1.tar.gz.asc \ google-alloydbomni_orchestrator-0.1.0-1.tar.gz # Install the collection ansible-galaxy collection install google-alloydbomni_orchestrator-0.1.0-1.tar.gz # Verify the installation ansible-galaxy collection list | grep alloydbomni_orchestrator将
ALLOYDBOMNI_SERVER替换为托管 AlloyDB Omni 软件包(包括 Ansible 集合 tar 文件)的服务器的网址。在您注册 AlloyDB Omni 使用 RPM 编排器 预览版后,系统会向您提供此来源。
alloydbctl
如果您偏好使用命令行实用程序来管理资源,请使用此方法。
在控制节点上创建 YUM 配置文件,路径为
/etc/yum.repos.d/alloydbomni_orchestrator.repo:[alloydbomni_orchestrator] name=Google AlloyDB Omni orchestrator packages baseurl=ALLOYDB_OMNI_ORCHESTRATOR_REPOSITORY_URL enabled=1 repo_gpgcheck=0 gpgcheck=1 gpgkey=REPO_GPG_KEY替换以下内容:
ALLOYDB_OMNI_ORCHESTRATOR_REPOSITORY_URL:包含 AlloyDB Omni 编排器 RPM 的代码库的网址。REPO_GPG_KEY:Google 的 GNU Privacy Guard (GPG) 验证公钥的位置,例如https://dl.google.com/linux/linux_signing_key.pub。如果密钥下载到文件,也可以将其设置为路径,例如file:///tmp/linux_signing_key.pub。
安装软件包并将二进制文件添加到系统的
PATH:sudo dnf install alloydbomni_orchestrator export PATH=$PATH:/usr/local/bin运行以下命令,验证安装是否成功:
alloydbctl --help