--Postgresql REPMGR (深入与细节 3 配置文件)

2021-02-03 00:00:00 文件 节点 设置 默认 复制

今天深入细节,想从REPMGR 的配置文件说起, 配置文件实际上是我从GITHUB 上下载的,编译安装的,我是没有找到相关的 repmgr.simple,conf 这个文件,

下面是挑选一些需要注意的地方来说,常规的地方就跳过了.



###################################################

# repmgr sample configuration file
###################################################

这个配置中replication_user 默认是repmgr 但如果你的复制不愿意使用repmgr也是可以在这个位置改为你设定的账号,不非要使用repmgr

但这里其实不太建议更换账号,比较麻烦.

#replication_user='repmgr' # User to make replication


这个问题,默认是不使用replication_slot,但到底应该不应该使用是可以讨论一下,在POSTGRESQL打开复制槽,在设置user_replication_slot=true,REPMGR 是可以直接对接POSTGRESQL 开启的复制槽,通过复制槽可以稳定的输出数据,提高REPMGR的数据复制的可靠性, 缺点也是明显,如果从库失效,则主库可能会因为无法清理数据,导致磁盘被WAL LOG 撑爆了.

 use_replication_slots=true

#use_replication_slots=no

# whether to use physical replication slots

下图就是复制槽没有开的复制的方式,可以看到复制槽没有名字



#------------------------------------------------
# Logging settings
#-------------------------------------------------
LOGGING 这段主要关注的是REPMGRD 程序的日志记录,其中如果REPMGRD调用repmgr的日志也会记录在里面.

#log_level='INFO' 标记其中日志记录的信息的等级
#log_facility='STDERR'
#log_file='' 指定一个目的的日志文件
#log_status_interval=300 记录秒级别的REPMGR 软件的信息,可以调整的稍微短一点,文件中是300秒,


#-------------------------------------------------------------------
# Event notification settings
#-------------------------------------------------------------------

这一块event  所有可以表达的状态值,在下方,主要分为  primary standby 有关的, witness 有关的,  repmgrd 有关的  bdr (pg专业的备份软件) 有关的

#event_notification_command=''		
#event_notifications=''
#-------------------------------------------------------------------
# Environment/command settings
#-------------------------------------------------------------------

pg_bindir=''
设定POSTGRESQL的BIN文件存储地,实际上是可以通过pg_config 里面的变量获得(如果你是编译安装)

repmgr_bindir=''

设置repmgr 的bin的目录 ,如果是编译安装REPMGR 则默认BIN 文件和POSTGRESQL 放置在一起

#use_primary_conninfo_password=false 是否在连接串中指定连接账号密码
#passfile='' 指定连接用户的密码文件存放地
#-------------------------------------------------------------------

#-------------------------------------------------------------------
# "standby clone" settings
#-------------------------------------------------------------------
#
# These settings apply when cloning a standby ("repmgr standby clone").
其中可以设置一些在CLONE的时候,针对从库的一些相关的配置,例如复制需要不需要延迟,archive_cleanup的命令是什么,以及复制的节点到底要不要有延迟.
#restore_command=''
#archive_cleanup_command=''
#recovery_min_apply_delay=
#-----------------------------------------------------------
# "standby promote" settings
#-------------------------------------------------------------------

# new primary ("repmgr standby promote").
从节点promote 变为主节点超时时间, 和监测从库到主库promote 的次数的设置
#promote_check_timeout=60
#promote_check_interval=1

#-------------------------------------------------------------------
# "standby follow" settings
#-------------------------------------------------------------------
如果有两台从库,则其中一个从库变为主库,则另一个从库的更换自己的"东家",从库换东家的时间timeout 设置

#primary_follow_timeout=60

#standby_follow_timeout=30

#standby_follow_restart=false

#-------------------------------------------------------------------
# "standby switchover" settings
#-------------------------------------------------------------------

#shutdown_check_timeout=60
#standby_reconnect_timeout=60
#wal_receive_check_timeout=30


#-------------------------------------------------------------------

# "node rejoin" settings
#-------------------------------------------------------------------

#node_rejoin_timeout=60


#-------------------------------------------------------------------
# Failover and monitoring settings (repmgrd)
#-------------------------------------------------------------------

#failover='manual'

#priority=100


#connection_check_type=ping

#reconnect_attempts=6

#reconnect_interval=10

#promote_command=''

#follow_command=''

#primary_notification_timeout=60


#repmgrd_standby_startup_timeout=60


#monitoring_history=no
#monitor_interval_secs=2
#degraded_monitoring_timeout=-1

#async_query_timeout=60

#repmgrd_pid_file=

#standby_disconnect_on_failover=false

#primary_visibility_consensus=false

#always_promote=false
#failover_validation_command=''

#child_nodes_check_interval=5
#child_nodes_connected_min_count=-1
#child_nodes_disconnect_min_count=-1
#child_nodes_disconnect_timeout=30
#child_nodes_disconnect_command=''

#-------------------------------------------------------------------
# service control commands
#-------------------------------------------------------------------


#service_start_command = ''
#service_stop_command = ''
#service_restart_command = ''
#service_reload_command = ''
#service_promote_command = ''
#repmgrd_service_start_command = ''
#repmgrd_service_stop_command = ''

#-------------------------------------------------------------------
# Status check thresholds
#-------------------------------------------------------------------
# Various warning/critical thresholds used by "repmgr node check".

#archive_ready_warning=16
#archive_ready_critical=128
#replication_lag_warning=300
#replication_lag_critical=600


相关文章