Differences

This shows you the differences between two versions of the page.

Link to this comparison view

saisp:labs:05:contents:03 [2014/03/02 18:57]
alexandru.carp
saisp:labs:05:contents:03 [2014/03/24 16:30] (current)
alexandru.carp [03. [20p] Linux-HA]
Line 1: Line 1:
-==== 02LVS-TUN (tunneling) ​====+==== 03[20p] Linux-HA ====
  
-In continuare, vom configura directorul pentru a folosi modul LVS-TUNApoivom observa diferentele fata de LVS-DR.+**Linux-HA** este o solutie de clusteringVom configura un cluster simpluformat din două noduri.  
 + 
 +{{:​saisp:​labs:​05:​contents:​lab05-ha.jpg|}} 
 + 
 +Topologia conceptuala este cea din figura ​de mai sus. Observatii:​ 
 +  * Cele două realservere din topologia ​LVS vor fi configurate ca un cluster. 
 +  * Directorul din topologia LVS nu mai are nici un rol aici. Inchideti masina virtuala respectiva, pentru a nu consuma resurse inutil. 
 +  * Adresa IP prin care va fi accesibil serviciul HTTP este 10.0.0.50. 
 + 
 +Pachetul ''​heartbeat''​ este deja instalat pe **saisp-vm-2** si **saisp-vm-3**. 
 + 
 +Este necesar ca stațiile să se poată adresa una pe cealaltă folosind doar hostname-ulAdăugați liniile corespunzătoare în /etc/hosts:
  
-Analog punctului anterior, definiti serviciul HTTP pe director, apoi cele doua realservere in modul tunneling (folositi parametrul ''​-i''​). 
-<​solution -hidden> 
 <​code>​ <​code>​
-root@saisp-vm-1:~ipvsadm -A -t 10.0.0.1:80 +saisp-vm-2echo "10.0.0.30 saisp-vm-3" >> /etc/hosts
-root@saisp-vm-1:~# ipvsadm -a -t 10.0.0.1:80 -r 10.0.0.20:​80 -i +
-root@saisp-vm-1:​~#​ ipvsadm -a -t 10.0.0.1:80 -r 10.0.0.30:​80 -i+
 </​code>​ </​code>​
-</solution>+<code> 
 +saisp-vm-3# echo "​10.0.0.20 saisp-vm-2"​ >> ​/etc/hosts 
 +</code> 
 + 
 +Fișierele de configurare pentru heartbeat se găsesc în directorul ''/​etc/​ha.d/''​. Creați, **pe ambele stații**, fișierul ''​ha.cf''​. 
 +  * Dezactivați **auto-discovery** (Nodurile vor fi specificate manual) 
 +<​code>​autojoin none</​code>​ 
 +  * Specificați modul de comunicare (unicast), interfața pe care se comunică (eth0) și **adresa celuilalt nod** (Linux-HA poate folosi, de asemenea, broadcast sau multicast) 
 +<​code>​ucast eth0 10.0.0.30</​code>​ 
 +  * Specificați nodurile care participă la cluster. Va trebui să specificați **inclusiv nodul local** - numele unui nod trebuie întotdeauna să coincidă cu hostname-ul masinii: 
 +<​code>​node saisp-vm-2 saisp-vm-3</​code>​ 
 + 
 +Linux-HA oferă suport pentru autentificarea conexiunii. Să configurăm folosirea SHA1: 
 +  * Fișierul de configurare corespunzător este ''​authkeys'':​ 
 +<​code>​ 
 +auth 1 
 +1 sha1 42ade27dad9045964fab10a395ffe4e0f726a80b 
 +</​code>​ 
 +  * Puteți genera un digest SHA1 folosind ''​echo "my secret"​ | openssl sha1''​. 
 +  * Fișierul ''​authkeys''​ trebuie să poată fi citit numai de root: ''​chmod 600 /​etc/​ha.d/​authkeys''​. 
 + 
 +Nu în ultimul rând, trebuie să configurăm serviciile oferite de cluster. În acest exemplu, vom configura HTTP. 
 +  * Creați fișierul de configurare ''/​etc/​ha.d/​haresources'':​ 
 +<​code>​ 
 +saisp-vm-2 10.0.0.50 apache2 
 +</​code>​ 
 +  * Linia de mai sus configurează serviciile apache2 să ruleze inițial pe nodul ''​saisp-vm-2''​. Dacă acest nod pică, serviciile vor fi oferite de ''​saisp-vm-3''​. 
 +  * **Atentie:​** Folositi **aceeasi linie** si pe saisp-vm-3 (resursa trebuie detinuta de un singur owner). 
 +  * Este important de observat că, în acest exemplu, serviciile rulează pe ambele noduri tot timpul. Ceea ce se schimbă este nodul cu care este asociată adresa IP. 
 + 
 +Reporniți serviciul ''​heartbeat''​ pe ambele mașini și observați adresele lor IP. 
 + 
 +Folosind un browser, accesati adresa http://​10.0.0.50/​ 
 + 
 +Experimentați oprind serviciul heartbeat de pe ''​saisp-vm-2''​. După un timeout, ''​saisp-vm-3''​ va avea configurată adresa serviciului pe interfața sa eth0. 
 + 
 +Accesati din nou adresa http://​10.0.0.50/​ dar observati ca de aceasta data va raspunde statia ''​saisp-vm-3''​.
  
 +**Atenție**:​ acest setup oferă redundanță la nivelul serviciilor,​ dar nu asigură și replicare. Într-o situație concretă, trebuie să ne asigurăm că ambele servere oferă aceleași informații.
saisp/labs/05/contents/03.1393779450.txt.gz · Last modified: 2014/03/02 18:57 by alexandru.carp
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0