Klusteri (tietotekniikka)

Wikipedia
Loikkaa: valikkoon, hakuun
Applen Xserve Cluster Node

Klusteri on useamman tietokoneen verkotettu malli, jossa yleensä yksi tietokone, joka toimii palvelimena, jakaa muiden tietokoneiden, eli noodien kesken tehtäviä. Näin saadaan esimerkiksi paljon laskenta-aikaa vaativa simulaatio suoritettua lyhyemmässä ajassa. Vrt. moniydinsuoritin tai moniprosessorinen tietokone.

Varsinaiset mallit

  • Kahden yksikön järjestelmä
  • Usean yksikön järjestelmä (esimerkiksi Ryväslaskenta.)

Sovellettavat mallit

  • Vektoriprosessointi
  • Rinnakkaisprosessointi
  • Beowulf
  • Pilvipalvelu

Vektoriprosessoinnissa jaetaan tehtävä useampaan osaseen ja sen jälkeen tehtävä suoritetaan eräänlaisena jonona. Esimerkiksi kone #1 lukee CD-levyä ja kirjoittaa raakavedoksen kiintolevylle, jonka jälkeen kone #2 kirjoittaa vedoksen toiselle levylle. Erona tässä ryväslaskentaan on, että ryväslaskennassa sama tehtävä ajetaan uudestaan ja uudestaan hieman eri muuttujin joka koneella. Vektoriprosessoinnissa sama tehtävä kulkee jonossa yksiköltä toiselle ja jokainen yksikkö tekee hieman eri tehtävän. Ryväslaskenta on rinnakkasprosessointia. Kahden noodin mallia voidaan käyttää esimerkiksi suojaamaan tärkeä palvelu. Jos toinen noodi jostain syystä halvaantuu, on toinen heti valmiina ottamaan ensimmäisen tehtävät hoidettavakseen. Myös kuorman jakoa voidaan tehdä tärkeille verkkopalveluille.

Koska klusterilla tietokoneiden yhteydessä viitataan hajautettuun tiedon käsittelyyn, niin se ei ole rajoittunut ainoastaan laskennallisiin toimiin vaan myös levytilaa voidaan hajauttaa. Tällöin käytetään RAID-tekniikkaa. Sama voidaan toteuttaa myös suuremmassa mittakaavassa, tiedon sijainnin kysely tehdään erilliseltä tietokantapalvelimelta joka taas ohjaaa hakemaan erilliseltä tietokoneelta kysyttyä tietoa. Tällä tavalla saavutetaan vikasietoinen ja suorituskykyinen järjestelmä.

Historiaa[muokkaa | muokkaa wikitekstiä]

Digital Equipment Corporation kehitti ensimmäiset mallit klustereista 1980 VAX/VMS-käyttöjärjestelmälle. Se ei ainoastaan tukenut rinnakkaista ajoa vaan myös levytilan ja oheislaitteiden jakamista.

Järjestelmiä[muokkaa | muokkaa wikitekstiä]

Jyväslaskenta[muokkaa | muokkaa wikitekstiä]

Jyväslaskennan (tai ryväslaskenta) malli (engl. grid) — tarkoittaa myös verkkoa. Tämän tarkoitus on mahdollistaa hajautettu laskenta ympäri maailmaa usealla tietokoneella hyödyntäen alueellisia palvelimia jakamassa tehtäviä pieninä paketteina kotikoneille tai muille vastaaville laitteille. Usein grid-sovellutukset nojaavat vapaaehtoisten apuun. Näissä vapaaehtoistyöhön nojaavissa projekteissa on ideana, että asiakasohjelman asentaminen on käyttäjälle helppoa ja että saadaan halvalla paljon laskenta-aikaa. Mallia käytetään hyvin paljon tieteellisissä paljon laskentatehoa vaativissa projekteissa, kuten:

Ehkä kuuluisin grid-projekti on kuitenkin SETI@home. Vaikkakin tämän projektin tarkkaa laskentatehoa ei voida mitata, koska käytössä olevien koneiden määrä vaihtelee, on se kuitenkin laskelmien mukaan maailman tehokkain yksittäinen supertietokone. Nykyään SETI@home käyttää Berkeleyn yliopiston kehittämää BOINC-järjestelmää (Berkeley Open Infrastructure for Network Computing}. Tällaisen voi huoletta asentaa vaikka kotikoneelle ja pitää sitä aina päällä kun konekin on. BOINC, kuten jo moni sen edeltäjistä, ovat sen verran kehittyneitä, että ne käyttävät vain sen verran laskenta-aikaa, mitä muilta prosesseilta jää yli. Tämä hoidetaan ohjelmien priorisoimisena. BOINC on jossain määrin verrattavissa idle-prosessiin.

Vaikkakin grid-laskennassa ei ole välttämätöntä käyttää tuhansia koneita maailmanlaajuisesti, saman voi tehdä harrastelija kotona esimerkiksi kymmenellä koneella käyttäen Mosixia hyväkseen, yleisesti ottaen kun puhutaan Grideistä tarkoitetaan tällaisia suuria tietokoneiden verkostoja.

openMosix[muokkaa | muokkaa wikitekstiä]

openMosix on vapaa versio MOSIX-järjestelmästä. Molemmat on tarkoitettu ajettavaksi Linux-ympäristössä sekä ovat ilmaisia. Ainut konkreettinen eroavaisuus näiden järjestelmien välillä on lisenssi. openMosix julkaistaan GPL:n alaisenta ja Mosixin lisenssi on hieman rajoittuneempi.

Mosix[muokkaa | muokkaa wikitekstiä]

Mosix-järjestelmät on tarkoitettu hieman tiukemmin sijoitettuun ympäristöön kuin Grid sellaisena kuin se yleisesti ymmärretään. Ne eivät myöskään ole yhtä helposti laajennettavissa. Mosixien hienouksiin kuuluu muun muassa käynnissä olevan prosessin siirtäminen noodilta toiselle ilman prosessin sammuttamista. Mosix on hyvin käytännöllinen ratkaisu esimerkiksi kotona 3D-mallinnusta harrastaville ja sopii myös normaalin koneen käyttöön. Ensisijaisesti nämä ovat kuitenkin klusteroituja supertietokoneita varten.

Beowulf-klusteri[muokkaa | muokkaa wikitekstiä]

Beowulf-klusteri on niille, joille ei valmis tuote kelpaa. Toinen nimitys Tee-se-itse Linux/Unix -klusteri. Järjestelmän etuna on, että se toimii kuten on haluttu, eikä siinä ole ylimääräisiä prosesseja kuluttamassa resursseja. Myös järjestelmän malli voi olla tavallisuudesta poikkeava.

Windows-klusterit[muokkaa | muokkaa wikitekstiä]

Windows-klusteri ei ole kovin suosittu ratkaisu hintansa ja suljetun ympäristön vuoksi, mutta joissakin tapauksissa niiden käyttö on välttämättömyys. Windows-klusterin etuja Unix-malleihin verrattuna ovat helposti skaalautuva järjestelmä ja nopea asennettavuus. Ne hallitsevat myös verkon kuorman jakamisen. Microsoftilla on kehityksessä oma Windows-käyttöjärjestelmä joka on suunniteltu erityisesti supertietokoneita varten.

Klusteri ja verkkoteoria[muokkaa | muokkaa wikitekstiä]

Verkkoteoriassa klusteri tarkoittaa verkon (systeemin) sisäistä, voimakkaasti verkotettua kokonaisuutta, siis verkon (systeemin) sisäistä organisaatiota.

Klusterin "vastakohta" on systeemin liittyminen muuhun kokonaisuuteen, olemassaoloon, eli ns. heikot yhteydet. Jälkimmäiset ovat nimestään huolimatta systeemeille erityisen tärkeitä. Ihmisverkoissa ne esimerkiksi antavat klusterin yhtenäisestä tiedosta poikkeavaa, laajempaa tietoa.

Systeemin raja muodostuu klusterin ja heikkojen yhteyksien rajalle.

Katso myös[muokkaa | muokkaa wikitekstiä]

Aiheesta muualla[muokkaa | muokkaa wikitekstiä]