pg高可用概述

概述

  • 作为开源关系型数据库,pg广受开发者的喜爱,而涉及pg高可用的软件也很多,比如 keepalived、HAProxy、PgBouncer、PAF(PostgreSQL Automatic Failover)、Pgpool-II、Citus,而使用最多的是 Repmgr 和 Patroni
  • 通常,Repmgr 用于热机主备,Patrnoi 用于故障自动切换
  • 针对网络不稳定导致丢包或者主机频繁切换的场景,建议选择 patroni,因为repmgr切换之后需要重置一些配置才可以再次failover
对比项 Patrnoi Repmgr
两节点支持 不建议,起步三节点 支持
需要安装分布式 需要 不需要,日志及节点信息存储在本地PG的repmgr库中
手动切换 可以
自动切换 可以 启用repmgrd
多次failover 可以 不可以
配置文件修改 一般 灵活

Repmgr

Repmgr 是一个用于管理和监控基于流复制的pg集群的工具。其本质上是一个运行在pg库上的进程。它在每个pg库上都需要运行一个repmgrd进程来管理和监控库的状态、复制关系以及执行故障检测和切换等操作。

Patrnoi

Patroni 是一个开源的pg集群管理工具,它提供了自动化的高可用性和故障切换解决方案。它基于zooKeeper、etcd或consul等分布式协调服务,通过监控主库的状态并自动执行故障切换操作,确保pg集群的高可用性和连续性。可通过pg + etcd + patroni + haproxy + keepalived来实现pg的高可用集群。

Copyright © www.sqlfans.cn 2024 All Right Reserved更新时间: 2024-12-13 16:41:31

results matching ""

    No results matching ""