High Availability
Yksi high availability -järjestelmän käyttökohteista on virtuaalialustat.
HA:n tarkoitus on palvelun jatkuvuuden takaaminen tilanteessa, jossa verkko tai infrastruktuuri vikaantuu, tai toimii epävakaasti.
HA varmistaa, että palvelu ajetaan alas vikaantuneessa isäntä-palvelimessa, ja että palvelu nousee ylös vara-palvelimella.
Palvelun ajaminen alas on yhtä tärkeää, kuin palvelun saaminen ajoon vara-isännällä. Jos ensisijainen palvelin nousee automaattisesti ylös,
syntyy suuri riski tiedon korruptiolle, koska kaksi identtistä palvelua yrittävät päästä käsiksi samoihin resursseihin yhtäaikaisesti.
HA:lla voidaan myös ajoittaa palveluiden käynnistyminen tietyssä järjestyksessä.
Esimerkiksi DNS- ja DHCP-palvelut käynnistetään ennen clientejä tai palvelimia, jotka ovat riippuvaisia näistä palveluista.
XenServerissä HA:ssa on seuraavat vaatimukset:
• Shared storage, vähintään yhdellä iSCSI, NFS tai FC LUNilla, joka on 356MB tai suurempi. Heartbeat SR. HA luo kaksi volumea heartbeat SR:lle. - 4MB heartbeat volume heartbeatille. - 256MB metadata volume, käytetään master metadatan tallentamiseen, masterin vikaantumisen varalta. • XenServer pool • Staattiset IP-osoitteet kaikille isännille.
1. Liitetään xenserver2 ja xenserver3 HA-pooliin.
# xe pool-join master-address=xenserver1.foo.bar master-username=root master-password=salasana Host agent will restart and attempt to join pool in 10.000 seconds...
2. Nimetään HA-pool.
# xe pool-list uuid ( RO) : ee98b8e2-59c2-ac51-6635-69c75c73872a name-label ( RW): name-description ( RW): master ( RO): d0c69d5a-27cd-48fb-ba35-574416b9b0a7 default-SR ( RW): bdf583f7-d5a0-9d0b-9c3d-17197b1cc565 # xe pool-param-set name-label=HA-Pool uuid=ee98b8e2-59c2-ac51-6635-69c75c73872a
3. Otetaan HA käyttöön ja asetetaan iSCSI oletus tallennusmediaksi.
# xe sr-list| grep -B 1 iSCSI uuid ( RO) : b9f5ac3a-e808-952c-07a8-dc484cee379f name-label ( RW): iSCSI_SR # xe pool-ha-enable heartbeat-sr-uuids=b9f5ac3a-e808-952c-07a8-dc484cee379f ha-config:timeout=20 # xe pool-param-set uuid=ee98b8e2-59c2-ac51-6635-69c75c73872a default-SR=b9f5ac3a-e808-952c-07a8-dc484cee379f
4. pool-ha-compute-max-host-failures-to-tolerate –komento kertoo maksimäärän isäntiä, jotka voivat vikaantua ennen kuin järjestelmän resurssit loppuvat kaikkien suojattujen VM:ien ajamiseen. ha-host-failures-to-tolerate -komennolla asetetaan raja millä järjestelmä varoittaa kapasiteetin loppumisesta. Tämän arvon tulisi olla yhtäsuuri tai pienempi kuin ha-host-failures-to-tolerate -arvon. Lisätään arvo ja pool-uuid.
# xe pool-ha-compute-max-host-failures-to-tolerate 3 # xe pool-param-set ha-host-failures-to-tolerate=2 uuid=ee98b8e2-59c2-ac51-6635-69c75c73872a

HA XenCenteristä katsottuna
5. Asetetaan poolissa olevalle virtuaalikoneelle prioriteeti.
# xe vm-list|grep -B 1 Cent uuid ( RO) : 7c04dc09-be2c-7bd3-e948-3a4a3234a6e4 name-label ( RW): Centos7 # xe vm-param-set uuid=7c04dc09-be2c-7bd3-e948-3a4a3234a6e4 ha-restart-priority=restart ha-always-run=true