Hop til indhold
Software

VM (Virtuel Machine)

Virtuel Machine (virtuel maskine)

En VM (virtuel maskine) er en softwarebaseret efterligning af en fysisk computer, der kører sit eget operativsystem og sine egne programmer oven på en fysisk værtsmaskines hardware. VM’en opfører sig som en selvstændig pc med egen (virtuel) processor, hukommelse, disk og netværksforbindelse, selvom den i praksis deler den underliggende hardware med andre virtuelle maskiner. Teknologien kaldes ofte for “en computer inden i computeren”.

I praksis kan en VM bruges til at køre Linux på en Windows-maskine, uden at man behøver at geninstallere noget eller sætte en ekstra fysisk computer op ved siden af. Man opretter blot en virtuel maskine, installerer det ønskede operativsystem i den, og kan derefter arbejde i det nye system i et vindue, mens ens sædvanlige system kører videre ved siden af. Går noget galt inde i VM’en, kan man som regel lukke den ned eller slette den, uden at det påvirker resten af computeren.

Hvordan fungerer en virtuel maskine?

En VM oprettes og styres af et program, der kaldes en hypervisor. Hypervisoren opdeler den fysiske hardware – processorkraft, hukommelse, lagerplads og netværk – og tildeler dele af den til hver enkelt virtuel maskine, der kører på systemet. Det gæste-operativsystem, som kører inde i VM’en, “tror” reelt, at det har adgang til hele maskinen for sig selv, selvom det i virkeligheden deler ressourcerne med værtssystemet og eventuelt andre VM’er på samme hardware.

Der findes overordnet to typer hypervisorer. En type 1-hypervisor (også kaldet bare-metal) kører direkte oven på hardwaren uden et mellemliggende operativsystem og bruges typisk i datacentre og cloud-miljøer, hvor ydeevne og stabilitet vejer tungt. En type 2-hypervisor kører i stedet som et almindeligt program oven på et eksisterende operativsystem og er mere udbredt til udvikling, test og almindelig brug på en enkelt computer.

Hvad bruges VM’er til?

Virtuelle maskiner bruges til en række forskellige formål, blandt andet:

  • Test og udvikling – man kan oprette et rent, isoleret miljø, tage et øjebliksbillede (snapshot) af det og rulle tilbage igen på få sekunder, hvis noget går galt.
  • Ældre software – forældede programmer kan holdes i live på deres oprindelige operativsystem, uden at det ældre miljø skal fylde hele den fysiske maskine.
  • Sikkerhedssandkasse – mistænkelige filer eller usikre hjemmesider kan åbnes i en engangs-VM, der derefter kan slettes.
  • Multi-OS-arbejdsgange – man kan afprøve en applikation på flere operativsystemer eller browserkombinationer uden at eje flere fysiske maskiner.
  • Serverkonsolidering i cloud-miljøer – flere virtuelle maskiner kan dele den samme fysiske serverhardware, hvilket udnytter ressourcerne mere effektivt.

I forbindelse med kunstig intelligens bruges specialiserede cloud-VM’er ofte til at køre tunge beregningsopgaver med grafikkort, blandt andet træning af modeller inden for deep learning og computer vision. Den samme isolationstankegang bruges også, når udviklere ønsker at afprøve AI-drevne kodeværktøjer som Claude Code i et afgrænset miljø, hvor et fejlslagent forsøg ikke kan påvirke resten af systemet.

VM eller container – hvad er forskellen?

En VM virtualiserer selve hardwaren og indeholder et komplet gæste-operativsystem, hvilket giver stærk isolation, men også et vist overhead i form af diskplads og ressourceforbrug. En container deler i stedet værtsmaskinens operativsystemkerne og virtualiserer kun brugerrummet, hvilket gør containere lettere og hurtigere at starte. VM’er kan sammenlignes med hele, selvstændige lejligheder, mens containere minder mere om effektive etværelseslejligheder på samme etage – begge løsninger har deres berettigelse afhængigt af opgaven.

Er virtuelle maskiner sikre?

Virtuelle maskiner er som udgangspunkt stærkt isolerede fra hinanden og fra værtssystemet, hvilket er en af grundene til, at de er udbredte i datacentre. Sikkerheden afhænger dog stadig af, at både vært og gæst-operativsystem holdes opdateret, at man bruger en velafprøvet hypervisor, og at man i øvrigt følger almindelig sikkerhedspraksis. Et snapshot taget lige før en større ændring kan gøre det muligt at fortryde en fejl uden at miste data.

Populære VM-platforme

På den enkelte computer bruges værktøjer som Hyper-V, VirtualBox, VMware Workstation og Parallels ofte til at oprette og køre virtuelle maskiner. I servermiljøer og hos cloud-udbydere er KVM, VMware ESXi og Hyper-V blandt de mest udbredte løsninger. Valget afhænger typisk af, hvilket operativsystem man i forvejen bruger, hvilken hardware man har til rådighed, og om man har brug for funktioner som direkte adgang til et grafikkort, live-migrering mellem servere eller delt lagerplads mellem flere VM’er.

Eksempel
Man kan oprette en virtuel maskine med Linux på en Windows-computer for at afprøve et program eller en indstilling, uden at det påvirker det almindelige Windows-system.
Ofte stillede spørgsmål
Hvad står VM for?
VM står for Virtual Machine, på dansk virtuel maskine – en softwarebaseret version af en computer, der kører oven på en fysisk maskine.
Hvad er en hypervisor?
En hypervisor er det program, der opretter og styrer virtuelle maskiner ved at fordele den fysiske hardwares processorkraft, hukommelse og lagerplads mellem dem.
Hvad er forskellen på en VM og en container?
En VM indeholder et helt gæste-operativsystem og virtualiserer hardwaren, mens en container deler værtssystemets kerne og kun virtualiserer brugerrummet, hvilket gør containere lettere og hurtigere at starte.
Kræver det speciel hardware at køre en VM?
Det kræver ikke eksotisk udstyr, men de fleste nyere processorer med understøttelse af virtualisering (som Intel VT-x eller AMD-V) samt tilstrækkelig RAM og diskplads gør det lettere at køre virtuelle maskiner uden problemer.
Kan man bruge en VM til at afprøve mistænkelige filer sikkert?
Ja, en virtuel maskine kan bruges som en midlertidig sikkerhedssandkasse til at åbne mistænkelige filer eller besøge usikre hjemmesider, hvorefter VM'en kan slettes igen.
Vil du afprøve AI-drevne kodeværktøjer i et trygt, afgrænset miljø svarende til en VM? Læs mere om, hvordan Claude Code fungerer som AI-assisteret kodningsværktøj
Claude Code →