Windows Server Virtualization nyt saatavilla koeajoon

Windows Server 2008 RC0 on nyt ladattavissa verkosta ja sen myötä nyt mahdollista päästä itse kokeilemaan uutta virtualisointiteknologiaa, joka aiemmin tunnettiin koodinimellä Viridian, nyttemmin virallisemmin nimellä Windows Server Virtualization.

Microsoftin nykyisien virtualisointiteknologioiden rungon muodostaa Virtual Server 2005 ja samaa perusteknologiaa hyödyntävä Virtual PC, jotka ovat molemmat ladattavissa verkosta ilmaiseksi. Molemmat näistä perustuvat emuloituun virtuaalikoneeseen ja mahdollistavat kymmenien erilaisien käyttöjärjestelmien ajamisen virtuaalikoneissa. Molemmista on tarjolla myös 64 bittiset versiot, jotka osaavat hyödyntää 64 bittisien käyttöjärjestelmien laajaa muistiavaruutta, mutta virtuaalikoneita nämä tukevat ainoastaan 32 bittisinä, yhdellä suorittimella varustettuna ja reilun 3 GB muistiavaruudella.

Virtuaalikoneiden hallintaan on tarjolla System Center Virtual Machine Manager 2007 –ohjelmisto (VMM), jonka avulla voidaan keskitetysti hallita useita virtuaalipalvelimia ja niissä pyöriviä kymmeniä tai satoja virtuaalikoneita. VMM:n avulla virtuaalikoneita voidaan automaattisesti siirtää palvelimelta toiselle, lisäksi VMM tukee fyysisien palvelimen muuntamista virtuaalisiksi (P2V) sekä muunnosta muista virtuaalikoneformaateista Virtual Serveriin (V2V). Tällä hetkellä VMM tukee uusinta tuotantoversiota, eli Virtual Server 2005:sta, mutta tulee tukemaan myös Windows Server Virtualization –palvelua.

Käyttöjärjestelmien virtualisoinnin lisäksi Microsoft tarjoaa ratkaisuja sovellusten ja käyttöliittymän virtualisointiin. Sovellusten virtualisoinnissa (Softgrid) sovellus paketoidaan latauspaketiksi, joka sovellusta käynnistettäessä ladataan työaseman välimuistiin ja suoritetaan työasemassa olevassa hiekkalaatikossa, joka erottaa sen muista työaseman ohjelmistoista. Sovelluskuvia ja sovelluksia hallitaan keskitetysti. Käyttöliittymän virtualisoinnissa työpöytä ja sovellukset suoritetaan palvelimella ja kuva siirretään työasemaan. Windows Server 2008:n myötä voidaan myös virtualisoida yksittäiset sovellukset näkymään työasemiin tai selaimeen, kuten ne olisivat paikallisesti asennettuja sovelluksia.

Nykyinen tarjonta mahdollistaa näin ollen varsin monipuoliset mahdollisuudet sekä käyttöjärjestelmien ja sovellusten virtualisointiin, mutta siinä on myös omat rajoituksensa, joiden poistamiseksi on kehitetty Windows Server Virtualization. Ilmeisimmät näistä ovat tuen puuttuminen 64 bittisille virtuaalikoneille, vain yhden suorittimen tuki virtuaalikonetta kohden, sekä laitteiden virtualisoinnista johtuvat suorituskykyrajoitteet.

Windows Server Virtualization

Windows Server 2008 RC0:n mukana tulevan Windows Server Virtualizationin (WSV) esiversion myötä on nyt mahdollista tutustua siihen millä tavoin näitä rajoitteita on uudessa virtualisoinnissa poistettu.

Windows Virtualization Architecture

Ensimmäinen ero aiempaan toteutukseen on WSV:n käyttämä Hypervisor –tekniikka. Hypervisor on pienikokoinen välikerros, jonka avulla alla olevaa todellista laitteistoa voidaan nopeasti ja tehokkaasti vaihtaa kerroksen päällä toimivien käyttöjärjestelmien välillä. Näin ollen entistä ”Parent” käyttöjärjestelmää ei enää entisessä merkityksessä ole, vaan kaikki koneen käyttöjärjestelmät ovat nyt virtualisoituja ja käyttävät tehokkaasti ohuen välikerroksen alla olevaa laitteistoa.

Kokonaan ”Parent” –roolista ei kuitenkaan ole luovuttu, vaan ensimmäinen asennettu käyttöjärjestelmä saa roolin osiona, joka voi ohjata muiden osioiden toimintaa ja tarjota niille palveluita. Tässä osiossa ajetaan VM Serviceä, jonka kautta ohjataan virtualisoinnin toimintaa ja tällä palvelulla on myös WMI Provider –rajapinta, jonka kautta palvelua käytetään paikallisesti tai etänä. Samassa osiossa ovat myös tarvittavat virtualisoinnin käyttöliittymäkomponentit (komentorivi Core -asennukseen tai graafinen).

Toinen keskeinen ero on laitteiden kutsutavassa. Aiemmin Child –osion käyttöjärjestelmä kutsui ensin ohjelmistolla toteutettua ”synteettistä” laiteohjainta, josta kutsu välitettiin Parent –osion todelliselle laiteohjaimelle joka kutsui rautaa, mikä on varsin hidas prosessi ja rajoittaa suoritustehoa.

Uudessa toteutuksessa on mahdollista kytkeä Parent -osion laiteohjain näkymään Virtual Service Providerin (VSP) VMBus:in ja Clientin (VSC) kautta näkymään suoraan toisessa osiossa. Näin voidaan haluttaessa ohittaa kokonaan yksi virtualisoinnin nopeutta hidastanut kerros. Emulaatiovaihtoehdon etuna on hyvän siirrettävyys mutta haittapuolena heikompi suorituskyky. Uuden toteutustavan avulla voidaan valita paremman suorituskyvyn ja laajemman siirrettävyyden välillä.

Uutta väylätekniikkaa kutsutaan nimellä ”OS Enlightment”. ”Valaistut” käyttöjärjestelmät havaitsevat ja osaavat käyttää VMBus -laitteita. Teknologia on samankaltainen kuin Xen:in käyttämä para-virtualisointi ja Microsoft tekee yhteistyötä Zensourcen kanssa, jotta myös Linuxiin saadaan tarvittavat suorituskykyä parantavat laiteohjaimet ja osana tätä on avoimesti määritelty Hypercall rajapinta, johon voidaan liittyä. Microsoftin palvelinkäyttöjärjestelmistä tuettuina ovat Windows Server 2003 ja 2008. Emulaation kautta voidaan käyttää entiseen tapaan kaikkia aiemmin tuettuja käyttöjärjestelmiä, vaikka ne eivät tukisikaan uutta ”Enlightmenttiä”.

Ohut hypervisor –kerros ja uusi tapa käyttää laiteohjaimia tarjoavat merkittävän suorituskyvyn parannuksen virtualisoinnille. Eräs tehokkaan virtuaalipalvelimen rakentamista helpottaa myös se että virtualisointi on eräs Windows Server 2008 Core –rooleista. Windows Server Core on minimaaliseksi karsittu käyttöjärjestelmäasennus josta on karsittu kaikki tarpeeton pois, jota roolin suorittamisessa tarvita. Coressa ei ole graafista käyttöliittymää, selainta eikä muitakaan tarpeettomia osia ja käyttöliittymänä toimii komentotulkki, Palvelinta on kuitenkin mahdollista hallita ja valvoa etänä sekä komentorivipohjaisesti, remote desktopilla tai graafisilla MMC hallintavälineillä aivan kuin ”täyttä” palvelinta, mikäli näin halutaan tehdä.

Virtualisoinnin kannalta on edullista että Core –roolin avulla voidaan luoda pieni ja turvallinen (kaikki tarpeeton karsittu) Parent –osio, joka kuluttaa vähän muistia ja resursseja ja näin palvelimen kapasiteetti saadaan aiempaa tehokkaammin siinä ajettavien virtuaalikoneiden käyttöön.

Rautaa ja bittejä

Mitä sitten tällainen Windows Server Virtualization vaatii laitteistolta? WSV tukee ainoastaan 64 –bittisiä suorittimia. Syy tähän on 64 bittisien suorittimien (Intel x64, AMD) tukemat suoritintason virtualisointiominaisuudet, joiden avulla voidaan toteuttaa mahdollisimman tehokas virtualisointi. Samalla poistuvat 32 bittisen muistiavaruuden rajoitukset. Palvelimia on viime vuodet toimitettu lähes ainoastaan 64 –bittisillä suorittimilla ja näitä Core Duo –suorittimia löytyy nyt myös laajalti työasemista ja kannettavista.

WSV tukee sekä 32 että 64 bittisiä virtuaalikoneita, laajaa muistiavaruutta ja useampaa suoritinta virtuaalikonetta kohden. Keskeisimmät ominaisuuksien erot nykyisen Virtual Server 2005:n ja Windows Server Virtualizationin välillä (RC0) on esitetty alla olevassa kuvassa:

Visual Server 2005 vs. WSv

Aiempaa paremman suoritustehon ja 64 bittisyyden myötä ehkä merkittävin ero on 3,6 GB muistirajoituksen poistuminen virtuaalikoneista, mikä mahdollistaa aiempaa järeämpien virtuaalipalvelimien toteuttamisen. Osaltaan tätä tukee myös useamman kuin yhden suorittimen osoittaminen yhdelle virtuaalikoneelle.

On todennäköistä että Windows Server Virtualization tulee varsin nopeasti korvaamaan nykyisen Virtual Server:in. Tätä osaltaan tukee se että olemassa olevat VHD –virtuaalilevyt voidaan siirtää helposti siirtää ympäristöstä toiseen.

Ja ei kun koeajamaan

Näinpä sitten allekirjoittanutkin päätti laittaa bitit testiin ja imuroin Windows Server 2008 RC0:n osoitteesta https://technet.microsoft.com/en-us/bb687945.aspx. Kannattaa muistaa ladata 64 -bittinen versio käyttöjärjestelmästä. Asennusalustaksi valitsin Fujitsu-Siemens Si1848 –koneen, joka on tavallinen perustason kuluttajakannettava Core2 Duo suorittimella ja 2 GB muistilla. Laite ei ole sertifioitu tuotantokäyttöön, mutta täyttää täysin virtualisoinnin tekniset määritykset.

Käyttöjärjestelmän asennus meni ongelmitta läpi ja samalla tuli todettua että uusi asennuksen toteutus on ylläpitäjän kannalta todella vaivaton. Alussa vastataan vain muutamaan kysymykseen, kuten mikä versio halutaan asentaa, asennusavain ja kieli, jonka jälkeen asennus menee pysähtymättä läpi loppuun saakka, jonka jälkeen kerralla konfiguroidaan tarvittavat asetukset Initial Configuration Toolilla. Enää ei käyttöjärjestelmän asentajan tarvitse kytätä ruutua silmä kovana milloin asennus sattuu seuraavan kerran kysymään jotain.

Virtualisointi on yksi Windows Server 2008 palvelimen rooleista, joten seuraavaksi hiiren tie vei kohti työkalun kohtaa Add Roles, mutta kuinka ollakaan, sieltä ei löydykään Virtualisointiroolia. Jotta rooli saadaan näkyviin, tulee ajaa kaksi asennustiedostoa alla olevan kuvan mukaisesta hakemistosta ja käynnistää palvelin uudelleen.

WSv

Toinen näistä sisältää hallintatyökalut ja toinen hypervisorin. Jälkimmäisestä asennuspaketista näkee miten kompakti toteutus hypervisor on. Palvelimen uudelleenkäynnistys on tässä tapauksessa välttämätön, koska uudelleenkäynnistyksessä laitetaan asennettu hypervisor raudan päälle ja nostetaan aluksi asennettu käyttöjärjestelmä sen päälle. Tämä on myös syy siihen miksi rooli ei ole oletuksena näkyvissä, koska virtualisointi on aiemmassa esiversiovaiheessa kuin muu käyttöjärjestelmä, joten sen ei haluta vaikuttavan RC0:n evaluointiin niissä tapauksissa joissa virtualisointia ei haluta testata.

Uudelleenkäynnistyksen jälkeen Virtualisointi löytyy rooliluettelosta ja sitä käyttöön otettaessa kysytään ainoastaan ne verkkosovittimet, joiden halutaan olevan tarjolla virtuaalikoneille. Tämän jälkeen käynnistetään palvelin uudelleen ja asennus jatkuu automaattisesti loppuun sisäänkirjatumisen jälkeen. Virtualisointi on valmiina koeajoon!

Virtualisointi löytyy asennuksen jälkeen Server Managerista, josta pääsee virtualisoinnin MMC 3.0 hallintakäyttöliittymään. Sitten ei muuta kuin asentamaan 64 bittisiä käyttöjärjestelmiä useilla suorittimilla ja niin paljolla muistilla kuin koneesta löytyy, käyttämään esim snapshot –toiminnallisuutta ja testaamaan uusittua virtuaalikoneiden etäkäyttökonsolia.

Enlighmentin saa käyttöön virtuaalikoneeseen valitsemalla etäkäyttökonsolista ”Action – Insert Integration Services Setup Disk” ja asentamalla laajennukset D: -levyltä (Core), täydessä versiossa asennus lähtee autorun.inf:illä. Asennuksen jälkeen virtuaalikoneen laitehallinta näyttää tältä:

Server Management

Pienen puuhastelun jälkeen näyttää Si1848:n näytöllä tällaiselta:

Näyttö

Vasemmalla ylhäällä pyörii Windows Server 2008 x86, jolle on annettu kaksi suoritinta. Oikealla on käynnissä 2008 Server core ja alla hallintakonsoli. VMBus –laitteiden käyttöönoton jälkeen jo tämän esiversion nopeus osoittautui varsin positiiviseksi kokemukseksi, jota lähinnä rajoitti kannettavan tietokoneen kiintolevyn nopeus. Jos vain nurkista löytyy sopiva kone ja muutama tunti aikaa, niin kannattaa kokeilla miltä uusi virtualisointi tuntuu käytännössä.

Terkuin, Janne Pohjala