Als u het woord virtualiseren opzoekt in een woordenboek, zult u vinden dat het betekent “het creëren van een virtuele (in plaats van werkelijke) versie van iets“. In de informatica verwijst de term virtualisatie naar de mogelijkheid om meerdere besturingssystemen gelijktijdig en geïsoleerd van elkaar te laten draaien, boven op hetzelfde fysieke (hardware) systeem, bekend in het virtualisatieschema als host.

Door het gebruik van de virtuele machine monitor (ook bekend als hypervisor), krijgen virtuele machines (aangeduid als gasten) virtuele bronnen (bijv. CPU, RAM, opslag, netwerkinterfaces, om er een paar te noemen) van de onderliggende hardware.
Met dat in gedachten is het duidelijk te zien dat een van de belangrijkste voordelen van virtualisatie kostenbesparingen zijn (op het gebied van apparatuur en netwerkinfrastructuur en qua onderhoudsinspanningen) en een aanzienlijke vermindering van de fysieke ruimte die nodig is om alle benodigde hardware te herbergen.
Aangezien deze beknopte handleiding niet alle virtualisatiemethoden kan behandelen, raad ik u aan de documentatie in de samenvatting te raadplegen voor meer details over het onderwerp.
Houd er rekening mee dat het huidige artikel bedoeld is als een startpunt om de basisprincipes van virtualisatie in RHEL 7 te leren met behulp van KVM (Kernel-based Virtual Machine) met command-line hulpprogramma’s, en niet als een diepgaande bespreking van het onderwerp.
Hardwarevereisten verifiëren en pakketten installeren
Om virtualisatie in te stellen, moet uw CPU het ondersteunen. U kunt controleren of uw systeem aan de vereisten voldoet met het volgende commando:
# grep -E 'svm|vmx' /proc/cpuinfo
In de volgende schermafbeelding kunnen we zien dat het huidige systeem (met een AMD processor) virtualisatie ondersteunt, zoals aangegeven door svm. Als we een op Intel gebaseerde processor hadden, zouden we in plaats daarvan vmx zien in de resultaten van het bovenstaande commando.

Bovendien moet u de virtualisatiemogelijkheden inschakelen in de firmware van uw host (BIOS of UEFI).
Installeer nu de benodigde pakketten:
- qemu-kvm is een open source virtualisator die hardware-emulatie biedt voor de KVM hypervisor, terwijl qemu-img een command line tool biedt voor het manipuleren van schijfafbeeldingen.
- libvirt bevat de tools om te communiceren met de virtualisatiemogelijkheden van het besturingssysteem.
- libvirt-python bevat een module waarmee toepassingen geschreven in Python de interface geleverd door libvirt kunnen gebruiken.
- libguestfs-tools: diverse systeembeheerder command line tools voor virtuele machines.
- virt-install: andere command-line hulpprogramma’s voor het beheer van virtuele machines.
# yum update && yum install qemu-kvm qemu-img libvirt libvirt-python libguestfs-tools virt-install
Zodra de installatie is voltooid, zorg ervoor dat u de libvirtd service start en inschakelt.
# systemctl start libvirtd.service # systemctl enable libvirtd.service
Standaard zal elke virtuele machine alleen kunnen communiceren met de rest op dezelfde fysieke server en met de host zelf. Om de gasten in staat te stellen andere machines binnen ons LAN en ook het internet te bereiken, moeten we een bridge-interface instellen in onze host (zeg br0, bijvoorbeeld) door:
1. de volgende regel toe te voegen aan onze hoofd-NIC-configuratie (waarschijnlijk /etc/sysconfig/network-scripts/ifcfg-enp0s3
):
BRIDGE=br0
2. het configuratiebestand voor br0 aan te maken (/etc/sysconfig/network-scripts/ifcfg-br0
) met deze inhoud (let op dat je mogelijk het IP-adres, gateway-adres en DNS-informatie moet wijzigen):
DEVICE=br0 TYPE=Bridge BOOTPROTO=static IPADDR=192.168.0.18 NETMASK=255.255.255.0 GATEWAY=192.168.0.1 NM_CONTROLLED=no DEFROUTE=yes PEERDNS=yes PEERROUTES=yes IPV4_FAILURE_FATAL=no IPV6INIT=yes IPV6_AUTOCONF=yes IPV6_DEFROUTE=yes IPV6_PEERDNS=yes IPV6_PEERROUTES=yes IPV6_FAILURE_FATAL=no NAME=br0 ONBOOT=yes DNS1=8.8.8.8 DNS2=8.8.4.4
3. ten slotte, het doorsturen van pakketten inschakelen door, in /etc/sysctl.conf
,
net.ipv4.ip_forward = 1
en de wijzigingen in de huidige kernelconfiguratie te laden:
# sysctl -p
Merk op dat je mogelijk ook firewalld moet vertellen dat dit soort verkeer moet worden toegestaan. Onthoud dat je naar het artikel over dat onderwerp in dezelfde serie kunt verwijzen (Deel 11: Netwerkverkeersbeheer met FirewallD en Iptables) als je hulp nodig hebt om dat te doen.
Source:
https://www.tecmint.com/kvm-virtualization-basics-and-guest-administration/