Konfigurieren von Heartbeat zum Ausführen eines Shell-Skripts

Konfigurieren von Heartbeat zum Ausführen eines Shell-Skripts

Ich habe ein Hochverfügbarkeitssystem eingerichtet mitHerzschlagIch wünschte, wenn es im Hauptcluster zu einem Ausfall kam und der sekundäre Cluster aktiviert wurde, würde Heartbeat darin gestartet und ein Shell-Skript ausgeführt.

  • Inhalt von/etc/ha.d/haresources

    master IPaddr::10.0.0.1/24 test.sh
    
  • Inhalt von/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
    

Ich habe dem Skript die Ausführungsberechtigung erteilt und es in den Pfad eingefügt /etc/init.d/, konnte es jedoch dennoch nicht über Heartbeat ausführen. Ist diese Art von Verfahren möglich?

Antwort1

Wie Sie das erreichen können, erfahren Sie auf vielen unterschiedlichen Wegen.

Sie könnten ein Skript einfügen /etc/init.d/, müssen aber sicherstellen, dass es LSB-kompatibel ist:http://www.linux-ha.org/wiki/LSB_Resource_Agents

Sie könnten einen OCF-Ressourcenagenten für Pacemaker schreiben:http://www.linux-ha.org/doc/dev-guides/ra-dev-guide.html

Oder Sie könnten versuchen, den Ressourcenagenten ocf:heartbeat:anything zu verwenden. Er kann beliebige Befehle ausführen, aber dafür sind Setups/Anforderungen erforderlich. Führen Sie den folgenden Befehl auf einem Ihrer Knoten aus, um mehr zu erfahren:# crm ra info ocf:heartbeat:anything

verwandte Informationen