patroni-配置文件参数修改

举报
snowofsummer 发表于 2021/12/31 09:01:09 2021/12/31
【摘要】  export PATRONICTL_CONFIG_FILE=/etc/patroni/patroni_postgresql.yml#  configfile         Patroni may also read the configuration from the                     PATRONI_CONFIGURATION environment variab...

 



export PATRONICTL_CONFIG_FILE=/etc/patroni/patroni_postgresql.yml
#  configfile         Patroni may also read the configuration from the
                     PATRONI_CONFIGURATION environment variable


# 可以查看命令的使用说明 
patronictl --help 
# 查看版本号 
patronictl -c /etc/patroni.yml version 
# 查看所有成员信息 
patronictl -c /etc/patroni.yml list 
# 重新加载配置 
patronictl -c /etc/patroni.yml reload 
# 移除集群,重新配置的时候使用 
patronictl -c /etc/patroni.yml remove postgres
# 重启数据库集群 
patronictl -c /etc/patroni.yml restart postgres 
# 切换 Leader,将一个 slave 切换成 leader。 
patronictl -c /etc/patroni.yml switchover
#查看历史failovers/switchovers
patronictl -c /etc/patroni/patroni_postgresql.yml history


#默认配置文件位置:
#patronictl configure
#Configuration file [/root/.config/patroni/patronictl.yaml]:
/root/.config/patroni/patronictl.yaml

[root@db03 patroni]# cp /etc/patroni/patroni_postgresql.yml  ./patronictl.yaml
[root@db03 patroni]# patronictl  list
+--------+---------------+---------+---------+----+-----------+
| Member | Host          | Role    | State   | TL | Lag in MB |
+ Cluster: pgha (7025507499523621070) -------+----+-----------+
| node1  | 192.168.5.201 | Replica | running |  6 |         0 |
| node2  | 192.168.5.202 | Replica | running |  6 |         0 |
| node3  | 192.168.5.203 | Leader  | running |  6 |           |
+--------+---------------+---------+---------+----+-----------+






故障场景及处理方式:

故障位置
故障场景
patroni动作
备库
PG备库停止
拉起PG备库服务
备库
正常停止备库patroni
停止PG备库
备库
备库patroni异常停止
无动作
备库
备库无法连接ETCD
无动作
备库
非leader角色但PG处于生产模式
重启PG并切换到恢复模式作为备库
备库
备库主机重启
patroni启动拉起PG备库
主库
PG主库停止
启动PG,如果启动时间超过master_start_timeout,进行主备切换
主库
正常停止主库patroni
关闭主库,从备库中选举新主库
主库
主库patroni异常停止
看门狗重启主机,启动后如果拿到Leader锁,主备不切换,否则选举新主,切换主备
主库
主库无法连接ETCD
主库降级为备库,触发故障转移
-
ETCD故障
主库降级,集群中全部备库
-
同步模式下,无可用同步备库
临时切换为异步模式,在恢复同步模式之前自动故障转移不可用


官网连接

https://patroni.readthedocs.io/en/latest/dynamic_configuration.html
https://patroni.readthedocs.io/en/latest/

常用命令:

patronictl -c /etc/patroni/patroni_postgresql.yml list
patronictl -c /etc/patroni/patroni_postgresql.yml show-config
patronictl -c /etc/patroni/patroni_postgresql.yml edit-config
patronictl -c /etc/patroni/patroni_postgresql.yml restart (集群名称) (node1)
patronictl -c /etc/patroni/patroni_postgresql.yml switchover 
patronictl -c /etc/patroni/patroni_postgresql.yml reinit (集群名称) (node1)


PG:配置文件生效顺序:
1. load parameters from file postgresql.base.conf (or from a custom_conf file, if set)
2. load parameters from file postgresql.conf
3. load parameters from file postgresql.auto.conf
4. run-time parameter using -o –name=value
#https://patroni.readthedocs.io/en/latest/dynamic_configuration.html
编辑配置文件: //必须更改 DCS 中的共享配置,本地配置修改不生效(在一个节点执行即可)

patronictl -c /etc/patroni/patroni_postgresql.yml edit-config

重启数据库集群(三个节点都执行)
patronictl -c /usr/patroni/conf/patroni_postgresql.yml restart pgha(集群名称)

查询集群名称:
patronictl -c /etc/patroni/patroni_postgresql.yml list
+--------+---------------+---------+---------+----+-----------+-----------------+
| Member | Host          | Role    | State   | TL | Lag in MB | Pending restart |
+ Cluster: pgha (7025507499523621070) -------+----+-----------+-----------------+
| node1  | 192.168.5.201 | Replica | running |  3 |         0 |                 |
| node2  | 192.168.5.202 | Replica | running |  3 |         0 |                 |
| node3  | 192.168.5.203 | Leader  | running |  3 |           | *               |
+--------+---------------+---------+---------+----+-----------+-----------------+


查看配置文件:

[root@db03 patroni]# patronictl -c /etc/patroni/patroni_postgresql.yml show-config
loop_wait: 10
master_start_timeout: 300
maximum_lag_on_failover: 20485760
postgresql:
  parameters:
    hot_standby: 'on'
    listen_addresses: '*'
    max_connections: 150
    max_replication_slots: 10
    max_wal_senders: 10
    max_wal_size: 1GB
    port: 5432
    wal_keep_segments: 1000
    wal_level: logical
    wal_log_hints: 'on'
  use_pg_rewind: true
  use_slots: false
retry_timeout: 10
ttl: 30




参考:



 

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。