Corosync / кардиостимулятор рассматривает OCF_RUNNING_MASTER как ошибку - PullRequest
0 голосов
/ 05 ноября 2018

Я создал агент ресурсов ocf и хочу запустить его как набор Master / Slave. Сначала функция моего монитора возвращала OCF_SUCCESS на работающем узле (независимо от того, был ли он ведущим или ведомым), который действительно работал, но кардиостимулятор не знал, какой из них был текущим (оба экземпляра были зарегистрированы как подчиненные).

Вот почему я изменил функцию монитора, чтобы она возвращала OCF_RUNNING_MASTER на ведущем устройстве и OCF_SUCCESS на ведомом устройстве (потому что я видел это в коде drdb). К сожалению, кардиостимулятор, по-видимому, интерпретирует это как ошибку, убивает мастера, передает второй узел мастеру и т. Д.

Кто-нибудь знает, как заставить кардиостимулятор интерпретировать OCF_RUNNING_MASTER как успешный?

crm config:

node 3232286770: VStorage1 \
        attributes standby=off
node 3232286771: VStorage2
primitive virtual_ip IPaddr2 \
        params ip=192.168.100.230 cidr_netmask=32 nic=ens256 \
        op monitor interval=10s \
        meta migration-threshold=10
primitive filecluster ocf:msn:cluster \
        op start timeout=120 interval=0 \
        op stop timeout=120 interval=0 \
        op promote timeout=120 interval=0 \
        op demote timeout=120 interval=0 \
        op monitor interval=20s role=Slave \
        op monitor interval=10s role=Master \
        meta migration-threshold=10
ms ms filecluster
property cib-bootstrap-options: \
        have-watchdog=false \
        dc-version=1.1.14-70404b0 \
        cluster-infrastructure=corosync \
        cluster-name=debian \
        stonith-enabled=false \
        no-quorum-policy=ignore

вывод состояния crm:

root@VStorage1:/usr/lib/ocf/resource.d# crm status
Last updated: Mon Nov  5 11:21:34 2018          Last change: Fri Nov  2 20:22:53 2018 by root via cibadmin on VStorage1
Stack: corosync
Current DC: VStorage1 (version 1.1.14-70404b0) - partition with quorum
2 nodes and 3 resources configured

Online: [ VStorage1 VStorage2 ]

Full list of resources:

 virtual_ip     (ocf::heartbeat:IPaddr2):       Started VStorage1
 Master/Slave Set: ms [filecluster]
     Slaves: [ VStorage1 ]
     Stopped: [ VStorage2 ]

Failed Actions:
* filecluster_monitor_20000 on VStorage1 'master' (8): call=153, status=complete, exitreason='none',
    last-rc-change='Fri Nov  2 20:27:28 2018', queued=0ms, exec=0ms
* filecluster_monitor_20000 on VStorage2 'master' (8): call=135, status=complete, exitreason='none',
    last-rc-change='Fri Nov  2 20:27:11 2018', queued=0ms, exec=0ms

1 Ответ

0 голосов
/ 24 января 2019

агент ресурса «ведущий-ведомый» будет сообщать обо всех ведомых, только если сбой при продвижении к основному. Каково условие в вашем ocf_agent для повышения до мастерства? См. Drbd agent для условия, когда ресурс повышен до master.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...