Kaikki virtualisoinnista, osa 3/4
Pertti Hämäläinen • Piirros: Petri Rotsten
Kaikki virtualisoinnista, osa 3/4
Tallennustila tehokäyttöön

Kun palvelimet on virtualisoitu, onko seuraavaksi tallennuksen vuoro? Voi ollakin, mutta näillä kahdella asialla ei välttämättä ole mitään tekemistä toistensa kanssa.
Palvelinten virtualisointi on monessa yrityksessä jo arkipäivää, mutta tallennuksen virtualisointi on vielä usein hämärähkö käsite. Tämä ei ole ihme, sillä tekniikka on monimuotoisempaa, eivätkä säästöt tule yhtä helposti.
Palvelinvirtualisoinnin kustannustehokkuus ja joustavuus tulevat siitä, että työkuormia voidaan jakaa optimaalisesti fyysisille palvelimille ja siirrellä näiden välillä muutosten ja huoltotöiden vaatiessa. Tämä edellyttää käytännössä palvelinten ja tallennuksen erottamista toisistaan. Massamuistit on keskitettävä palvelinten ulkopuolelle omiin laitteisiinsa, joihin liikennöidään palvelimesta verkon yli.
Keskitetty tallennuslaitteisto voi tarjota joustavia toimintoja esimerkiksi levytilan kasvattamiseen niin, että yksittäisillä levypakoilla ja palvelimien näkemillä loogisilla levyasemilla ei ole fyysistä vastaavuutta. Niin kauan kuin pysytään yhden tai kahden laitekehikon tarjoamissa toiminnoissa, tallennuksen keskittämispäätös ei kuitenkaan vielä luo tarvetta varsinaiselle tallennuksen virtualisoinnille.
Tallennusratkaisun valintaan vaikuttaa tiedon määrän ohella tietojen luokittelu. Tiedon kriittisyydestä riippuu, millaisia varmistus-, kahdennus- ja etäpeilausratkaisuja minkäkin palvelun tiedoille tarvitaan. Mitä monitahoisempia tarpeet ovat, sitä todennäköisemmäksi tulee tarve virtualisoida myös tallennusjärjestelmät.
Muutokset päänvaivana
Tallennusjärjestelmällä on oma elinikänsä. Nyrkkisäännön mukaan sopivana suunnittelujaksona pidetään viittä vuotta, mikä antaa liikkumavaraa. Siirtyminen seuraavan sukupolven laitteisiin vie oman aikansa, sen tulisi olla suunniteltuna viimeistään vuotta ennen varsinaista laitehankintaa, ja jossain välissä laitteita pitäisi ehtiä rauhassa käyttääkin.
Migraatiovaiheessa vanhat ja uudet laitteistot elävät jonkin aikaa rinnakkain. Todennäköistä on, että vanhat laitteet eivät heti jouda eläkkeelle, vaan että niitä käytetään vielä vuosi, pari vähemmän kriittisen tiedon tallentamiseen. Levyjärjestelmien saantiajat eivät ole kasvaneet samassa tahdissa tietokoneiden tehojen kanssa, joten vanhan laitteiston romutusajankohdan määrää lähinnä huoltokustannusten nousu.
Usean sukupolven laitteiden rinnakkaiseloon on muitakin syitä. Jos tallennustarpeet ovat kasvaneet ennakoitua nopeammin, laajennuksia ei ehkä saada tehtyä alun perin valitun arkkitehtuurin puitteissa. Laitemerkki saattaa vaihtua, jos kilpailijalta saadaan parempi tarjous, ja myös yhtiöiden sulautumiset voivat tuoda konesaliin monen eri valmistajan tallennuslaitteita.
Heterogeenisen tallennuslaitekannan hallinta on hankalaa. Tallennuksen virtualisointi on eräs tapa helpottaa työtä.
Virtuaalinen on joustavampi
Kuten kaikessa virtualisoinnissa, myös tallennuksessa on kyse abstraktiotason nostamisesta. Fyysiset tallennuslaitteistot ja niiden tekniset ominaisuudet peitetään virtualisointikerroksen alle, jolloin tallennustilaa voidaan laajentaa, yhdistellä ja siirrellä joustavammin kuin käsiteltäessä erillisiä laitteistoja suoraan niiden omien hallintaohjelmien avulla.
Jos palvelinten datat pitää siirtää tallennusalustalta toiselle käsityönä, palvelimet on ajettava alas siirtoa varten. Virtualisoidussa tallennusympäristössä huollot ja migraatiot voidaan tehdä taustatoimintona ajamatta palvelimia alas. Silti siirtoja ei pidä ajoittaa tuotantojärjestelmän raskaimman kuormituksen aikaan.
Tallennusvirtualisoinnilla pyritään usein parantamaan eri valmistajien järjestelmien välistä yhteistyötä, ja tähän tarkoitukseen on tietysti tarjolla kolmansien osapuolten ohjelmistoja. Myös tallennusjärjestelmien valmistajat kauppaavat virtualisointiratkaisuja, jotka pystyvät paitsi nivomaan peräkkäiset laitesukupolvet yhteen, myös laajentamaan valmistajan omia toiminnallisuuksia kilpailijoiden laitteisiin.
Yrityksen tallennustarpeet riippuvat liiketoiminnasta. Rahalaitos voi auditoitavuus- ja viranomaismääräysten takia joutua tallentamaan jokaisesta tapahtumasta lokeihinsa vuosikausiksi oheistietoa, jonka määrä on moninkertainen operatiivisiin tietokantoihin verrattuna ja jota ei välttämättä tarvitse koskaan lukea. Toisen ääripään muodostavat mediatalot, joiden liiketoiminta on sitä menestyksellisempää, mitä useampaan kertaan niiden tuottamat tiedot luetaan.
Oikea tapa lähestyä tallennuksen virtualisointia onkin tarkastella esiin tulevia ongelmia ja tarpeita liiketoimintalähtöisesti. Tallennusjärjestelmien ja virtualisointiratkaisujen toimittajia on markkinoilla kymmeniä, mutta täsmälleen samoja asioita samalla tavalla tekevät tuotteet ovat harvassa. Yleisesti hyvää, kaikille optimaalista järjestelmää on tuskin kehitetty.
Punnitse vaihtoehdot
Täysimittainen tallennusvirtualisointi ei ole aivan halpaa puuhaa. Erityyppisten ja -merkkisten järjestelmien välille saadaan kyllä hankittua ohjelmistoja, jotka peittävät niiden väliset erot ja antavat tallennussuunnittelijalle vapaat kädet sijoitella datan kulloinkin tarkoituksenmukaiselle laitteelle. Jokainen viiva, joka kulkee myyjän kalvolla tallennusjärjestelmästä toiseen, maksaa kuitenkin selvää rahaa.
Virtualisointi antaa vaihtoehtoja toiminnan jatkuvuutta suunniteltaessa. Uutta järjestelmää hankittaessa kannattaa pohtia, korvaako se vanhan kertaheitolla vai pitemmän migraatiovaiheen jälkeen, vai jätetäänkö vanha toimimaan rinnalle laajennuksena. Excelille löytyy runsaasti käyttöä eri vaihtoehtojen kustannustehokkuutta arvioitaessa.
Hinnoittelu vaihtelee toimittajittain ja järjestelmittäin. Usein lisenssihinnat riippuvat tallennettavan datan tai kapasiteetin määrästä, mutta halvalla ei pääse pienikään asiakas. Hitachi Data Systemsin tallennusarkkitehti Ari Heiniö arvioikin, että tallennuksen virtualisoinnista hyötyvien organisaatioiden määrä Suomessa on useita satoja.
Vaihtoehtoja raskaille ratkaisuille
Varteenotettava vaihtoehto on hankkia esimerkiksi migraatio palveluna. Jos järjestelmiä ei ajeta rinnakkain pitempään kuin on tarpeellista, virtualisointiohjelman lisenssit tarvitaan vain rinnakkaiselon ajaksi.
Toinen vaihtoehto on käyttää palvelinvirtualisoinnin apuvälineitä. Virtualisointi eristää palvelimen käyttöjärjestelmän laitteistosta piilottamalla laitekohtaiset ajurit virtualisoitujen rajapintojen taakse. Tämä pätee myös massamuistiliitäntöihin, ja palvelimelle on yksi ja sama, ovatko levyt paikallisia vai tallennusverkon takaisia. Virtualisointiohjelmien valmistajat tekevätkin läheistä yhteistyötä tallennusjärjestelmävalmistajien kanssa, ja ohjelmistorajapinnat ovat julkisessa jaossa.
Esimerkiksi Vmware on määritellyt oman ryvästetyn tiedostojärjestelmän, joka muodostaa perustan erilaisille varmistus- ja toipumisohjelmistoille. Vmware tarjoaa myös ohjelmistoa nimeltä Storage Vmotion. Siinä missä yhtiön tavallinen Vmotion siirtää käytössä olevan virtuaalikoneen lennossa palvelimelta toiselle, Storage Vmotion tekee vastaavan operaation palvelimen käyttämille datoille.
Ratkaisu on monella tapaa etevä ja mahdollistaa palvelimen datojen siirtämisen palvelimen ollessa käytössä katkaisematta käyttäjäistuntoja. Se osaa esimerkiksi siirtää tiedot kertaalleen etukäteen ja tuoda varsinaisen siirron aikana muuttuneet datalohkot jälkitoimituksena perille siirron jälkeen. Storage Vmotion voikin riittää pienehkön ympäristön migraatioratkaisuksi hyvin.
Jos kaikkia palvelimia ei ole virtualisoitu, tai siirrettävänä on esimerkiksi tietokantoja, joita käyttää usea palvelin jatkuvasti rinnakkain, tallennusvirtualisointi hoitaa kaikki samalla kertaa. Myös jos tarve erilaisten tallennusjärjestelmien rinnakkaiselolle on pitkäaikainen, tallennusvirtualisointi on todennäköisesti joustavin ratkaisu.
Virtuaalisuutta eri tasoilla
Tallennuksessa käytetään monia virtualisoinnilta haiskahtavia tekniikoita, joita voidaan hyödyntää jo yksittäisen tallennusjärjestelmän puitteissa. Jos tallennus on virtualisoitu, järjestelmän pääkäyttäjälle tarjoutuu lisää mahdollisuuksia ohjata resurssien käyttöä järkevimmällä tavalla.
Esimerkiksi virtuaalinen nauhakirjasto ohjaa varmistukset fyysisen nauhan sijasta levytiedostoiksi, joista arkistoitavat kopiot voidaan purkaa nauhalle määritellyn nauhakierron mukaisesti.
Levytilan ylivaraus (thin provisioning) perustuu havaintoon, että käyttäjille ja palvelimille varatut levytilat nojaavat enemmän tai vähemmän huonosti osuviin arvauksiin. Kun varaukset tehdään virtuaalisina, vapaata tilaa voidaan käsitellä yhtenäisenä levytilavarastona, josta allokoidaan tilaa tarpeen mukaan.
Tiedon kertatallennus (single-instance storage) eli deduplikointi puolestaan pyrkii minimoimaan massamuistihukan, joka aiheutuu saman tiedon tallennuksesta useaan kertaan.
Liitteiden kopiointi sähköpostin k-jakeluista käyttäjähakemistoihin räjäyttää levytilan tarpeen moninkertaiseksi. Kertatallennus ratkaisee pulman käyttäjille näkymättömissä säilyttämällä tiedosta vain yhtä kopiota, vaikka käyttäjät luulevat näkemiään virtuaalitiedostoja omikseen.
Kertatallennus voi toimia objektitasolla, jolloin tiedostojärjestelmälle näytetään tiedoston otsaketiedot ja osoitin varsinaiseen tiedoston tallennuspaikkaan. Toisaalta kertatallennus voi toimia myös laitteistoläheisemmällä lohkotasolla, jolloin tallennusjärjestelmä tallentaa identtiset lohkot vain kertaalleen.
Jälkimmäinen tapa on käytännössä tehokkaampi, koska erilaisissa ja erinimisissä tiedostoissa on usein yllättävän paljon samaa sisältöä. Varsinkin varmistusjärjestelmissä käytetään paljon deduplikointitekniikoita.
10 teratavun levyt
Tieteen tietotekniikan keskus CSC on Suomen tietointensiivisimpiä yrityksiä. 170 asiantuntijan organisaatiolla on kaitsettavanaan enemmän tietoa kuin monella paljon isommalla yrityksellä. Merkittävä laajennus yhtiön tallennuskapasiteettiin tehtiin viime vuonna, kun Fysiikan tutkimuslaitos tilasi kapasiteettia Cernin LHC-hiukkastörmäyttimen tuottaman tutkimusdatan tallentamiseen.
Kehityspäällikkö Ari Lukkarinen kertoo, että tällä hetkellä järjestelmän 160 teratavun kokonaiskapasiteetista on jo 120 teratavua käytössä. Aiemmissa levyjärjestelmissä ollut kahden teratavun maksimikoko loogiselle levylle poistui vasta vuodenvaihteen tienoilla markkinoille tulleista uusista levyjärjestelmistä.
Tällaisten datamäärien hallinta näin pieninä yksiköinä on käytännössä hankalaa, selvittää Lukkarinen. Käyttöjärjestelmät eivät pysty osoittamaan yletöntä määrää loogisia levyjä, satojen levypolkujen hallinta luisuu käsistä ja tietokoneen vikaannuttua sen hallitsemien loogisten levyjen siirtäminen uudelle koneelle on sitä työläämpää, mitä enemmän niitä on.
CSC hankkikin Hitachilta USP-VM-järjestelmän virtualisoimaan saman valmistajan kaksi AMS-1000-levyjärjestelmää. USP-VM kokoaa levyjärjestelmien tarjoamat kahden teratavun loogiset levyt isommiksi kymmenen teratavun levyiksi, jotka näytetään järjestelmän palvelimille. Tiedot tarjoaa käyttäjille kahdeksan HP Proliant 460c -blade-palvelinta, joissa ajetaan Scientific Linux -distribuutiota, kuvaa Lukkarinen Dcache-palvelun teknistä rakennetta.
Palvelimien ja levyjärjestelmien kannalta palvelu on toteutettu neljä gigabittiä sekunnissa siirtävillä kuituverkkoyhteyksillä, ja jokaisesta palvelimesta vie kaksi polkua massamuisteihin. Toinen merkittävä etu virtualisoinnista olikin, että USP-VM tukee aktiivi-aktiivi-yhteyksiä, joita unix- ja Linux-järjestelmät tukevat luonnostaan. Hiukan vanhemmat AMS-1000-järjestelmät – CSC:n muista levyjärjestelmistä puhumattakaan – tukevat vasta aktiivi-passiivi-yhteyksiä, jotka ovat Lukkarisen mukaan hallinnan kannalta huomattavasti hankalampia.
USP-VM tarjoaa myös valmistajariippumattoman rajapinnan massamuistijärjestelmiin, ja CSC:llä on tarkoituksena liittää myös vanhempia muiden valmistajien levyjärjestelmiä virtualisointiratkaisuun. Valmistajien omat monipolkuratkaisut ovat osoittautuneet ongelmallisiksi eri Linux-jakelujen ja kernel-päivitysten kanssa, kertoo Lukkarinen ja painottaa käyttöjärjestelmien natiivien monipolkutoteutusten helpottavan ylläpitoa merkittävästi.








