CRM - konfigurace
Autorizace u corosyncu
Před vlastní konfigurací corosyncu si musíte vygenerovat autorizační klíč, kterým se budou mezi sebou jednotlivé nody vzájemně autorizovat. Autorizační klíč pro corosync je umístěn v binární klíčence, což je (ve výchozím nastavení) soubor /etc/corosync/authkey
. Nejde tedy o textový soubor, jako v případě heartbeatu.
Tento vygenerovaný klíč pak musíte rozkopírovat mezi jednotlivé nody. U všech musí být stejný a na stejném místě - v adresáři /etc/corosync
Konfiguraci HA clusteru vám velmi usnadní když si mezi jednotlivé nody rozkopírujete veřejné ssh klíče. jak na to viz kapitola Přihlašování přes ssh bez nutnosti zadávat heslo |
Konfigurace corosyncu
Hromadu problémů jsem si navařil tím, že jsem zkoušel aplikovat nejrůznější postupy co se válí po netu. Doporučuji na ně zapomenout přinejmenší do doby, než budete vědět co vlastně CRM s naklepanou konfigurací dělá.
Především je třeba mít na paměti, že konfigurace pro corosync nemá(!) nic společného s konfigurací zdrojů (resources) v CRM. |
Po instalaci najdete konfigurační soubor corosync.conf
v adresáři /etc/corosync
. Kdo by to čekal, že?
Jeho struktura je rozdělena do několika částí. V podstatě není třeba nic víc, než nakonfigurovat sekci totem
(což je název protokolu, který byl vytvořen v rámci projektu openais). Tzn.:
- u položky
bindnetaddr
doplnit platnou IP adresu nodu, na kterém se instalace provádí (ve výchozí volbě je uvedena lokální IPv4 adresa 127.0.0.1) - u položky
mcastaddr
uvést multicastovou adresu - a používáte-li při multicastu IPv6 protokol, tak ještě
nodeid
. Což může být libovolné celé (32bitové) číslo, které by mělo být v rámci clusteru jedinečné.
Tím by měla být konfigurace nodu hotova.
Předtím, než se corosync pokusíte spustit zkontrolujte:
|
Pokud je vše v pořádku, můžete zkusit corosync nahodit.
Naběhne-li vše v pořádku, měli byste najít ve spuštěných procesech něco podobného..
nod-1:~# ps axf
...
29601 ? Ss 0:00 ha_logd: read process
29602 ? S 0:00 \_ ha_logd: write process
29802 ? Ssl 0:00 /usr/sbin/corosync
29813 ? SLs 0:00 \_ /usr/lib/heartbeat/stonithd
29814 ? S 0:00 \_ /usr/lib/heartbeat/cib
29815 ? S 0:00 \_ /usr/lib/heartbeat/lrmd
29816 ? S 0:00 \_ /usr/lib/heartbeat/attrd
29817 ? S 0:00 \_ /usr/lib/heartbeat/pengine
29818 ? S 0:00 \_ /usr/lib/heartbeat/crmd
|
Stejným způsobem pak postupně nakonfigurujte a spusťte CRM i na dalších nodech. Pokud je vše v pořádku, měly by se - po určitém intervalu - postupně objevit ve výstupu monitorovacího příkazu crm_mon Viz níže..
nod-2:~# crm_mon -1
============
Last updated: Thu Apr 7 15:52:20 2011
Stack: openais
Current DC: nod-1 - partition with quorum
Version: 1.0.9-da7075976b5ff0bee71074385f8fd02f296ec8a3
2 Nodes configured, 2 expected votes
0 Resources configured.
============
Online: [ nod-2 nod-1 ]
|