Pigsty开箱即用的企业级开源 PostgreSQL 数据库发行版 自带高可用,PITR,IaC,监控

Pigsty开箱即用的企业级开源 PostgreSQL 数据库发行版 自带高可用,PITR,IaC,监控

王忘杰
2026-07-29 / 0 评论 / 6 阅读 / 正在检测是否收录...

ms5jer8o.png
官网
https://pigsty.cc/

安装文档
https://pigsty.cc/docs/

单机部署

快速上手 Pigsty,从一台全新的 Linux 主机开始,完成单机安装部署!
https://pigsty.cc/docs/setup/install/

安装准备

准备 一台具有 SSH 权限 的 节点, 安装 兼容的 Linux 系统,如Alma9,SSH端口保持默认22

curl -fsSL https://repo.pigsty.cc/get | bash  # 安装 Pigsty 与依赖
cd ~/pigsty; ./configure -g                   # 生成配置 使用默认单机配置模板,-g 参数会生成随机密码
./deploy.yml -k -K                                  # 执行部署剧本,完成部署 -k -K 为手动输入ssh密码 
cat pigsty.yml                      #查看生成的随机密码

安装完成

ms5jhymw.png

使用工具连接测试

默认账号密码
Pigsty 的默认 单机模板 默认配置预置了以下数据库用户,可以开箱即用:

用户名    密码    角色    用途
dbuser_dba    DBUser.DBA    超级用户    数据库管理(请修改密码)
dbuser_meta    DBUser.Meta    业务管理员    应用读写(请修改密码)
dbuser_view    DBUser.Viewer    只读用户    数据查阅(请修改密码)

连接串

postgres://dbuser_dba:DBUser.DBA@10.10.10.10:5432/meta
postgres://dbuser_meta:DBUser.Meta@10.10.10.10:5432/meta
postgres://dbuser_view:DBUser.Viewer@10.10.10.10:5432/meta

ms5jio2w.png

ms5jihu7.png

卸载

./pgsql-rm.yml

集群部署

三节点标准高可用配置模板
https://pigsty.cc/docs/conf/trio/

配置解读

ha/trio 模板是 Pigsty 的 标准高可用配置,提供真正的故障自动恢复能力。

架构说明:
三节点 INFRA:VictoriaMetrics/Grafana/Nginx 分布式部署
三节点 ETCD:DCS 多数派选举,容忍单点故障
三节点 PostgreSQL:一主两从,自动故障转移
单节点 MinIO:可按需扩展为多节点

高可用保障:
ETCD 三节点可容忍一节点故障,保持多数派
PostgreSQL 主库故障时,Patroni 自动选举新主
L2 VIP 随主库漂移,应用无需修改连接配置

适用场景:
生产环境最小高可用部署
需要自动故障转移的关键业务
作为更大规模部署的基础架构

安装准备

准备 三台具有 SSH 权限 的 节点, 安装 兼容的 Linux 系统,如Alma9,SSH端口保持默认22

IP规划

192.168.4.10 VIP
192.168.4.11 节点1,安装节点
192.168.4.12 节点2
192.168.4.13 节点3

集群安装

curl -fsSL https://repo.pigsty.cc/get | bash  # 安装 Pigsty 与依赖
cd ~/pigsty; vi conf/ha/trio.yml                          #编辑配置文件,修改IP地址和VIP地址
cd ~/pigsty; ./configure -g -c ha/trio                  # 生成配置
./deploy.yml -k -K                                  # 执行部署剧本,完成部署 -k -K 为手动输入ssh密码 
cat pigsty.yml                      #查看生成的随机密码

conf/ha/trio.yml 进放入修改的内容,节点IP和VIP修改

infra: # infra cluster for proxy, monitor, alert, etc
      hosts: # 1 for common usage, 3 nodes for production
        192.168.4.11: { infra_seq: 1 } # identity required
        192.168.4.12: { infra_seq: 2, repo_enabled: false }
        192.168.4.13: { infra_seq: 3, repo_enabled: false }
      vars:
        patroni_watchdog_mode: 'off' # do not fencing infra

    etcd: # dcs service for postgres/patroni ha consensus
      hosts: # 1 node for testing, 3 or 5 for production
        192.168.4.11: { etcd_seq: 1 }  # etcd_seq required
        192.168.4.12: { etcd_seq: 2 }  # assign from 1 ~ n
        192.168.4.13: { etcd_seq: 3 }  # odd number please
      vars: # cluster level parameter override roles/etcd
        etcd_cluster: etcd  # mark etcd cluster name etcd
        etcd_safeguard: false # safeguard against purging

    minio: # minio cluster, s3 compatible object storage
      hosts: { 192.168.4.11: { minio_seq: 1 } }
      vars: { minio_cluster: minio }

    pg-meta:  # 3 instance postgres cluster `pg-meta`
      hosts:  # pg-meta-3 is marked as offline readable replica
        192.168.4.11: { pg_seq: 1, pg_role: primary }
        192.168.4.12: { pg_seq: 2, pg_role: replica }
        192.168.4.13: { pg_seq: 3, pg_role: replica , pg_offline_query: true }


 pg_vip_enabled: true
        pg_vip_address: 192.168.4.10/24


  #==============================================================#
  # Global Parameters
  #==============================================================#
  vars:
    #----------------------------------#
    # Meta Data
    #----------------------------------#
    version: v4.4.0                   # pigsty version string
    admin_ip: 192.168.4.11             # admin node ip address
    region: default                   # upstream mirror region: default|china|europe

安装完成

ms5seuhx.png

使用工具连接VIP和IP分别测试
连接串

postgres://dbuser_dba:密码@IP:5432/meta

ms5seigm.png

节点故障测试

192.168.4.11关机,故障自动切换约10秒,VIP切换到192.168.4.12节点

ms5shao2.png

192.168.4.11开机,关闭192.168.4.12,VIP切换到192.168.4.11节点

ms5soi10.png
ms5sq5hs.png
ms5srb2f.png

192.168.4.12开机,集群自动修复

ms5swkhi.png

三台主机硬停止后开机,集群自动修复

ms6wlnhi.png

ms6wlyno.png

ms6wm315.png

ms6wn1bv.png

小结

安全性极佳,无需人工干预,故障可自动恢复

0

评论

博主关闭了所有页面的评论