Een virtual machine (VM) is een softwarematige nabootsing van een fysieke computer. Het draait op een host-systeem maar functioneert als een zelfstandige computer met zijn eigen besturingssysteem, opslagruimte en rekenkracht. Je kunt meerdere virtual machines op één fysieke machine draaien, elk met een eigen omgeving.
Virtual machines worden mogelijk gemaakt door virtualisatiesoftware, ook wel een hypervisor genoemd. Deze hypervisor beheert de hardware van het host-systeem en verdeelt die over de verschillende VM’s. Zo kan één fysieke server dienstdoen als platform voor meerdere virtuele computers, elk geïsoleerd van elkaar.
Door deze scheiding kun je bijvoorbeeld Windows draaien op een Mac, of meerdere besturingssystemen naast elkaar gebruiken voor testdoeleinden. Dit maakt virtual machines populair in zowel de IT-wereld als onder individuele gebruikers.
Een virtual machine werkt door gebruik te maken van een hypervisor, een laag software die tussen de fysieke hardware (de host) en de virtuele machines (guests) zit. Deze hypervisor wijst middelen zoals CPU, geheugen, opslag en netwerkcapaciteit toe aan elke VM.
Er zijn twee hoofdtypen hypervisors:
Type 1 (bare-metal): draait direct op de hardware, zonder besturingssysteem ertussen. Voorbeelden zijn VMware ESXi en Microsoft Hyper-V. Deze worden vaak gebruikt in datacenters.
Type 2 (hosted): draait bovenop een bestaand besturingssysteem zoals Windows of macOS. Voorbeelden zijn VirtualBox en VMware Workstation. Dit type wordt vaak gebruikt voor lokaal testen.
Wanneer je een virtual machine opstart, emuleert de hypervisor alle componenten die een echte computer heeft: een processor, geheugen, harde schijf, netwerkkaart, enzovoort. Daarbovenop installeer je een besturingssysteem naar keuze (bijv. Linux of Windows). Dat besturingssysteem denkt dat het op een fysieke computer draait.
De host is het echte fysieke systeem waarop je werkt. De guest is de virtuele machine die draait binnen die omgeving. De guest deelt hardwarebronnen van de host, maar is er tegelijk van geïsoleerd. Als de guest crasht, heeft dat in principe geen invloed op het host-besturingssysteem.
Deze scheiding maakt virtual machines ideaal voor experimenten, testen of het draaien van applicaties die je liever niet direct op je hoofdcomputer installeert.
Virtual machines worden in allerlei situaties ingezet, zowel door bedrijven als door individuele gebruikers. Ze bieden flexibiliteit, veiligheid en gemak in uiteenlopende toepassingen.
Ontwikkelaars gebruiken VM’s om applicaties te testen op verschillende besturingssystemen zonder meerdere fysieke apparaten nodig te hebben. Je kunt eenvoudig snapshots maken, fouten reproduceren en systemen resetten.
Sommige oudere programma’s werken alleen op verouderde besturingssystemen. Een VM biedt de mogelijkheid om bijvoorbeeld Windows XP te draaien zonder je huidige systeem aan te passen.
Een virtual machine is ideaal als veilige testomgeving. Je kunt nieuwe software of verdachte bestanden uitproberen zonder risico voor je host-systeem. Wordt de VM besmet met malware? Dan gooi je hem gewoon weg en begin je opnieuw.
Bedrijven kunnen meerdere servers virtualiseren op één fysieke machine. Hierdoor besparen ze op kosten, ruimte en energieverbruik. Eén krachtige server kan tientallen VM’s hosten die elk een aparte rol vervullen (zoals webserver, mailserver of database).
In de cloud draait bijna alles op virtual machines. Diensten zoals Amazon Web Services (AWS), Microsoft Azure en Google Cloud bieden virtuele servers die je binnen minuten kunt opstarten, aanpassen en schalen.
Virtual machines worden veel gebruikt in het onderwijs, van middelbare scholen tot universiteiten. Studenten en scholieren kunnen oefenen met het installeren en gebruiken van besturingssystemen, zonder hun eigen laptop aan te passen. Daarnaast kunnen ze software testen en gebruiken via een VM, zonder iets te hoeven downloaden of installeren op hun eigen apparaat. Dit maakt leren veiliger, laagdrempeliger en makkelijker te beheren voor IT-beheerders op scholen.
Virtual machines worden ook veel gebruikt om op afstand toegang te krijgen tot een digitale werkomgeving. Er zijn drie veelvoorkomende technologieën op dit gebied:
VDI (Virtual Desktop Infrastructure): hierbij draaien virtuele desktops op een centrale server, en krijgen gebruikers via het netwerk toegang tot hun eigen virtuele werkplek. Dit wordt veel gebruikt in organisaties met veel werknemers of flexwerkplekken.
DaaS (Desktop as a Service): lijkt op VDI, maar dan als cloud-dienst. De infrastructuur wordt beheerd door een externe provider, wat zorgt voor minder onderhoud in eigen beheer en meer flexibiliteit. Denk aan diensten zoals Windows 365 of Amazon WorkSpaces.
RDP (Remote Desktop Protocol): een Microsoft-protocol waarmee je een verbinding maakt met een andere computer via het netwerk. Je ziet en bestuurt het scherm van een externe computer alsof je erachter zit. RDP wordt vaak gebruikt om toegang te krijgen tot een bestaande (virtuele of fysieke) machine op afstand.
Deze technologieën maken het mogelijk om veilig, flexibel en locatieonafhankelijk te werken of je nu in het onderwijs zit, in de zorg werkt of een zakelijke omgeving beheert.
Er bestaan twee hoofdtypen virtual machines, elk met een eigen doel en werking. Het is belangrijk om het verschil te kennen, vooral als je kiest welke technologie het beste bij je situatie past.
Een system virtual machine simuleert een volledige fysieke computer. Het draait een volledig besturingssysteem en functioneert als een echte pc of server. Dit type wordt het meest gebruikt, bijvoorbeeld om Windows op een Mac te draaien, of meerdere servers op één fysieke machine te hosten. Voorbeelden van software die dit mogelijk maakt zijn VirtualBox, VMware en Hyper-V.
Kenmerken:
Draait een compleet OS
Gebruikt een hypervisor
Geschikt voor testen, servervirtualisatie en cloudomgevingen
Een process virtual machine draait slechts één programma of proces, en verdwijnt zodra het programma is afgesloten. In plaats van een heel besturingssysteem te simuleren, biedt het een virtuele omgeving waarin een applicatie kan draaien. Een bekend voorbeeld is de Java Virtual Machine (JVM), waarmee Java-programma’s platformonafhankelijk kunnen worden uitgevoerd.
Kenmerken:
Draait één enkel proces
Minder middelen nodig
Geschikt voor platformonafhankelijke software
Achter virtual machines zitten verschillende technieken die bepalen hoe de virtuele omgeving wordt opgezet en beheerd. Elke techniek heeft zijn eigen toepassingen, voordelen en beperkingen. Hieronder bespreken we de drie meest gebruikte vormen.
Bij volledige virtualisatie wordt de hardware van een computer volledig nagebootst. Het besturingssysteem in de VM denkt dat het direct op fysieke hardware draait, terwijl alles in werkelijkheid wordt beheerd door een hypervisor.
Voordelen:
Flexibel: elk besturingssysteem kan worden geïnstalleerd
Geen aanpassingen nodig aan het guest-besturingssysteem
Nadeel:
Iets zwaarder voor de host, omdat alle hardware gesimuleerd moet worden
Deze vorm lijkt op volledige virtualisatie, maar maakt gebruik van speciale functies in moderne processors (zoals Intel VT-x of AMD-V). Deze functies helpen de hypervisor om efficiënter te werken.
Voordelen:
Snellere prestaties dan volledige virtualisatie
Betere ondersteuning door moderne CPU’s
Nadeel:
Vereist ondersteuning in de hardware van de host
Bij OS-level virtualisatie draait er één besturingssysteemkernel, en worden meerdere geïsoleerde gebruikersomgevingen (containers) binnen datzelfde OS aangemaakt. Bekende voorbeelden zijn Docker en LXC.
Voordelen:
Lichtgewicht: delen kernel en systeemresources
Snel op te starten en schaalbaar
Nadeel:
Minder flexibel: je kunt alleen systemen draaien die hetzelfde OS gebruiken als de host
Containers worden vaak vergeleken met virtual machines. Ze zijn ideaal voor applicatieontwikkeling en microservices, maar bieden minder isolatie dan een traditionele VM.
Virtual machines bieden veel voordelen, zowel technisch als praktisch. Dit maakt ze populair in IT-omgevingen, ontwikkelteams en zelfs bij individuen die experimenteren met software of systemen.
Door meerdere virtuele machines op één fysieke server te draaien, bespaar je op hardwarekosten. Dit is vooral interessant voor bedrijven die anders meerdere servers nodig zouden hebben.
Je kunt snel nieuwe omgevingen opzetten, besturingssystemen wisselen of software testen zonder je echte systeem aan te passen. Dit versnelt ontwikkel- en testprocessen.
Elke VM draait volledig geïsoleerd van andere VM’s en van de host. Dit betekent dat fouten, crashes of malware in één VM geen invloed hebben op andere systemen.
VM’s zijn makkelijk te kopiëren, verplaatsen of klonen. Hierdoor kun je eenvoudig opschalen of je infrastructuur aanpassen aan veranderende behoeften, bijvoorbeeld in een cloudomgeving.
Virtual machines maken het mogelijk om verschillende besturingssystemen naast elkaar te draaien op één machine. Denk aan Windows, Linux en macOS naast elkaar, voor bijvoorbeeld cross-platform ontwikkeling.
Hoewel virtual machines veel voordelen bieden, zijn er ook enkele nadelen en beperkingen waar je rekening mee moet houden. In sommige situaties kan een andere oplossing, zoals containers, beter passen.
Omdat een VM extra softwarelagen gebruikt om hardware te emuleren, presteert deze meestal iets trager dan een systeem dat direct op fysieke hardware draait. Vooral bij zware grafische toepassingen of hoge I/O-belasting merk je dit verschil.
Het beheren van meerdere VM’s kan ingewikkeld worden, vooral als je met snapshots, updates, netwerkconfiguraties en opslag te maken hebt. Grotere omgevingen vereisen vaak aanvullende beheertools.
VM’s hebben beperkte directe toegang tot hardware. Dit kan problemen opleveren bij bijvoorbeeld USB-apparaten, GPU-acceleratie of aangepaste randapparatuur. Hoewel er workarounds bestaan, is het niet altijd even soepel als op een fysiek systeem.
Virtual machines bieden krachtige functies voor beheer en bedrijfscontinuïteit. Drie veelgebruikte functionaliteiten zijn snapshots, migratie en failover. Deze helpen bij back-ups, onderhoud en hoge beschikbaarheid.
Een snapshot is een momentopname van de status van een VM op een bepaald tijdstip. Denk aan een back-up van het volledige systeem, inclusief geheugen, instellingen en schijfinhoud. Je kunt een snapshot maken voordat je updates of tests uitvoert, zodat je altijd kunt terugkeren naar de vorige staat als er iets misgaat.
Toepassingen:
Veilig software testen
Snel terugdraaien van updates
Tijdelijke omgevingen aanmaken
Migratie houdt in dat je een draaiende VM verplaatst van de ene fysieke host naar een andere, soms zelfs zonder onderbreking. Dit wordt ook wel live migration genoemd.
Voordelen:
Onderhoud uitvoeren zonder downtime
Workloads balanceren over meerdere servers
Efficiënt gebruik van hardware
Bij failover wordt een VM automatisch overgenomen door een andere host als de oorspronkelijke faalt. Dit is een vorm van hoge beschikbaarheid en wordt vaak gebruikt in combinatie met clustering en replicatie.
Situaties waarin failover nuttig is:
Serverstoringen
Hardware-uitval
Noodherstel
Deze functies maken virtual machines niet alleen flexibel, maar ook betrouwbaar voor kritieke toepassingen.
Virtual machines en containers worden vaak in één adem genoemd, maar het zijn fundamenteel verschillende technologieën. Beide bieden isolatie en flexibiliteit, maar de manier waarop ze dat doen verschilt sterk.
Een container is een lichtgewicht virtuele omgeving die draait bovenop het besturingssysteem van de host. In tegenstelling tot een VM heeft een container geen eigen besturingssysteem, maar deelt het de kernel van de host. Bekende tools zijn Docker en Kubernetes.
Belangrijkste verschillen
Kenmerk | Virtual machine | Container |
---|---|---|
Eigen besturingssysteem | Ja | Nee |
Opstarttijd | Traag (enkele minuten) | Snel (seconden) |
Resources | Zwaarder | Lichtgewicht |
Isolatie | Sterk (hardwarematig) | Minder sterk (gedeelde kernel) |
Gebruik | OS-virtualisatie | Applicatie-virtualisatie |
Geschikt voor | Meerdere OS'en, legacy systemen | Microservices, schaalbare apps |
Virtual machines zijn geschikt wanneer je volledige systeemisolatie nodig hebt, verschillende besturingssystemen wilt draaien of legacy software moet ondersteunen.
Containers zijn ideaal voor moderne applicaties, CI/CD-pijplijnen en schaalbare microservices, vooral als snelheid en efficiëntie belangrijk zijn.
In de praktijk worden VM’s en containers vaak samen gebruikt. Bijvoorbeeld: meerdere containers draaien binnen een VM in de cloud, waarbij je profiteert van beide technologieën.
Een virtual machine opzetten is tegenwoordig eenvoudig en vereist geen geavanceerde technische kennis. Met de juiste tools en instellingen heb je binnen enkele minuten een werkende VM draaien op je computer.
Voordat je begint, zorg je dat je beschikt over:
Een stabiele computer met voldoende geheugen (minstens 8 GB RAM) en opslagruimte
Een virtualisatiesoftware zoals:
VirtualBox (gratis, open source)
VMware Workstation Player (gratis voor niet-commercieel gebruik)
Microsoft Hyper-V (ingebouwd in Windows Pro)
Een besturingssysteem-image (ISO-bestand) van bijvoorbeeld Windows, Ubuntu of een andere Linux-distributie
Stappenplan
Download en installeer virtualisatiesoftware
Ga naar de officiële website van de tool (bijv. virtualbox.org) en installeer de software.
Maak een nieuwe VM aan
Open de software en kies ‘Nieuwe machine aanmaken’. Geef een naam op, selecteer het gewenste OS en wijs geheugen toe.
Koppel het ISO-bestand
Voeg het gedownloade installatiebestand toe als opstartschijf, zodat de VM hiervan kan booten.
Configureer instellingen
Kies hoeveel RAM en opslag je wilt toewijzen. Je kunt later ook netwerkinstellingen of gedeelde mappen instellen.
Start de VM en installeer het besturingssysteem
De VM start vanaf het ISO-bestand. Volg de installatie-instructies van het gekozen OS, net als bij een echte computer.
Installeer eventueel extra tools (zoals Guest Additions bij VirtualBox)
Hiermee verbeter je de integratie tussen de host en guest, zoals betere schermresoluties, gedeeld klembord en slepen van bestanden.
Na installatie kun je je virtual machine gebruiken alsof het een aparte computer is.
Virtual machines vormen een krachtig hulpmiddel voor wie flexibel, veilig en efficiënt wil werken met software en systemen. Ze maken het mogelijk om meerdere besturingssystemen naast elkaar te draaien, zonder extra fysieke apparaten. Of je nu software wilt testen, legacy-applicaties draaiende wilt houden, veilige leeromgevingen wilt bieden aan scholieren, of je IT-infrastructuur schaalbaar wilt maken; virtual machines bieden de oplossing.
Dankzij virtualisatiesoftware zijn VM’s toegankelijk voor zowel beginners als professionals. De techniek blijft zich bovendien ontwikkelen, waarbij combinaties met containers en cloud-platformen zorgen voor nog meer mogelijkheden. Virtual machines zijn en blijven een onmisbaar onderdeel van moderne IT.
Een virtual machine is een virtuele computer die binnen een fysieke computer draait. Het heeft zijn eigen besturingssysteem en werkt los van het systeem van de host.
Ja, er zijn verschillende gratis tools beschikbaar, zoals Oracle VirtualBox en VMware Workstation Player (voor niet-commercieel gebruik).
Ja, dat kan. Zolang je pc voldoende geheugen, opslagruimte en rekenkracht heeft én virtualisatie is ingeschakeld in het BIOS, kun je een VM draaien.
Virtual machines worden gebruikt voor het testen van software, het draaien van oude programma’s, onderwijsdoeleinden, veilige testomgevingen, serverconsolidatie en cloud computing.