Я установил систему высокой доступности с Сердцебиение, Я бы хотел, чтобы при падении основного кластера и активации вторичного кластера в нем запускался Heartbeat и выполнялся сценарий оболочки.
Содержание /etc/ha.d/haresources
master IPaddr::10.0.0.1/24 test.sh
Содержание /etc/ha.d/ha.cf
autojoin none
debugfile /var/log/ha-debug
logfile /var/log/ha-log
logfacility local0
ucast ens32 10.0.0.3
ucast ens32 10.0.0.2
udpport 694
use_logd yes
keepalive 1
deadtime 10
warntime 5
initdead 20
node master
node slave
auto_failback on
Я дал разрешение на выполнение скрипту и поместил его в путь /etc/init.d/
, но я все еще не могу выполнить его через Heartbeat, возможен ли этот тип процедуры?
Есть несколько разных способов добиться этого.
Вы можете поместить сценарий в /etc/init.d/
но вам нужно убедиться, что он совместим с LSB: http://www.linux-ha.org/wiki/LSB_Resource_Agents
Вы можете написать агент ресурсов OCF для Pacemaker: http://www.linux-ha.org/doc/dev-guides/ra-dev-guide.html
Или вы можете попробовать использовать агент ресурсов ocf: heartbeat: something. Он может запускать произвольную команду, но с ней связаны настройки / требования. Выполните следующую команду на одном из ваших узлов, чтобы узнать больше: # crm ra info ocf:heartbeat:anything