环境 :
我在 Cent OS 7.5 上使用 Pacemaker (pacemaker-1.1.19-8.el7_6.1.x86_64) 和 corosync(corosync-2.4.3-2.el7_5.1.x86_64)。Postgresql 版本是 9.3.21 我有两个节点集群,节点名称为:failover1 和 failover2。我有 Postgresql9 的克隆资源。以下是相同的 CIB
pcs resource create Postgresql9 ocf:heartbeat:pgsql \
pgctl="/usr/pgsql-9.3/bin/pg_ctl" psql="/usr/pgsql-9.3/bin/psql" pgdata="/var/lib/pgsql/9.3/data/" start_opt="-p 5432" rep_mode="async" node_list="failover1 failover2" restore_command="" primary_conninfo_opt="keepalives_idle=60 keepalives_interval=5 keepalives_count=5" master_ip="10.10.17.165" restart_on_promote="true" \
op monitor interval="20s" role="Slave" timeout="100s" \
op monitor interval="10s" role="Master" timeout="100s" \
op start interval="0" timeout="250s" \
op promote interval="0" timeout="70s" \
op stop interval="0" timeout="70s" \
op demote interval="0" timeout="200s" \
op notify interval="0" timeout="200s" \
meta failure-timeout="2000s" \
meta migration-threshold="3"
pcs resource master mspostgres Postgresql9 master-max="1" master-node-max="1" clone-max="2" clone-node-max="1" notify="true" migration-threshold="3" target-role="Started"
pcs constraint location mspostgres prefers failover1=90
pcs constraint location mspostgres prefers failover2=80
pcs constraint colocation add DBClusterIP with Master mspostgres score=INFINITY
pcs constraint order stop DBClusterIP then demote mspostgres kind=Optional symmetrical=false
pcs property set cluster-recheck-interval=5min
pcs property set stonith-enabled=false
pcs property set no-quorum-policy=ignore
pcs resource defaults migration-threshold=3
pcs property set placement-strategy=balanced
pcs property set stop-all-resources=false
pcs resource defaults failure-timeout=2000
pcs resource defaults resource-stickiness=100
pcs resource op defaults on-fail=restart
问题: 我能够在 failover1 上以 master 身份运行此资源,在 failover2 上以 slave 身份运行此资源。当使用 pcs resource ban 命令在故障转移 2 上移动主机时,我得到了想要的结果。当我重新启动机器failover1时,Failover2成为资源Postgresql9的主人,但是当Failover1机器启动时,这个资源成为两台机器上的奴隶,没有一个被提升。
预期场景: 理想情况下,启动 Failover1 不应影响已运行的资源 Postgresql9 Master。
如果节点重新联机,请帮助我了解集群的行为。