Linux: Virtualizace KVM a CentOS

01.02.2017 napsal Hanz (update: 17.07.2017)
6

Linux: Virtualizace KVM a CentOS


Podívejme se na základní použití a správu VM ve virtualizaci pomocí KVM (Kernel-based Virtual Machine), kterou poskytuje samotné linuxové jádro. Vezmeme v příkladech letem světem instalaci potřebných KVM balíčků, vytvoření VM hostů, jejich správu a síťové nastavení.

Před instalací KVM je dobré zkontrolovat, zda procesor hostitele podporuje virtualizaci:
grep -E '(vmx|svm)' /proc/cpuinfo.

Instalace a spuštění KVM



# Instalace KVM pro CentOS
yum install qemu-kvm qemu-img virt-manager libvirt libvirt-python libvirt-client virt-install virt-viewer bridge-utils
systemctl start libvirtd
systemctl enable libvirtd

# Instalace KVM pro Debian, Ubuntu, Linux Mint
sudo apt-get install qemu-system qemu-utils libvirt-bin virt-manager python-spice-client-gtk virt-viewer


Vytvoření hosta (VM, guest)



Přes virt-manager pro X windows



virt-manager &
File - New virtual machine - proklikat se průvodcem (viz obrázek)



Přes terminál




virt-install --name=Xubuntu --file=/var/lib/libvirt/images/xubuntu.dsk --file-size=20 --nonsparse --graphics spice --vcpus=2 --ram=2048 --cdrom=xubuntu-dvd-install.iso --network bridge=br0 --os-type=linux --os-variant=generic



Správa KVM hostů přes terminál



Všechny VM - virsh list --all
Všechny běžící VM - virsh list
Start VM - virsh start VM
Pause VM - virsh suspend VM
Resume VM - virsh resume VM
Reboot VM - virsh reboot VM
Vypnutí VM - virsh shutdown VM
Tvrdé vypnutí VM - virsh destroy VM
-
Změna konfigurace - virsh edit VM
Připojení na konzoly - virsh console VM


Network


Abychom se dostali na VM hosty přes IP ve stejné síti jako je hypervizor (hostitel), tak je na hostujícím stroji potřeba nastavit síťovku do režimu mostu (bridge). Mějme následující situaci - hypervizor má síťovku enp0s25 s IP 192.168.4.28 a chceme jí změnit do režimu mostu.

vim /etc/sysconfig/network-scripts/ifcfg-enp0s25

TYPE=Ethernet
BOOTPROTO=static
DEVICE=enp0s25
ONBOOT=yes
BRIDGE=br0
PROMISC=yes


vim ifcfg-br0

TYPE=Bridge
BOOTPROTO=static
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.4.28
NETMASK=255.255.255.0
GATEWAY=192.168.4.254
DNS1=192.168.4.254

systemctl restart network
ip addr show br0
brctl show


Promiskuitní režim


Někdy je třeba ručně nastavit sťovou kartu do tzv. promiskuitního režimu (promisc mode), díky kterému NIC bude zachytávat i pakety, které nejsou určeny přímo pro ni (packet sniffing) = ale mimo jiné i pro virtuální NIC pro dané VM hosty.


ip link set eth0 promisc on

#alternativně
vim /etc/sysconfig/network-scripts/ifcfg-enp0s25

PROMISC=yes
ALLMULTI=yes

Vaše reakce na článek Linux: Virtualizace KVM a CentOS

Napsat komentář k článku

04.03.2017 napsal komentář WildFox [1]

zdravím všechny, mám dotaz, jak byste někdo optimálně vyřešil nahrávání obrazu či pořizování snímků na VM s Windows 7 na Virtualboxu. Fraps ve verzi 2.x či 3.x na tom nechce vůbec nahrávat. Děkuji moc za jakoukoliv radu

05.03.2017 napsal komentář Obbey [2]

Virtualbox má nahrávání obrazu přímo v sobě,najdeš to v nastavení VM jako zachytávání videa.

Poslední komentář
16.06.2018 napsal komentář rainbof [3]

nezapomente si sveho local usera pridat do skupiny libvirt a demona libvirt souborem libvirtd zkonfigurovat necht se v teto skupine spousti. nebudete pak muset spoustet virt-managera pod rootem

Tento web používá k poskytování služeb, personalizaci reklam a analýze návštěvnosti soubory cookie. Používáním tohoto webu s tím souhlasíte. Další informace