Spennende og kostnadseffektivt med virtualisering (del 2)

Ulike virtualiseringsvariasjoner

Det finnes mange forskjellige virtualiseringsvarienter. Vi har dessverre ikke muligheten for å gå inn på alle disse, men vil konsentrere oss om et lite utvalg som regnes blant de mest kjente i dagens sammenheng.

Jail
Den enkleste formen for virtualisering er nok kanskje et "jail". Dette skapes ved å bruke chroot (ihvertfall på FreeBSD) og gjør at brukeren kan logge inn i sitt eget shell og installere egne applikasjoner på sitt eget område - logisk separert fra de andre brukerne (eksempelvis / for brukeren per er egentlig /home/virtual/per for root-brukeren).

Jail er svært utbredt i hostingbransjen når man ønsker å skille applikasjoner fra hverandre for å øke sikkerheten på systemet. Et godt eksempel på dette er når man kjører MySQL kjører i sitt eget lille jail slik at eventuelle sikkerhetshull i applikasjonen ikke kan utnyttes til å modifisere det som ligger utenfor jail-området.

Det er viktig å forstå at jail bare er en måte å isolere forskjellige applikasjoner/brukere/interface på ett enkelt operativsystem. Alle jail kjører dermed på én OS-kjerne.

Inne i jail-området kan man sette opp sin egen sikkerhetspolitikk så lenge denne ligger på applikasjonsnivå og i selve operativsystemet.

Du kan lese mer om jail og chroot i manualen til FreeBSD.

Solaris Containers
Container-teknikken til Sun Microsystems kan på mange måter sammenlignes med jail i FreeBSD, men er modifisert noe for ekstra funksjonalitet og administrasjonsmuligheter.

På samme måte som jail kjører denne virtualiseringsteknikken på én enkelt instans av operativsystemet. Man er dermed begrenset til å kjøre applikasjoner som støttes av det operativsystemet som ligger i bunn.

En Container kan tildeles egen IP-adresse, nettverksgrensesnitt og minneressurser.

Mer informasjon om Solaris Containers kan du finne på Sun Microsystems nettsider.

Java Virtual Machine
Det definitivt beste eksempelet på en virtuell maskin finner vi hos Sun Microsystems. De fleste har på en eller annen måte benyttet Java. Denne plattformen kjører både på det meste av maskinvare fra servere til mobiltelefoner.

Java Virtual Machine kan defineres som en abstrakt maskin som eksekverer Java-kode. Selve JVM-modulen er plattformspesifikk, mens Java kan kjøre uavhengig av operativsystem så lenge JVM kan installeres.

JVM kjører på blant annet BSD, Linux, Mac OS, Solaris, Unix og Windows.

Sun lanserte Java-rammeverket i 1995 og Java har vokst til å bli en markedsledende standard for plattformuavhengige applikasjoner.

Dersom du ønsker å lese mer om Java og JVM kan du gjøre dette hos Sun Microsystems.

Emulering på applikasjonsnivå
Wine benytter emulering av API for å kjøre Windows-applikasjoner på ulike Linux-distribusjoner, BSD og Solaris. I praksis betyr dette dermed at du kan kjøre Microsoft Office 2003 under KDE på en installasjon av Fedora.

Wine er et open-source-prosjekt, men det finnes et par leverandører som har prøvd å lage kommersielle produkter basert på Wine. Et av disse er Crossover Office fra Codeweavers.

Det finnes også lignende prinsipper mellom Linux og Unix som tillater en herlig miks av applikasjoner.

Enkelte vil nok kanskje påstå at Wine ikke har noe med virtualisering å gjøre, men emulering benytter faktisk mange lignende prinsipper for å oversette systemkall.

Vanligvis er det bare et visst antall applikasjoner som støttes av Wine og andre emuleringsmaskiner. Man er dermed noe mer begrenset enn det man vil være med "fullblods" virtualisering.

Mer om Wine finner du på http://www.winehq.com/

User-Mode Linux
User-Mode Linux brukes gjerne til å kjøre mindre kritiske testmiljøer på Linux, men benyttes også av noen hosting-leverandører med tilsynelatende suksess.

Den virtuelle maskinens filsystem lagres i én enkelt stor fil på host-operativsystemet.

UML (ikke forveksle med Unified Modelling Language) har en hærskare av brukere, men er spesielt populær i mer tekniske miljøer og hos utdanningsinstitusjoner.

Offisielle nettsider med "community" og mulighet for nedlasting finnes på http://user-mode-linux.sourceforge.net/

SWsoft Virtuozzo

SWsoft har laget et kommersielt produkt i form av Virtuozzo som gjør at man kan virtualisere på enten Linux- eller Windows-plattform. Alle virtuelle systemer aksesserer subsystemet i host OS, noe som gjør at man får mindre "overhead" enn mange andre virtualiseringsløsninger.

Systemet benyttes gjerne i forbindelse med webhosting og gir en kostnadseffektiv virtualisering med kommersiell støtte i ryggen.

I kontrollpanelet har man funksjonalitet for å styre mye av systemressursene på lavnivå slik at man kan skreddersy en ytelsesprofil til hvert enkelt "guest-OS".

Det er viktig å få med seg at man trenger spesielle versjoner av operativsystemene for å kunne kjøre på virtualiseringsplattformen. Dette kjøpes fra leverandøren til en relativt grei pris.

Mer informasjon finnes hos SWsoft.

Xen

Xen kan på mange måter sammenlignes med Virtuozzo ved at "guest-OS" må modifiseres for å kunne kjøre på virtualiseringsplattformen.

Fordelen med denne typen virtualisering er at integrasjonen mellom "guest-OS" og "host-OS" blir svært tett - noe som tillater høy ytelse. Ulempen er at man trenger spesielle versjoner og ikke har like stor frihet med tanke på kjernekompilering som man vil ha på en fullstendig uavhengig virtualiseringsplattform som eksempelvis VMware.

Xen er open-source og kommer til å bli integrert som standard i stadig flere av de nyeste Linux-distribusjonene.

Du kan lese mer på Xensource.com.

Microsoft Virtual PC

I begynnelsen av 2003 kjøpte Microsoft opp Connectix. Dette selskapet hadde en virtualiseringsteknologi som Microsoft etterhvert lanserte som sin egen under Virtual PC.

Microsoft Virtual PC gir fullstendig virtualisering ved at det ikke deles noen applikasjonskomponenter mellom de ulike operativsystemene. Man kan i praksis dermed kjøre både Linux , BSD og eldre Windows-versjoner med Windows XP i bunn.

Det finnes også en serverversjon som heter Microsoft Virtual Server.

Mer om Microsofts virtualiseringsprodukt finner du her: http://www.microsoft.com/windows/virtualpc/

VMware

VMware blir gjerne betraktet som selve industristandarden for fullstendig virtualisering. Platformen har modnet gjennom flere år og inneholder avansert funksjonalitet for migrering og flytting av data uten at man opplever nedetid.

Dette er en fullstendig virtualiseringsplattform der man kan kjøre forskjellge typer OS på et host-OS - i motsetning til Virtuozzo der man må kjøre Linux på Linux (eller Windows på Windows).

VMware er spesielt utbredt i testmiljøer hos applikasjonsutviklere som ønsker å testkjøre applikasjonene på flere operativsystemer.

Det finnes flere forskjellige varianter av VMware. Oversikt finner du her: VMware products.

IBM LPAR, HP VPAR

Både IBM og HP har sine egne løsninger for virtualisering der man har bygget inn direkte støtte i maskinvaren.

Disse leverandørenes platformer passer typisk for profesjonell bruk og har avanserte finesser som ingen andre kan vise til med tradisjonelt softwareprinsipp.

Spesialsydd maskinvare gjør naturligvis sitt til at systemet fordyres noe, men er absolutt verdt å vurdere for bedrifter der man kjører mer virksomhetskriske tjenester i et virtualiseringsrammeverk.

Du kan lese mer om IBMs versjon i disse artiklene:

IBM Power mot Itanium, Xeon og AMD64 (del 1)
IBM Power mot Itanium, Xeon og AMD64 (del 2)

Kommentarer (0)

Norges beste mobilabonnement

Mars 2017

Kåret av Tek-redaksjonen

Jeg bruker lite data:

Komplett MiniFlex 1GB


Jeg bruker middels mye data:

Telio FriBruk 5GB+EU


Jeg bruker mye data:

Komplett MaxiFlex 10GB


Jeg er superbruker:

Komplett MegaFlex 30GB


Finn billigste abonnement i vår mobilkalkulator

Forsiden akkurat nå

Til toppen