[[oktatas:linux:virtualizálás|< Virtualizálás]] ====== KVM ====== * **Szerző:** Sallai András * Copyright (c) 2019, Sallai András * Szerkesztve: 2019, 2021 * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] * Web: https://szit.hu ===== A KVM-ről ===== A KVM a Kernel-based Virtual Machine rövidítése, magyarul kernel alapú virtuális gép. A KVM fejlesztését Avi Kivity kezdte a Qumranet szoftverfejlesztő cégnél, amelyet 2008-ban a Red Hat felvásárolt. ===== CPU támogatás ===== Ellenőrizzük a processzor virtualizációs támogatását. egrep --color 'vmx|svm' /proc/cpuinfo Ha nincs vmx vagy svm a cpu jellemzők között, akkor nincs virtualizációs támogatás a processzorban, az egrep nem ír ki semmit. Ha nincs támogatás a kvm helyett csak qemu virtualizáció lehetséges. ===== Telepítés ===== apt install qemu-kvm libvirt0 bridge-utils virt-manager A Debian GNU/Linux 11 rendszeren a qemu-kvm helyett a qemu-system-x86 telepszik. ===== Bridge interfész ===== Nézzük meg, a hálózati kártya milyen néven érhető el: nano /etc/network/interfaces DHCP esetén: auto lo iface lo inet loopback auto br0 iface br0 inet dhcp bridge_ports enp0s3 bridge_stp off bridge_maxwait 0 Fix IP esetén: auto lo iface lo inet loopback auto br0 iface br0 inet static address 192.168.10.2 netmask 255.255.255.0 network 192.168.10.0 broadcast 192.168.10.255 gateway 192.168.10.1 dns-nameservers 192.168.10.8 8.8.8.8 dns-search zold.and bridge_ports enp0s3 bridge_stp off bridge_maxwait 0 * bridge_stp off -- Spanning Tree Protocol kikapcsolása * bridge_maxwait -- Ne legyen várakozási idő mielőtt elérhető lesz Indítsuk újra a gépet: reboot Vagy csak egyszerűen: ifup br0 ===== Non-root használat ===== A janos felhasználót (vagy helyette a saját felhasználókat) a libvirt csoportba felvesszük: # gpasswd -a janos libvirt A janos felhasználó így sudo nélkül tudja kezelni a virtuális gépeket. Jelentkezzünk ki, majd újra be. Az újabb bejelentkezés után az id paranccsal ellenőrizzük a janos felhasználó bekerült-e a csoportba. A janos felhasználóként kell futtatni: $ id ===== ISO könyvtárak ===== mkdir /var/lib/libvirt/iso mv debian-9.8.0-amd64-netinst.iso /var/lib/libvirt/iso chown libvirt-qemu:libvirt \ /var/lib/libvirt/iso/debian-9.8.0-amd64-netinst.iso ===== CLI felület ===== virt-install \ --virt-type kvm \ --name debian \ --memory 512 \ --cdrom ~/iso/debian.iso \ --disk size=4 \ --os-variant debianstretch virt-install \ --name debianGep \ --memory 512 \ --os-variant debiansqueeze \ --location http://ftp.us.debian.org/debian/dists/stable/main/installer-amd64/ \ --disk size=4 \ --network bridge=br0 \ --hvm \ --virt-type kvm \ --extra-args "console=ttyS0" * --name * a virtuális gép neve * --memory * memória mérete MiB-ban * --location * a terjesztés forrása * http://ftp.us.debian.org/debian/dists/stable/main/installer-amd64/ * --os-variant * operációs rendszer variáció * debian9 * --disk opció=érték1,érték2,... * size=10 * 10 G * --network * hálózati bridge * --hvm * teljes virtualizáció kérése * --virt-type * használt hypervizor * kvm, qemu, xen * --extra-args * extra argumentumok a kernel számára * "console=ttyS0" ===== GUI kezelőfelület ===== ==== Telepítés ==== apt install virt-manager ==== Csoport ==== Ha fentebb kihagytuk volna a felhasználó libvirt csoportba helyezését, akkor tegyük meg, mivel a virt-manager rendszergazdai jelszót kér induláskor. Ha felhasználót betesszük a **libvirt csoportba**, engedélyezzük a felhasználónak a virt-manager használatát, így nem kér root jelszót induláskor. gpasswd -a janos libvirt A művelethez ki és be kell jelentkezni. ===== Linkek ===== ==== Források ==== * https://wiki.debian.org/KVM (2019) * https://www.hiroom2.com/2017/06/26/debian-9-bridge-interface/ (2019) * https://www.hiroom2.com/2017/06/26/debian-9-install-kvm/ (2019) * https://tech.binary.com/kvm-virtualization-in-debian-9-stretch/ (2019) * https://manpages.debian.org/jessie/bridge-utils/bridge-utils-interfaces.5.en.html (2019) * https://computingforgeeks.com/use-virt-manager-as-non-root-user/ (2019) * https://www.cyberciti.biz/faq/install-kvm-server-debian-linux-9-headless-server/ (2019) * https://blog.programster.org/set-up-debian-9-kvm-server (2019) ==== Webes felületek ==== * https://www.danpros.com/2017/06/good-and-lightweight-web-based-kvm-manager (2019) * https://www.itzgeek.com/how-tos/linux/ubuntu-how-tos/manage-kvm-qemu-with-kimchi-web-interface.html (2019) * https://www.linux-kvm.org/page/Management_Tools (2019)