Patorni 提供了直接配置 PostgreSQL 流复制相关配置的能力,所以 PostgreSQL synchronous_standby_names 中描述的模式, Patroni 间接全都支持。
synchronous_commit = 'on'
synchronous_standby_names = 'FIRST 2 (*)',
同时,在 Patroni 层面还提供了如下的参数,
synchronous_mode
synchronous_mode_strict
synchronous_node_count
Patroni 会根据这三个参数的配置,自动给 master 节点上的 synchronous_standby_names 设置对应的节点列表。
比如,设置如下的配置,synchronous_node_count 默认为1,
synchronous_mode="on"
这种情况下,master节点的 synchronous_standby_names 的值会是选中的节点的名称(application_name)。
synchronous_node_count 这个配置实测设置不生效,待测试。