CRM (Resource Agents)

Z DCEwiki
Skočit na navigaci Skočit na vyhledávání
Upozornění Než začnete psát vlastního agenta byste měli vědět jak se crm pracuje a pak začít, dejme tomu s úpravou některého již osvědčeného agenta. V základní sadě je agent s názvem Dummy, který nedělá nic jiného, než demonstruje kde běží. Na něm si můžete odzkoušet přesuny zdroje mezi nody, seskupování, zastavování, spouštění atp.

Tato kapitola je věnována poznámkám pro tvorbu vlastního "Resource Agenta". Jak použít stávající agenty se můžete dočíst v samostatných článcích:

Vlastního agenta je nejlépe začít tvořit ve vlastním "provider" adresáři, tak aby nemohl nabourat ostatní agenty.

Vzhledem k tomu, že by skript agenta měl být identický na všech nodech, ulehčí práci skript, kterým po každé změně můžeme provést jejich rozkopírování mezi nody. Abychom se přitom nemuseli zdržovat zadáváním hesla, je vhodné nastavit pro vzájemnou autorizaci mezi nody, u uživatele pod kterým agenta chcete psát autorizaci přes veřejné ssh klíče.

Když se objeví ve skriptu nějaká chyba, lze ji nejsnáze nalézt, je-li zavolán crm jako příkaz, když crmd démon neběží. Jinak se objeví pouze oznámení o chybě, bez konkrétního výpisu.

Poznámka
nod-2:~# crm configure ra info ocf:dce:drbd

Základem každého agenta je funkce meta_data, skrz kterou se do CRM načítá výchozí konfigurace zdroje ve formátu XML. V tomto XML zdroji se rovněž definují proměnné se kterými případně budete v rámci agenta pracovat (element parameter) a výchozí časové intervaly pro akce (element action).

Upozornění Agenti nemají žádnou lokalizaci, přestože parametr lang="en" v elementech budí dojem, že ano. Ve skutečnosti CRM u elementů nastavením tohoto parametru ignoruje, takže když do něj naprasíte text v utf8, tak se na konzoli normálně vypíše včetně diakritiky.