Configurar Heartbeat para ejecutar script de shell

Configurar Heartbeat para ejecutar script de shell

Configuré un sistema de alta disponibilidad conLatido del corazón, Deseo que cuando haya una caída en el clúster principal y se active el clúster secundario, Heartbeat se inicie en él y ejecute un script de shell.

  • Contenido de/etc/ha.d/haresources

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

Le di permiso de ejecución al script y lo puse en la ruta /etc/init.d/, pero todavía no pude ejecutarlo a través de Heartbeat, ¿es posible este tipo de procedimiento?

Respuesta1

Hay bastantes formas diferentes de lograrlo.

Podrías incluir un script /etc/init.d/, pero deberás asegurarte de que sea compatible con LSB:http://www.linux-ha.org/wiki/LSB_Resource_Agents

Podría escribir un agente de recursos de OCF para Pacemaker:http://www.linux-ha.org/doc/dev-guides/ra-dev-guide.html

O podría intentar utilizar el agente de recursos ocf:heartbeat:anything. Puede ejecutar un comando arbitrario, pero existen requisitos de configuración relacionados con él. Ejecute el siguiente comando en uno de sus nodos para obtener más información:# crm ra info ocf:heartbeat:anything

información relacionada