SuperAPI AI 工具集

package-postgres-ha-green

部署与运维

查看项目

更新于 10-16 02:37

技能介绍

用途:在单一区域的默认 VPC 中发现三台节点,运行一主两热备的 PostgreSQL 集群,提供自动故障转移与备份恢复。

主要能力:Patroni 管理主备角色切换,etcd 三成员提供法定人数,仲裁同步提交;HAProxy 作为客户端端点,角色变更时端口自动指向当前主库或备库,DNS 记录无需改动;pgBackRest 每日全量备份到 Cloudflare R2 或 S3,持续归档 WAL,并按计划执行经验证的恢复。集群可通过 cluster-host 访问全部节点。

使用方式:修改期望状态或执行真实生命周期操作前,先阅读 references/configuration.md。常用命令:./green build(仅渲染工作目录)、./green create --dry-run(遍历依赖图但不产生副作用)、./green create(收敛部署)、./green delete(受保护且具破坏性)、./green status(patronictl list 查看成员、角色与复制延迟)、./green switchover(计划切换)、./green failover --node 2(非计划提升,经由存活节点派发)、./green backup、./green verify-restore、./green psql。执行真实操作前先跑 build 和 create --dry-run。连接时务必设置 connect_timeout,例如 psql "host=<cluster-host> port=5432 user=<postgres-admin-user> dbname=<postgres-database> connect_timeout=5";也可在连接串加 target_session_attrs=read-write。

安全与限制:凭据仅放在被 gitignore 的 .envrc.private,以 COLORS_PAR_* 导出;不要设置 COLORS_PAR_PROFILE,不要编辑或提交 .colors/。保持 compute-prevent-destroy: true。Patroni REST API 与 etcd 无认证,仅靠 VPC 防火墙保护,扩大 postgres-ssh-sources 或 postgres-client-sources 属于安全变更。计算、SSH 密钥与远程状态由 colors-compute 库提供;provider-backend 可选 r2 或 s3,R2 需要 COLORS_PAR_R2_ACCESS_KEY_ID 与 COLORS_PAR_R2_SECRET_ACCESS_KEY,S3 使用环境 AWS 凭据链。已有的单体计算状态需显式迁移,本生命周期会拒绝。计算退役后重复删除仅恢复本地生成文件清理。其他未提供的事实暂未提供。