Virtuelle maskiner
Hyper-V er Microsofts programvare for å kunne kjøre flere servere eller klienter på én fysisk maskin. Når vi kjører flere datamaskiner på én fysisk maskin, kaller vi det gjerne for virtualisering. De ekstra maskinene er virtuelle fordi de eksisterer bare i form av programvare på en vertsmaskin, men for brukerne av maskinene oppleves de som en normal datamaskin.
Vi kaller gjerne den fysiske maskinen for host og de virtuelle for guests.
Fordeler med virtuelle maskiner
Det er flere fordeler med å bruke virtuelle maskiner:
- Vi utnytter maskinvaren bedre. Mange datamaskiner går mye på tomgang, så ved å samle flere maskiner på en fysisk boks utnytter vi prosessorkraften og minnet bedre.
- Når vi bruker færre fysiske maskiner, sparer vi penger på innkjøp av utstyr.
- Færre maskiner betyr også at vi sparer lommeboka og miljøet ved å bruke mindre strøm.
- Enklere å administrere.
- Mange ting som blir enklere med virtualisering:
- Hvis vi trenger ett nytt OS (operativsystem), kan vi lage en på noen minutter, istedenfor å koble opp en fysisk maskin.
- Vi kan kopiere en virtuell maskin og bruke den som utgangspunkt for en ny.
- Forskjellige operativsystemer:
- Selv om vertsmaskinen vår kjører Windows Server 2016, kan vi kjøre nesten hvilket som helst operativsystem vi ønsker på de virtuelle.
- Vi kan f.eks. installere Windows Server 2008 eller Windows 10 og Windows 7. Vitrualiseringsprogram har også bred støtte for andre typer OS som Linux og CentOS enkelt kan også legges inn.
Maskinkrav
For å kunne bruke Hyper-V må maskinen vi skal bruke, ha en prosessor som har støtte for virtualisering. De fleste nyere prosessorer har denne støtten, men i noen maskiner må denne funksjonen slås på i BIOS oppsettet.
Ellers er det en fordel med kraftig maskinvare. Ved å bruke en maskin med flere CPU kjerner og mye RAM kan vi kjøre mange virtuelle maskiner på en boks. Hvis vi kjører virtuelle maskiner med normal CPU belastning (lav til middels), er det gjerne størrelsen på minnet som setter grensen for antall virtuelle maskiner. Flere harddisker og nettverkskort kan også være aktuelt for å kunne fordele belastningen.
Installasjon av Hyper-V
Konfigurering av Virtual Networks
- Legg til rollen Hyper-V.
- Hvis vi får advarsel om at virtualisering må skrus på i Bios, må vi stoppe serveren slik at vi kan gå inn i Bios oppsettet
- Innstillingene i Bios kan se forskjellig ut fra PC til PC, men dette aktiveres som regel i CPU modulen
- Konfigurer Virtual Switches. Har vi bare ett nettverkskort, kan vi krysse av for dette slik at vi deler det med den fysiske maskinen. Ellers er det vanlig å bruke flere nettverkskort for å kunne fordele nettverkstrafikken.
- På spørsmål om Migration så kan vi hoppe over dette nå. Migrering av maskiner krever minst to fysiske Windows servere, så vi får ikke brukt dette nå.
- Default store brukes til å lagre de virtuelle maskinene. Disse kan kreve en del plass, så vi bør passe på at disken er stor nok.
- Fullfør veiledningen for å legge til Hyper-V rollen. Gå så til Hyper-V Manager.
Lage en virtuell maskin
Lage en virtuell maskin:
- Start Hyper-V Manager.
- Høyreklikk på Server1 og velg New Virtual Machine.
- Vi kan velge en annen folder for å lagre den virtuelle maskinen. Trykk på Finish for standardverdier eller Next for å konfigurere manuelt. Vi velger Next nå.
- Vi kan velge Generation 2.
- Under Memory velger vi størrelse på minnet for den virtuelle maskinen, f.eks. 2048 MB (2GB).
- Velg så det virtuelle nettverket vi definerte tidligere.
Nå må vi lage en virtuell harddisk og velge hvor den skal plasseres. En virtuell harddisk er bare en fil på vår vertsmaskin. En slik fil vil vokse etter som vi bruker den virtuelle disken. Selv om vi setter at størrelsen på disken skal være 127 GB, vil ikke filen bli større enn summen av innholdet av den virtuelle disken. Vi kaller gjerne dette en tynn disk eller Dynamically expanding disk.
- Under Install Options kan vi velge hvordan vi vil installere et operativsystem på vår nye virtuelle maskin. Vi kan installere fra en fysisk DVD plate i vertsmaskinen, fra en .ISO fil eller fra nettverket.
- Vi velger å installere operativsystem senere.
Nå har vi en ferdig definert virtuell maskin med en blank harddisk. Vi kan godt prøve å starte den, men vi vil bare få beskjed om at maskinen ikke kan starte. Før vi kan ta i bruk maskinen, må vi installere et operativsystem på den, som f.eks. Linux, Windows Server eller Windows 10.
Installere operativsystem
Når vi jobber med virtuelle maskiner, er det veldig greit å ha .ISO filer (imagefiler av CDer og DVDer) som vi kan boote fra. Hvis vi tidligere har lastet ned demoversjon av Windows Server 2016, har vi allerede en .ISO fil vi kan kopiere inn på serveren vår (vertsmaskinen). Hvis vi har en DVD plate med Windows 2016, kan vi laste ned et verktøy, f.eks. ISO Recorder, som kan lage en .ISO fil fra DVDen.
Boote fra en .ISO fil
- Klikk på den virtuelle maskinen vi har laget, og gå på innstillinger. Her kan vi endre de fleste innstillingene som størrelse på minne o.l.
- Gå til SCSI Controller. Hvis vi ikke har noen DVD Drive her, kan vi legge til en ved å velge Add.
- Gå til DVD, kryss av for image og finn fram til ISO filen for Windows 2012.
- Nå kan vi dobbeltklikke på vår virtuelle maskin for å få opp skjermen på maskinen.
- Trykk på strømbryteren for å starte maskinen fig ikon. Nå skal maskinen boote fra .ISO filen.
- Vi kan nå installere en ekstra Windows Server 2016 maskin på samme måte som vi gjorde tidligere.
Når vi kjører en virtuell maskin i et vindu, er det noen funksjoner som er viktige. For å kunne logge inn på en Windows server må vi normalt trykke på Alt+Ctrl+Del. For å få til dette på en virtuell maskin kan vi enten trykke på knappen med tre taster eller på Ctrl+Alt+End.
Vi har følgende knapper på toolbaren:
- Ctrl+Alt+Del: Gjør det mulig å logge inn på den virtuelle maskinen.
- Start: Starter maskinen hvis den er skrudd av.
- Turn Off: Stopper den virtuelle maskinen med en gang. Tilsvarer å skru av strømmen på en fysisk maskin.
- Shutdown: Prøver først å kjøre ned operativsystemet før den "skrur av strømmen".
- Save: Lagrer minnet til disk slik at vi kan hente det fram og fortsette å kjøre maskinen (tilsvarer dvale eller hibernate). Hvis vi stopper vertsmaskinen, vil alle gjestene automatisk bli lagret.
- Pause: Stopper maskinen midlertidig.
- Reset: Resetter maskinen uten å kjøre den ned.
- Checkpoint: Lager øyeblikksbilde av en virtuell maskin.
Kopiere virtuelle maskiner
Vi kan lage en kopi av en virtuell maskin på denne måten:
- Stopp maskinen du skal kopiere.
- Finn fram til den virtuelle harddisken til maskinen, som regel en .vhdx fil.
- Kopier denne filen til en ny katalog.
- Lag så en ny virtuell maskin.
- Når du kommer til oppsett av harddisk (Connect Virtual Harddisk), så velg Use an existing virtual harddisk og finn fram til kopien vi laget.
- Nå kan vi starte opp den nye kopien og gjøre nødvendige justeringer som å endre navn og IP adresse.
Integration services
Integration services er en programpakke som gjør at de virtuelle maskinene fungerer bedre og raskere. Denne programvaren ligger inne som standard i nyere Windows versjoner, men på eldre versjoner må den installeres.
Installere Integration Services:
- I vinduet til den virtuelle maskinen velg Action → Insert Integration Services Setup Disk.
- Følg veiledningen på skjermen.
Hvis det kommer oppdaterte versjoner av Hyper-V, kan det være aktuelt å oppgradere Integration Services på de virtuelle maskinene.
Checkpoint
Et checkpoint eller snapshot av en virtuell maskin er et øyeblikksbilde som vi senere kan rulle tilbake til. Checkpoint brukes typisk til uttesting av ny programvare og oppdateringer.
Lage checkpoint av virtuell maskin
- Vi skal teste en stor programpakke på en virtuell maskin, og vi ønsker å kunne gå tilbake til opprinnelig konfigurasjon hvis det oppstår problemer med installasjonen.
- Vi tar et checkpoint av maskinen før vi starter installasjonen.
- Vi kan så installere programvaren vi skal teste.
Hvis vi angrer og vil gå tilbake til maskinen slik den var før vi begynte å teste, gjør vi slik:
- Høyreklikk på checkpointet vi laget, og velg Apply.
- Maskinen vil nå rulles tilbake slik at den blir nøyaktig slik den var før vi begynte å teste.
Checkpoint gir oss mulighet for å gå tilbake til eldre versjoner av en maskin, men er ingen erstatning for backup. Vi må derfor sørge for å lage sikkerhetskopier av viktige data i tillegg.
Dynamic Memory
Dynamic memory gir oss dynamisk tildeling av minne til de virtuelle maskinene. Denne funksjonen gjør at vi kan dele ut minne etter behov, slik at vi får mulighet til å sette opp flere virtuelle maskiner uten å gå tom for RAM på vertsmaskinen.
Dynamisk minne fungerer med de fleste aktuelle operativsystemer. Dette er også støtte for flere Linux distribusjoner. I noen tilfeller kan det være nødvendig å installere nyeste utgave av Integration Services. Vi kan sette en startverdi i tillegg til en minimums- og maksimumsverdi for størrelsen på minne. Startverdien er fast under oppstart eller installasjon av operativsystemet.
Vi kan bruker Memory Weight til å justere prioritet på tildeling av minne. Memory Buffer er hvor mye ekstra minne den virtuelle maskinen vil få, i forhold til behovet som virtualiseringsprogrammet har beregnet. Dette ekstra minnet brukes til Disk Buffer (se Cached i Task Manager) og for at den virtuelle maskinen skal ha litt ekstra minne å gå på i tilfelle minnebehovet øker.
Flytte virtuelle maskiner
Hvis vi har en kraftig server, kan vi gjerne ha 5–10 virtuelle maskiner kjørende i Hyper-V. Hvis vertsmaskinen må restartes, må også alle de virtuelle maskinene restartes. For å unngå dette kan vi flytte de virtuelle maskinene til en annen vertsmaskin før omstart.
For at flytting av maskiner skal gå raskest mulig, bør vertsmaskinene ha felles lagring. Dette gjøres tradisjonelt med et lagringsnett (SAN) som er koblet sammen med iSCSI. Støtten for slike lagringsnett er innebygd i Windows, men selve lagringskabinettene kan være ganske kostbare.
Nytt i Windows Server 2012 var mulighet for å bruke felles lagring for virtuelle maskiner på et vanlig nettverksdeling, altså vanlige disker i en Windows Server maskin, som deles slik vi har gjort tidligere. Det er fildelingsprotokollen SMB som gjør dette mulig.
Hvis Hyper-V maskinene har felles lagring, kan en virtuell maskin flyttes i løpet av sekunder. Det er kun innhold i minnet (RAM) på den virtuelle maskinen som må flyttes.
Selv om Hyper-V maskinene ikke har felles lagring, kan vi allikevel utføre en flytting. Innholdet av harddisken til den virtuelle maskinen må da flyttes over nettverket. Dette kan ta en stund, dersom disken er stor og nettverksforbindelsen er treg. Selv om selve flyttingen tar lang tid, vil ikke maskinen være utilgjengelig mer enn noen millisekunder. Selve byttet kan skje etter at alt er kopiert over.
Eksempel
I vårt nettverksoppsett har vi bare en fysisk server, og vi kan derfor ikke utføre en flytting av virtuelle maskiner med dette. For å se nærmere på et eksempel på flytting av virtuelle maskiner vil vi allikevel gi et grovt overblikk over hvordan dette gjøres.
Vi kan tenke oss at vi har en ekstra fysisk maskin med følgende oppsett:
- En PC som kan kjøre Windows Server og har støtte for virtualisering
- Minst 2 GB minne
- Diskplass til noen virtuelle maskiner
Vi kan sette opp Windows tilsvarende den første serveren og kalle den Server2. Det holder å legge inn rollene Fileserver og Hyper-V. Meld så den nye serveren inn i domenet mittdomene.no.
Først kan vi lage et share som vi kan bruke som felles lagring for Hyper-V:
- Gå til Server manager → file and Storage Services → Shares.
- Lag et nytt share av typen SMB share → Applications og kall denne Hyper-V.
Nå kan vi legge til den andre serveren i Hyper-V manager slik at både Server1 og Server2 er tilgjengelig.
- Gå nå inn på Hyper-V settings på begge maskiner og endre folder for Virtual Machine og Virtual Hard Disks til det nye sharet vi laget, f.eks.
\\server2.mittdomene.no\Hyper-V
.
- Kryss av for Enable incoming og use any available network under Live Migration.
For å gjøre flyttingen enklere bør vi ha felles navn på de virtuelle switsjene på begge maskiner.
- Gå inn på Virtual Switch Manager i Hyper-V på begge maskiner.
- Endre navnet på switsjene til f.eks. Privat nett.
- Husk å oppdatere settingene på eksisterende virtuelle maskiner.
Nå må vi flytte de eksisterende virtuelle diskene til det nye Hyper-V delingen. Eventuelt kan vi lage en ny virtuell maskin med disken på riktig sted.
- Stopp de virtuelle maskinene og finn fram til de virtuelle diskene i Windows Explorer.
- Flytt dem over til det nye sharet.
- Oppdater settings på de virtuelle maskinene og start dem opp igjen.
Nå kan vi prøve å flytte en virtuell maskin over til Server2:
- Høyreklikk på Server2 og velge Move.
- Hvis begge Hyper-V maskinene har felles lagring og disken til den virtuelle maskinen ligger der, kan vi velge Move only the virtual machine.
- Pass på at du er på den fysiske maskinen du flytter fra, når du starter en move.
- Hvis du får beskjed om at hardware på destination ikke er kompatibel, kan vi gå til settings på den virtuelle maskinen og velge Processor → Compatibility og krysse av for Migrate to a physical computer with a different processor version.