ČMI

Z thewoodcraft.org
Přejít na: navigace, hledání

Stroje email1 a email2 tvoří symetrický dvounodový cluster se dvěma vzájemně sdílenými DRBD úložišti. Přičemž poskytované zdroje jsou konfigurované do režimu Primary/Secondary tj. zatím co jsou z primárního nodu poskytované zdroje, jsou uložená data v reálném replikována na nod sekundární, který běží jako záložní.

Při výpadku primárního stroje, přebírá sekundární stroj roli primárního stroje

Upozornění Pozor! Pro zajištění bezproblémové změny rolí je nutné průběžně kontrolovat, zda-li jsou DRBD úložiště spojená. K jejich rozpadu může kdykoliv dojít při manipulaci se síťovými prvky mimo fyzické stroje!

V takovém případě by přestala probíhat replikace dat a pokud nebylo spojení obnoveno, mohlo by po dalším přehození rolí dojít ke stavu kdy by na novém primary nodu scházela nereplikovaná data.

V jeho rámci primárního nodu běží dva virtuální stroje:

gw 
s distribucí Debian wheezy amd64 funguje jako prostředník (firewall) mezi strojem suse a vnější sítí
suse 
s distribucí Suse ve které je nainstalován mailserver Kerio

Použité technologie

Stroje email1, email2 a gw jsou instalované a spravované s využitím Puppetu. Podrobná dokumentace k jejich instalaci je generovaná z jeho konfigurace:

Upozornění Spuštěný puppet agent by mohl komplikovat případnou manuální konfiguraci těchto strojů, neboť by klíčové konfigurační soubory mohl vracet do původního stavu. Má-li tedy probíhat správa těchto strojů pro budoucí příští manuálně, musí být puppet agent zastaven - nejlépe zcela odinstalován.
LVM 
Technologie LVM je použita pro správu blokových zařízení v rámci nodů. Aktuálně jsou logické disky konfigurovány přes puppet, jinak viz https://sourceware.org/lvm2/
Pacemaker 
Viz http://clusterlabs.org/doc/
DRBD 
O nahození a přehození DRBD zařízení se stará Pacemaker, nicméně pro případné řešení problémů je nutné znát základní postupy viz manuál k DRBD - http://www.drbd.org/users-guide-8.3/
XEN 
Manuál k virtualizačnímu prostředí XEN - http://wiki.xenproject.org/wiki/Category:Manual

Administrace strojů

Předávání příslušného hesla se realizuje mimo dokumentaci

email1 & email2

Přihlášení na administraci strojů email1 a email2 je možné provést :

  • vzdáleně prostřednictvím ssh účtu uživatele root heslem
email1: ssh root@195.113.206.131
email2: ssh root@195.113.206.133
  • vzdáleně prostřednictvím grafické konzole iLO4 přihlášením na lokální účet uživatele root heslem
email1: https://195.113.206.41/index.html
email2: https://195.113.206.42/index.html

gw

Přihlášení na administraci stroje gw je možné provést:

  • vzdáleně prostřednictvím ssh účtu uživatele root heslem (Pouze z vnitřní sítě ČMI!)
gw:  ssh root@195.113.206.134
  • lokálně prostřednictvím XEN konzole (vyžaduje ssh přihlášení na stroj email1, resp. email2, který běží aktuálně jako primární nod)
xm console gw

Poznámka: Z konzole se lze vrátit zpět kombinací Ctrl+AltGr+]

Kontrola clusterového prostředí

Poznámka: Kontrolu stavu clustrového prostředí lze provést na libovolném dostupném nodu.

crm status

Ukázkový výpis:

email2 (CMI) :~# crm status
============
Last updated: Tue Sep  2 09:35:41 2014
Last change: Thu Aug 21 17:23:23 2014 via cibadmin on email2
Stack: openais
Current DC: email1 - partition with quorum
Version: 1.1.7-ee0730e13d124c3d58f00016c3376a1de5323cff
2 Nodes configured, 2 expected votes
7 Resources configured.
============

Online: [ email2 email1 ]

 Master/Slave Set: ms_images [drbd_images]
     Masters: [ email2 ]
     Slaves: [ email1 ]
 images (ocf::heartbeat:Filesystem):    Started email2
 Master/Slave Set: ms_suse [drbd_suse]
     Masters: [ email2 ]
     Slaves: [ email1 ]
 gw_xen (ocf::heartbeat:Xen):   Started email2
 suse_xen       (ocf::heartbeat:Xen):   Started email2

Z ukázkového výpisu je zjevné, že je vše v naprostém pořádku a během doby, která uplynula od poslední kontroly nedošlo k žádnému problému V případě, že se ve výpisu objeví nějaká chybová hlášení, je vždy nutné nejprve zkontrolovat v jakém stavu jsou spuštěné zdroje ve skutečnosti. I když mohou virtuální stroje bez problému běžet, mohlo dojít k rozpadu některého z DRBD polí. V takovém případě je třeba situaci co nejrychleji ošetřit.

Kontrola stavu DRBD polí

Poznámka: Kontrolu stavu clustrového prostředí lze rovněž provést na libovolném dostupném nodu. Je pouze třeba mít na paměti, že ve výpisu je vždy na prvním místě uveden status lokálního nodu

cat /proc/drbd

Ukázkový výpis:

email2 (CMI) :~# cat /proc/drbd 
version: 8.3.11 (api:88/proto:86-96)
srcversion: F937DCB2E5D83C6CCE4A6C9 

 1: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
    ns:13347096 nr:0 dw:15317052 dr:1137218 al:1572 bm:156 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
 2: cs:Connected ro:Primary/Secondary ds:UpToDate/UpToDate C r-----
    ns:1368588 nr:0 dw:2140716 dr:396818 al:347 bm:112 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0

Z ukázkového výpisu lze vyčíst, že:

  1. obě DRBD pole jsou v pořádku
  2. stroj email2 je aktuálně primary nodem, tudíž na něm zároveň běží i virtuální stroje

Obnova spojení DRBD pole

V případě, že došlo k rozpadu některého z DRBD polí, bude vypadat výpis podobně:


Nejprve tedy zjistíme jméno rozpadlého DRBD pole

cat /etc/drbd.d/*.res

Na stroji kde je primary

drbdadm connect suse

Na stroji kde je secondary následujícím příkazem zahodíme případné lokální změny a provedeme synchronizaci dat s primary nodem

drbdadm -- --discard-my-data connect suse

Poznámka: V případě že se pole hned nechytne můžeme zkusit operaci zopakovat. Přikazem connect pouze aktivujeme primary nod do vyčkávacího módu, kdy čeká na to až se o data přihlásí secondary nod.

Kontrola spuštěných virtuálů

Poznámka: Kontrolu a přihlášení do prostředí spuštěných virtuálů prostřednictvím XEN konzole lze provést vždy pouze na aktuálním primárním nodu!

xm list
xm console ...

V případě, že je nějaký problém se spuštěním virtuálního stroje, je třeba prozkoumat logovací soubory a nalézt příčinu.