HA systeemid

From ICO wiki
Revision as of 22:13, 11 January 2013 by Mrajur (talk | contribs) (Created page with 'Antud leht on alles toimetamisel ning ei ole veel valmis. Kõrgkäideldav klaster(HA cluster/High-availability cluster) on rühm servereid mis võimaldavad süsteemi kasutada m…')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Antud leht on alles toimetamisel ning ei ole veel valmis.


Kõrgkäideldav klaster(HA cluster/High-availability cluster) on rühm servereid mis võimaldavad süsteemi kasutada minimaalse käideldavuse kaoga. Sellist tüüpi süsteemi ehitamine toimub üldiselt seadmete dubleerimisel, tõrkekindluse kasvatamiseks. Asja eesmärk on see et kui süsteemi mingis komponendis tekib tõrge siis ülejäänud süsteem on võimalik ilma riknenud komponendita edasi toimima. Ilma klasterdamiseta oleks mõne kriitilise komponendi purunemisel süsteemile laastav tagajärg. Kui server on ühendatud võrku vaid ühe switchi abil siis juhul kui antud switchiga midagi juhtub on süsteem koheselt rivist väljas. Klasterdamine mille puhul kasutatakse mitut switchi ning võrgukaarti on võimalik sellise probleemi juhtumisel liiklus suunata teisele võrgukaardile ning sealtkaudu mööda teist switchi teenuse kasutamine on jälle võimalik.

Klastri tüübid

  • Active/active - Klaster mille puhul kõik kasutuses olevad noded on aktiivsed. Juhul kui üks nodedest seiskub siis jaotatakse koormus ülejäänud nodede vahel ära.
  • Active/passive - Klaster mille puhul üks node on aktiivne ja teine node on ooteseisus. Juhul kui aktiivne node ära sureb käivitatakse teenus ooteseisus olevas nodes ning töö jätkub. Antud lahenduse puhul on probleemiks see, et üldiselt on süsteemi töös mõnda aega tõrge kuna süsteem peab aru saama et primaarne node on maas ja teise node käivitamine võtab aega.
  • N+1 - Lisab süsteemi ühe lisa node mis käivitatakse alles siis kui üks nodedest on surnud. Seda nimetust kasutatakse üldiselt klastrites kus on palju nodesi jooksmas. Kahe nodega klastri puhul on see sama mis active/passive.
  • N+M - Sama mis eelmine kuid lisa nodesi on rohkem. Sellist lahendust kasutatakse siis kui on vaja kõrgemat tõrkekindlust, miinuseks on kindlasti suurem kulu kuna serverite arv mida sellise süsteemi hoidmiseks on vaja on tunduvalt suurem.
  • N-to-1 - Juhul kui failover toimub siis tagavara node tuuakse kasutusse ainult seni kuni primaarne node on tagasi online. Kui see hetk tuleb siis viiakse kõik teenused primaarse node peale tagasi ning failover node läheb jälle ooteseisu.
  • N-to-N - Kombinatsioon active/active ja N+M klastrist. Selle klastri puhul jagatakse failind node peal olevad teenused aktiivsete nodede vahel ära ning seega kaob vajadus standby nodede hoidmise järele.

Kõrgkäideldavuse mõõtmine

Süsteemi käideldavust mõõdetakse selle järgi millal teenused on saadavad. Juhul kui süsteem on töös kuid teenused mida süsteem peaks pakkuma ei toimi on tegemist downtimega.

Availability % Downtime per year Downtime per month* Downtime per week
90% ("one nine") 36.5 days 72 hours 16.8 hours
95% 18.25 days 36 hours 8.4 hours
97% 10.96 days 21.6 hours 5.04 hours
98% 7.30 days 14.4 hours 3.36 hours
99% ("two nines") 3.65 days 7.20 hours 1.68 hours
99.5% 1.83 days 3.60 hours 50.4 minutes
99.8% 17.52 hours 86.23 minutes 20.16 minutes
99.9% ("three nines") 8.76 hours 43.8 minutes 10.1 minutes
99.95% 4.38 hours 21.56 minutes 5.04 minutes
99.99% ("four nines") 52.56 minutes 4.32 minutes 1.01 minutes
99.999% ("five nines") 5.26 minutes 25.9 seconds 6.05 seconds
99.9999% ("six nines") 31.5 seconds 2.59 seconds 0.605 seconds
99.99999% ("seven nines") 3.15 seconds 0.259 seconds 0.0605 seconds

Antud tabelist on näha et 99% uptime ja 99.99% uptime vahe on väga suur ning siin on iga komakoht väga tähtis.

Kõrgkäideldavuse rakendamine

Selleks et süsteemi muuta kõrgkäideldavaks tuleks kirja panna kõik süsteemi komponendid mis võivad süsteemi käideldavust mõjutada. Komponente mille riknemise puhul süsteem ei ole enam käideldav kutsutakse SPOF-ideks(Single Point Of Failure). Selleks võivad olla kõvakettad, võrguswitch, serveriruumi lokatsioon jms. Kõige lihtsam lahendus on osta kõike 10 tükki selleks et olla võrdlemisi kindel et juhul kui mingi jupp katki läheb on tagavara piisav selleks et süsteemi katkestust vältida. Selline lahendus võib tunduda turvaline kuid siin on suur miinus ehk hind. Kui riistvara tuleb osta 10x rohkem siis on kulu vähemalt 10x suurem ning siin tulebki kõige keerulisem küsimus kõrgkäideldava klastri ehitamisel. Kui suurt investeeringut me oleme nõus tegema selleks et käideldavuses komakohti juurde saada. Enamasti siiski piisab sellest kui kõik seadmed on vähemalt dubleeritud.

Klastri eelised

Klastri suurim eelis tavalise klasterdamata süsteemi ees lisaks suurenenud käideldavusele on skaleeritavus. Active/active klastri puhul kus on kasutusel n arv servereid süsteemi jooksutamiseks on võimalik lihtsa vaevaga lisada süsteemi uusi servereid ning vanu välja võtta ilma süsteemi tööd häirimata. Klasterdatud lahenduse korral saavad admin-id rahulikumalt öösel magada kuna isegi kui toimub midagi saab suure tõenäosusega süsteem probleemi lahendamisega hakkama. See loomulikult ei tähenda et juhul kui on klasterdatud süsteem siis admini enam vaja pole või et ta teadetele reageerima ei pea kuid tööd teeb see vähemaks küll. Ning mis parim, Admin saab lõpuks ometi päeval süsteeme maha võtta. Juhul kui on vaja serverile A teha hooldustöid siis tõstetakse kõik teenused sealt ära ning ilma rakenduse tööd peatamata on võimalik servereid ka päeval maha võtta.