CRM (akce)
Pacemaker pracuje s agenty tak, že je spouští buď na základě nějaké akce (start, stop, move,..) nebo je volá v určitých intervalech, vycházejících z nastavení zdroje (monitor). Při každém spuštění agenta CRM parametrem předá jméno příslušné akce.
Základní akce
Základní akce musí podporovat každý agent.
start
Na základě akce start agent zavolá funkci, která se pokusí na základě proměnných $OCF_RESKEY_* zdroj spustit a založit v adresáři /var/run/heartbeat
stavový soubor.
Po úspěšném spuštění CRM zavolá akci meta-data (Nejspíš proto aby provedl aktualizaci CIB?)
stop
Obdrží-li agent akci stop, zavolá funkci, která zkusí zdroj korektně zastavit. Pokud se jí to podaří, agent zruší stavový soubor a vrátí $OCF_SUCCESS. V případě neúspěchu se vrací příslušný chybový kód.
monitor
Je-li agentu předána akce monitor, tak zavolá funkci, která zkontroluje zda zdroj běží jak má.
meta-data
Při předání akce meta-data se volá funkce, která vrací XML kód s popisem a výchozím nastavením hodnot proměnných a intervalů pro volání akcí.
Výchozí proměnné definované v tomto XML kódu jsou za běhu agenta dostupné přes $OCF_RESKEY_* a přes konfiguraci CRM jim lze přiřazovat hodnoty specifické pro zdroj.
Tento XML kódu zároveň funguje jako manuál pro nastavení agenta.
Akce režimu Master/Slave
Speciální akce
Většina agentů vystačí se základními akcemi, ale v některých případech je před spuštěním, nebo zastavením stroje třeba zavolat akci, která zdroj připraví na akci která bude následovat. Typické je to pro agenty, které zajišťují migraci virtuálních strojů.
migrate_to
Akci předá CRM agentovi nodu na, kterém právě zdroj běží, předtím než zavolá akci stop.
migrate_from
Akci předá CRM agentovi nodu, na který se bude zdroj migrovat. Na rozdíl od předchozí akce po zavolání migrate_from již CRM akci start nevolá!