Patroni

postgresql 高可用 etcd + patroni 之三 switchover

心已入冬 提交于 2020-12-06 05:34:33
os: centos 7.4 postgresql: 9.6.9 etcd: 3.2.18 patroni: 1.4.4 patroni + etcd 是在一个postgrsql 开源大会上 亚信的一个哥们讲解的高可用方案。 依然是基于 postgreql stream replication。 ip规划 192.168.56.101 node1 master 192.168.56.102 node2 slave 192.168.56.103 node3 slave 手动 switchover 切换前的状态 $ patronictl -c /usr/patroni/conf/patroni_postgresql.yml list pg96 +---------+----------+----------------+--------+---------+-----------+ | Cluster | Member | Host | Role | State | Lag in MB | +---------+----------+----------------+--------+---------+-----------+ | pg96 | pg96_101 | 192.168.56.101 | | running | 0.0 | | pg96 | pg96_102 | 192

centos7部署postgresql集群高可用 patroni + etcd 之patroni篇

倾然丶 夕夏残阳落幕 提交于 2020-12-05 06:59:09
实验环境:centos7.4纯净版 postgres版本: 9.6.15 etcd版本:3.3.11 patroni版本:1.6.0 patroni介绍可参考:https://github.com/zalando/patroni ip规划 192.168.216.130 node1 master 192.168.216.132 node2 slave 192.168.216.134 node3 slave etcd集群部署请看上一篇文章:https://www.cnblogs.com/caidingyu/p/11408389.html postgres部署参考文章:https://www.cnblogs.com/virtulreal/p/9921978.html 修改node1中postgresql.conf配置如下 max_connections = '100' max_wal_senders = '10' port = '5432' listen_addresses = '0.0.0.0' synchronous_commit = on full_page_writes = on wal_log_hints = on synchronous_standby_names = '*' max_replication_slots = 10 wal_level = replica

PostgreSQL-11.3+etcd+patroni构建高可用数据库集群

你离开我真会死。 提交于 2019-11-29 23:49:21
1 摘要 使用Etcd和Patroni可以构建高可用PostgreSQL集群. Etcd用于Patroni节点之间共享信息. Patroni监控本地的PostgreSQL状态。如果主库(Primary)故障,Patroni把一个从库(Standby)拉起来,作为新的主(Primary)数据库. 如果一个故障PostgreSQL被抢救过来了,能够重新自动或手动加入集群。 1.1 关于 etcd see https://etcd.io/ Etcd按照Raft算法和协议开发的,是一个强一致性的、分布式的key-value数据库。它为分布式系统提供了可靠的数据存储访问机制。 只有一个etcd节点被选做Leader, 其它的etcd节点作为Follower. Etcd里的数据以key标识, 例如可以使用如下数据 key = /service/postgresql/leader value = postgresql1 来表示一个PostgreSQL集群中的主库是'postgresql1'. figure1: an etcd cluster including three etcd nodes =================================================== |---------------| |-------------| |etcd1<follower>