ubuntu

PostgreSQL在Ubuntu上的高可用性实现

小樊
35
2025-12-26 13:23:08
栏目: 云计算

在 Ubuntu 上落地 PostgreSQL 高可用,常用且稳定的路径有:基于复制栈的Patroni+etcd(可叠加 VIPHAProxy)、pg_repmgr、以及“主从+Keepalived VIP”的轻量方案。下面给出可操作的架构对比与关键配置步骤,便于快速选型与实施。

一、方案对比与适用场景

方案 组件与拓扑 自动故障转移 对外访问方式 优点 注意点
Patroni + etcd + VIP 3 节点 etcd + 2/3+ PostgreSQL 节点 + vip-manager 虚拟 IP(VIP)或负载均衡 成熟、可编排、支持手动/自动切换 需维护一致性集群(etcd)
Patroni + etcd + HAProxy 同上 + HAProxy 前置 HAProxy 读写分离/主路由 无状态代理、便于与现有 LB 体系融合 需健康检查与联动(如 callback)
pg_repmgr PostgreSQL + repmgrd 守护 是(配 repmgrd) VIP 或应用直连 轻量、与 PG 紧耦合、运维简单 需 SSH 免密、WAL 保留策略
主从 + Keepalived VIP 主从复制 + Keepalived 是(Keepalived) VIP 实现简单、依赖少 脑裂风险、需严格网络与时间同步

上述组合在实际生产中被广泛采用:Patroni+etcd 负责控制面与自动故障转移,VIP 或 HAProxy 提供稳定接入;pg_repmgr 以复制管理为核心,配合守护进程实现自动切换;Keepalived VIP 方案实现成本低、易上手。

二、Patroni + etcd + VIP 快速落地

三、pg_repmgr 实操要点

四、主从 + Keepalived VIP 轻量方案

五、通用加固与运维要点

以上方案均可满足不同规模与复杂度的可用性需求:追求自动化与可编排性优先选择Patroni+etcd;希望轻量运维可选pg_repmgr;极致简化可用Keepalived VIP。无论采用哪种路径,务必结合业务 RPO/RTO、团队运维能力与网络条件进行选型与验证。

0
看了该问题的人还看了