Назад | Перейти на главную страницу

Фехтование кардиостимулятора не сработало

У меня 2 узла: - patroni1: 192.168.1.38 - patroni2: 192.168.1.39

и виртуальный IP: 192.168.1.40

У меня на обоих установлен HA-Proxy.

Вот мой статус ПК, когда VIP привязан к patroni2, а haproxy активирован на patroni2

-----------
[root@patroni1 ~]# pcs status
Cluster name: haproxy_cluster
Stack: corosync
Current DC: patroni2 (version 1.1.18-11.el7_5.3-2b07d5c5a9) - partition with quorum
Last updated: Thu Nov 29 21:29:00 2018
Last change: Thu Nov 29 21:24:52 2018 by root via cibadmin on patroni1

2 nodes configured
4 resources configured

Online: [ patroni1 patroni2 ]

Full list of resources:

 xen-fencing-patroni2   (stonith:fence_xenapi): Started patroni1
 xen-fencing-patroni1   (stonith:fence_xenapi): Started patroni2
 Resource Group: HAproxyGroup
     haproxy    (ocf::heartbeat:haproxy):   Started patroni2
     VIP    (ocf::heartbeat:IPaddr2):   Started patroni2

Daemon Status:
  corosync: active/enabled
  pacemaker: active/enabled
  pcsd: active/enabled
[root@patroni1 ~]# pcs resource show VIP
 Resource: VIP (class=ocf provider=heartbeat type=IPaddr2)
  Attributes: cidr_netmask=24 ip=192.168.1.40
  Operations: monitor interval=1s (VIP-monitor-interval-1s)
              start interval=0s timeout=20s (VIP-start-interval-0s)
              stop interval=0s timeout=20s (VIP-stop-interval-0s)
[root@patroni1 ~]# pcs resource show haproxy
 Resource: haproxy (class=ocf provider=heartbeat type=haproxy)
  Attributes: binpath=/usr/sbin/haproxy conffile=/etc/haproxy/haproxy.cfg
  Operations: monitor interval=10s (haproxy-monitor-interval-10s)
              start interval=0s timeout=20s (haproxy-start-interval-0s)
              stop interval=0s timeout=20s (haproxy-stop-interval-0s)

-----------

Моя проблема: ограждение не срабатывает всякий раз, когда я вручную убиваю haproxy на patroni2. фехтование срабатывает только когда я вручную останавливаю или перезагружаю patroni2.

вот статус ПК, когда я вручную убиваю haproxy

------------
[root@patroni1 ~]# pcs status
Cluster name: haproxy_cluster
Stack: corosync
Current DC: patroni2 (version 1.1.18-11.el7_5.3-2b07d5c5a9) - partition with quorum
Last updated: Thu Nov 29 21:37:37 2018
Last change: Thu Nov 29 21:24:52 2018 by root via cibadmin on patroni1

2 nodes configured
4 resources configured

Online: [ patroni1 patroni2 ]

Full list of resources:

 xen-fencing-patroni2   (stonith:fence_xenapi): Started patroni1
 xen-fencing-patroni1   (stonith:fence_xenapi): Started patroni2
 Resource Group: HAproxyGroup
     haproxy    (ocf::heartbeat:haproxy):   Started patroni2
     VIP    (ocf::heartbeat:IPaddr2):   Starting patroni2

Failed Actions:
* haproxy_monitor_10000 on patroni2 'not running' (7): call=38, status=complete, exitreason='',
    last-rc-change='Thu Nov 29 21:37:36 2018', queued=0ms, exec=0ms


Daemon Status:
  corosync: active/enabled
  pacemaker: active/enabled
  pcsd: active/enabled

------------

Как сделать срабатывание ограждения, когда HA-Proxy не отвечает?

С уважением -bino-

Вы наблюдаете ожидаемое поведение. Просто потому, что ресурс остановлен, не означает, что лучший способ действий - принудительно выключить и включить систему.

Вы вручную закрываете HA-Proxy, Pacemaker обнаруживает, что эта служба по какой-то причине не работает, и регистрирует этот сбой: haproxy_monitor_10000 on patroni2 'not running' [...]. Затем кластер перезапускает эту службу. Что, как я полагаю, сработало успешно, поскольку теперь кластер показывает, что служба работает без проблем на том же узле patroni2.

Сбой в работе монитора не считается фатальным и не перерастает в действие STONITH. Однако отказ при операции остановки считается фатальным. Если кластер не может остановить ресурс, как он может перезапустить его или выполнить аварийное переключение? Путем ограждения узла и включения и выключения питания через STONITH.