A számítógép-virtualizáció egy olyan technológia, amely lehetővé teszi, hogy egyetlen fizikai hardveren több, egymástól független virtuális gépet (VM) hozzunk létre és futtassunk.
A virtualizáció lényege, hogy a fizikai hardver erőforrásait (processzor, memória, tárhely, hálózati kártya) szoftveresen absztraháljuk és osztjuk el a virtuális gépek között. Ezáltal hatékonyabban használhatjuk ki a rendelkezésre álló hardvert, csökkenthetjük a költségeket, növelhetjük a rugalmasságot és egyszerűsíthetjük az informatikai infrastruktúra kezelését.
A virtualizáció napjainkban az informatikai rendszerek szinte minden területén jelen van, az otthoni felhasználástól a nagyvállalati adatközpontokig.
Az egyik legelterjedtebb megközelítés a hardveres virtualizáció, ahol egy úgynevezett hipervizor (virtual machine monitor - VMM) réteg jön létre a fizikai hardver és a virtuális gépek között.
A hipervizor felelős a hardver erőforrásainak (CPU, memória, tárhely, hálózat) elosztásáért és a virtuális gépek elkülönítéséért.
Két fő típusa van:
Közvetlenül a hardveren (a „vas”-on) futnak:
Egy meglévő operációs rendszeren futnak:
Nem teljes virtuális gépeket hozunk létre, hanem izolált felhasználói tereket (konténereket) egyetlen operációs rendszer kerneljén belül.
A konténerek megosztják a host operációs rendszer kerneljét, de saját fájlrendszerrel, processzekkel, hálózati interfészekkel és erőforrás-korlátokkal rendelkeznek.
Ez a megközelítés sokkal könnyebb és gyorsabb a teljes gépek virtualizációjánál, mivel nem kell külön operációs rendszereket futtatni. Népszerű konténerizációs technológiák közé tartozik a Docker és a Kubernetes.