HA (High Availability) cluster építése

A Unix/Linux szerverek üzemeltetése wikiből
(Változatok közti eltérés)
(Hiba javítása (Linux HA -> OpenAIS))
1. sor: 1. sor:
 
= Elméleti alapok =
 
= Elméleti alapok =
 
   
 
== Computer cluster – számítógép fürt ==
 
== Computer cluster – számítógép fürt ==
 
   
 
Egymással összekapcsolt számítógépek, amelyek együttműködve a fürt számára definiált funkciókat valósítják meg. A fürtön belüli gépek kívülről nem látszanak. A fürt mint egyetlen entitás nyújt szolgáltatásokat.
 
Egymással összekapcsolt számítógépek, amelyek együttműködve a fürt számára definiált funkciókat valósítják meg. A fürtön belüli gépek kívülről nem látszanak. A fürt mint egyetlen entitás nyújt szolgáltatásokat.
 
   
 
== HA Clusters (Nagy rendelkezésre állású fürtök, feladatátvételi fürtök) ==
 
== HA Clusters (Nagy rendelkezésre állású fürtök, feladatátvételi fürtök) ==
 
   
 
Olyan számítógép fürtök, amelyek a fürtők által nyújtott szolgáltatások rendelkezésre állását próbálják meg növelni. A szolgáltatásokat általában a fürt egyik tagja nyújtja, míg a többi tag annak meghibásodása esetén átveszi a szerepét, így növelve a szolgáltatások rendelkezésre állását.
 
Olyan számítógép fürtök, amelyek a fürtők által nyújtott szolgáltatások rendelkezésre állását próbálják meg növelni. A szolgáltatásokat általában a fürt egyik tagja nyújtja, míg a többi tag annak meghibásodása esetén átveszi a szerepét, így növelve a szolgáltatások rendelkezésre állását.
 
   
 
=== HA cluster fajták ===
 
=== HA cluster fajták ===
 
   
 
* Shared disk (Megosztott lemezes) modell – a fürt rendelkezik egy adattárolóval, amelyet a fürttagok egy közös interfészen keresztül érhetnek el konkurens módon.
 
* Shared disk (Megosztott lemezes) modell – a fürt rendelkezik egy adattárolóval, amelyet a fürttagok egy közös interfészen keresztül érhetnek el konkurens módon.
 
* Shared nothing (Megosztott elem nélküli) modell – Minden logikai és fizikai egységet egyszerre csak egy fürttag birtokolhat.
 
* Shared nothing (Megosztott elem nélküli) modell – Minden logikai és fizikai egységet egyszerre csak egy fürttag birtokolhat.
 
   
 
=== HA cluster fogalmak ===
 
=== HA cluster fogalmak ===
30. sor: 23. sor:
 
* Erőforrás - erőforrásnak nevezhetünk minden olyan logikai vagy fizikai eszközt és szolgáltatást amelyet a fürt használ/kezel.
 
* Erőforrás - erőforrásnak nevezhetünk minden olyan logikai vagy fizikai eszközt és szolgáltatást amelyet a fürt használ/kezel.
 
* CRM (Cluter Resource Management, Fürt erőforrás menedzsment) - A fürt erőforrásinak kezelését megvalósító eszköz.
 
* CRM (Cluter Resource Management, Fürt erőforrás menedzsment) - A fürt erőforrásinak kezelését megvalósító eszköz.
  +
 
= HA cluster építése mysql szerver számára =
 
= HA cluster építése mysql szerver számára =
   
 
== felhasznált eszközök ==
 
== felhasznált eszközök ==
   
Több program segítségével oldottam meg a feladatot. A fürtöt a Linux HA projekt heartbeat programjával készítettem. Mivel a heartbeat shared nothing modell alapján működik, a szerver adatainak a tükrözését a fürttagokra a DRBD projekt segítségével oldottam meg. Ahhoz, hogy a fürt működhessen, különböző erőforrásokat kell definiálni hozzá. Ezt a Pacemaker projekt segítségével csináltam.
+
Több program segítségével oldottam meg a feladatot. A fürtöt a Pacemaker CRM projekt segítségével OpenAIS fürt keretrendzsert felhasználva készítettem. Mivel az OpenAIS shared nothing modell alapján működik, a szerver adatainak a tükrözését a fürttagokra a DRBD projekt segítségével oldottam meg.
   
Ezen projektek mindegyikére igaz, hogy nem rendelkeznek stabil APIval, így az itt leírtak újrafelhasználhatósága korlátolt. (Már a szócikk megírásának pillanatában létezett a Linux ha projektnek a felhasználtnál frissebb verziója, de ahhoz akkor még nem létezett dokumentáció.)
+
Ezen projektek mindegyikére igaz, hogy nem rendelkeznek stabil APIval, így az itt leírtak újrafelhasználhatósága korlátolt.
 
=== Linux HA (heartbeat)===
 
Feladatátvételi fürtök létrehozását megcélzó közösségi (nem céges) fejlesztésű projekt. A projekt lelke a heartbet nevű daemon, amellyel a feladatátviteli fürtöt létre lehet hozni. Megosztott elem nélküli, erőforrás alapú modellt használ. A heartbeat önmagában csak az erőforrások használatáért felel. Az erőforrások definiálásához és karbantartásához CRM-re van szüksége.
 
Lehetséges CRM megoldások
 
* a Linux HA rendelkezik egy igen primitív CRM résszel is. Csak 2 tagból álló fürtök leírására alkalmas, és elég korlátozott eszközkészlete van.
 
* a Linux HA CRM részét leválasztották (forkolták) és létrehoztak egy új projektet Pacemaker néven. Tudásában jóval túlszárnyalja elődjét.
 
   
 
=== Pacemaker ===
 
=== Pacemaker ===
  +
  +
Nagy rendelkezésre állású fürtökhöz készült CRM rendszer. A Linux HA projekt CRM részének leválasztásából fejlődött ki. két fürt keretrendszerrel képes együttműködni:
  +
* heartbeat - a Linux HA project része, használata nem ajánlott.
  +
* OpenAIS - ajánlott keretrendszer
  +
  +
=== OpenAIS ===
  +
  +
Az OpenAIS a Corosync általános fürt keretrendszert felhasználó, nagy rendelkezésre állású fürt keretrendszert megvalósító eszköz.
   
 
=== DRBD ===
 
=== DRBD ===
  +
  +
   
   

A lap 2009. december 25., 00:36-kori változata

Tartalomjegyzék

1 Elméleti alapok

1.1 Computer cluster – számítógép fürt

Egymással összekapcsolt számítógépek, amelyek együttműködve a fürt számára definiált funkciókat valósítják meg. A fürtön belüli gépek kívülről nem látszanak. A fürt mint egyetlen entitás nyújt szolgáltatásokat.

1.2 HA Clusters (Nagy rendelkezésre állású fürtök, feladatátvételi fürtök)

Olyan számítógép fürtök, amelyek a fürtők által nyújtott szolgáltatások rendelkezésre állását próbálják meg növelni. A szolgáltatásokat általában a fürt egyik tagja nyújtja, míg a többi tag annak meghibásodása esetén átveszi a szerepét, így növelve a szolgáltatások rendelkezésre állását.

1.2.1 HA cluster fajták

  • Shared disk (Megosztott lemezes) modell – a fürt rendelkezik egy adattárolóval, amelyet a fürttagok egy közös interfészen keresztül érhetnek el konkurens módon.
  • Shared nothing (Megosztott elem nélküli) modell – Minden logikai és fizikai egységet egyszerre csak egy fürttag birtokolhat.

1.2.2 HA cluster fogalmak

  • failover – a szolgáltatások kiszolgálásának átvétele a meghibásodott fürttagtól.
  • failback – a szolgáltatások kiszolgálásának visszaadása a megjavított fürttagnak.
  • split barin – bizonyos meghibásodások esetén előfordulhat, hogy a fürt több partícióra esik szét, amely partíciók nem tudnak egymásról, így mindegyik partíció fürtöt fog képezni és megpróbálja nyújtani az eredeti fürt szolgáltatásait. Ez igen hamar az adatok korrupciójához és hibás kiszolgáláshoz vezet.
    • STOMITH (Sooth The Other Machine In The Head) – split barin elkerülését célzó technika. Hiba esetén a hibás fürttagot egy másik fürttag újraindítja (fejbe lövi).
    • Quorum - split barin elkerülését célzó technika. Amennyiben a fürt több részre esik szét akkor csak a legtöbb fürttagot tartalmazó rész működjön (ezen fürttagok alkotnak quorumot). Amennyiben a fürttagok száma páros, azért, hogy a többség biztosítva legyen a fürthöz hozzávesznek egy erőforrást (általában merevlemez (quorum disk)) amely fürttagként viselkedik.
  • Erőforrás - erőforrásnak nevezhetünk minden olyan logikai vagy fizikai eszközt és szolgáltatást amelyet a fürt használ/kezel.
  • CRM (Cluter Resource Management, Fürt erőforrás menedzsment) - A fürt erőforrásinak kezelését megvalósító eszköz.

2 HA cluster építése mysql szerver számára

2.1 felhasznált eszközök

Több program segítségével oldottam meg a feladatot. A fürtöt a Pacemaker CRM projekt segítségével OpenAIS fürt keretrendzsert felhasználva készítettem. Mivel az OpenAIS shared nothing modell alapján működik, a szerver adatainak a tükrözését a fürttagokra a DRBD projekt segítségével oldottam meg.

Ezen projektek mindegyikére igaz, hogy nem rendelkeznek stabil APIval, így az itt leírtak újrafelhasználhatósága korlátolt.

2.1.1 Pacemaker

Nagy rendelkezésre állású fürtökhöz készült CRM rendszer. A Linux HA projekt CRM részének leválasztásából fejlődött ki. két fürt keretrendszerrel képes együttműködni:

  • heartbeat - a Linux HA project része, használata nem ajánlott.
  • OpenAIS - ajánlott keretrendszer

2.1.2 OpenAIS

Az OpenAIS a Corosync általános fürt keretrendszert felhasználó, nagy rendelkezésre állású fürt keretrendszert megvalósító eszköz.

2.1.3 DRBD


--Kishonti István 2009. december 24., 19:49 (UTC)

Személyes eszközök