Natenoms Wiki

Weil Teilen Spaß macht :)

Benutzer-Werkzeuge

Webseiten-Werkzeuge


linux:verschiedenes:kvm

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

linux:verschiedenes:kvm [2018/04/02 12:36]
linux:verschiedenes:kvm [2020/06/01 23:14] (aktuell)
Zeile 1: Zeile 1:
 +======Informationen zu KVM======
 +Seit ein paar Wochen beschäftigen sich ein paar von uns mit KVM; hier sammeln wir interessante Informationen.
  
 +=====Fragen=====
 +  * Seit Version xxx von qemu werden Snapshots direkt in den qcow-Images gespeichert; wie kann man veranlassen, dass Snapshots weiterhin in externen Dateien landen?
 +
 +=====Sammelsurium=====
 +Alles mögliche, was man so zum Thema gefunden hat...
 +  * Online-Dokumentation von RedHat: https://docs.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/6/html/Virtualization_Host_Configuration_and_Guest_Installation_Guide/
 +  * KVM Bestpractices von IBM: https://publib.boulder.ibm.com/infocenter/lnxinfo/v3r0m0/topic/liaat/liaatbpkickoff.htm
 +  * KVM-Tuning: https://www.linux-kvm.org/page/Tuning_KVM
 +  * CPU-Flags: https://blog.incase.de/index.php/cpu-feature-flags-and-their-meanings/
 +  * https://libvirt.org
 +  * https://libvirt.org/storage.html#StorageBackendLogical
 +  * https://www.ovirt.org/Develop
 +  * https://qemu-buch.de/de/index.php/QEMU-KVM-Buch/_Speichermedien/_VM-Snapshots
 +  * https://serverfault.com/questions/119949/how-to-copy-kvm-disk-image-to-lvm
 +  * https://doc.opensuse.org/documentation/html/openSUSE/opensuse-kvm/sec.libvirt.stornet.storage.html
 +  * https://redes-privadas-virtuales.blogspot.com/2011/05/taking-snapshots-on-kvm-with-lvm.html
 +  * https://redes-privadas-virtuales.blogspot.de/2011/03/taking-snapshots-on-kvm-with-libvirt.html
 +  * https://blog.allanglesit.com/2011/03/linux-kvm-managing-disk-images/
 +  * https://www.centos.org/docs/5/html/5.2/Virtualization/chap-Virtualization-Managing_guests_with_virsh.html
 +  * https://redes-privadas-virtuales.blogspot.com/2011/03/taking-snapshots-on-kvm-with-libvirt.html
 +  * https://wiki.kartbuilding.net/index.php/KVM_Setup_on_Debian_Squeeze
 +  * CPU-Affinität: https://docs.fedoraproject.org/en-US/Fedora/13/html/Virtualization_Guide/ch25s06.html
 +  * RAID, LUKS, LVM, KVM: https://serverfault.com/questions/453198/high-i-o-latency-with-software-raid-luks-encrypted-and-lvm-partitioned-kvm-setu
 +  
 +====IO====
 +  * https://careers.directi.com/display/tu/Understanding+and+Optimizing+Disk+IO
 +  * https://www.open-attic.org/blog/openattic-blog-einzelansicht/title/xfs-als-basis-fuer-performante-virtualisierung.html
 +
 +=====Tipps=====
 +====Migration====
 +  * https://serverfault.com/questions/156502/how-do-i-migrate-a-kvm-guest-from-host-to-another (letzter Beitrag)
 +  * https://libvirt.org/migration.html
 +
 +====PCI-Geräte zur KVM-Maschine durchreichen====
 +https://www.linux-magazin.de/Heft-Abo/Ausgaben/2010/04/Was-ist-schon-real
 +
 +Ein anderer Einsatz für Grafikkarten, der auch ohne KVM funktioniert könnte irgendwann Folgender sein: https://www.nvidia.de/object/vgx-remote-desktop-virtualization-de.html.
 +
 +=====KVM auf einem USB-Stick=====
 +  * https://www.pro-linux.de/artikel/2/1535/3,einleitung.html
 +
 +====Umgang mit Images====
 +https://blog.allanglesit.com/2011/03/linux-kvm-managing-disk-images/
 +
 +====Speicher sparen mit KSM====
 +KSM = [[https://www.linux-kvm.org/page/KSM|Kernel Samepage Merging]]
 +
 +Die Speicherbereiche, die mehrfach vorhanden sind, werden zusammengelegt. Der Daemon ksmd läuft deshalb die ganze Zeit und kümmert sich darum.
 +
 +Mit folgendem, etwas geänderten Kommando ([[https://bud-it.blogspot.de/2010/01/enabling-ksm-on-gentoo.html|von diesem Blog]]) kann man sich anzeigen lassen, wie viel Speicher gemeinsam genutzt wird:\\
 +<code>
 +echo "How many shared pages are being used: $(( $(cat /sys/kernel/mm/ksm/pages_shared) * $(getconf PAGESIZE) / 1024 / 1024 ))MiB"
 +echo "How many more sites are sharing them i.e. how much saved: $(( $(cat /sys/kernel/mm/ksm/pages_sharing) * $(getconf PAGESIZE) / 1024 / 1024 ))MiB"
 +</code>
 +===Beispiele und frei gewordener RAM===
 +  * KVM Host mit 5 VMs und Minecraft-Servern: 1525 MiB bis 1868 MiB
 +  * KVM Host mit 7 VMs: 802 MiB
 +
 +=====Unsortiert=====
 +KVM und Bridges:
 +  * https://www.linux-kvm.org/page/HOWTO1
 +  * https://davemorris.wordpress.com/2010/11/22/kvm-snapshot-backups-with-qemu-img/
 +  * https://tldp.org/HOWTO/BRIDGE-STP-HOWTO/set-up-the-bridge.html
 +  * https://libvirt.org/formatsnapshot.html#example
 +  * https://blog.datentraeger.li/?p=921
 +  * https://www.linux-kvm.org/page/Virtio
 +  * https://libvirt.org/formatnetwork.html#elementsAddress
 +  * https://wiki.libvirt.org/page/Networking
 +  * https://www.linux-kvm.org/page/Main_Page
 +  * https://inqbus-hosting.de/support/dokumentation/docs/debian-unter-kvm-mit-libvirt
 +  * https://debianforum.de/forum/viewtopic.php?f=30&t=128367
 +  * https://wiki.kartbuilding.net/index.php/KVM_Setup_on_Debian_Squeeze#Network_Setup_with_KVM
 +  * https://qemu-buch.de/de/index.php/QEMU-KVM-Buch/_Netzwerkoptionen/_Virtuelle_Netzwerke_konfigurieren/_Mehrere_QEMU/KVM-Instanzen_vernetzen/_Bridging
 +  * https://riaschissl.blogspot.com/2009/08/debiankvm-proxyarp-for-individual-ip.html
 +  * https://alexeytorkhov.blogspot.de/2009/09/mounting-raw-and-qcow2-vm-disk-images.html
 +  * https://libvirt.org/formatdomain.html#elementsDisks
 +  * https://help.ubuntu.com/community/KVM/CreateGuests
 +  * https://www.techotopia.com/index.php/Installing_a_KVM_Guest_OS_from_the_Command-line_%28virt-install%29
 +  * https://libvirt.org/formatdomain.html#elementsNICSBridge
 +  * https://wiki.libvirt.org/page/Networking#Debian.2FUbuntu_Bridging
 +  * https://wiki.debian.org/KVM
 +  * https://www.linux-kvm.org/page/Migration
 +  * https://www.linux-kvm.org/page/Networking
 +  * https://www.linux-kvm.org/page/Main_Page
 +  * https://en.wikipedia.org/wiki/Comparison_of_platform_virtual_machines
 +  * https://virt.kernelnewbies.org/TechComparison
 +  * https://virt.kernelnewbies.org/InterWiki
 +  * https://www.linux-kvm.org/page/Networking
 +  * https://qemu-buch.de/de/index.php/QEMU-KVM-Buch/_Netzwerkoptionen/_Virtuelle_Netzwerke_konfigurieren
 +  * https://wiki.libvirt.org/page/Networking
 +  * https://pve.proxmox.com/wiki/Vision
 +  * https://mlists.in-berlin.de/pipermail/linux-l-mlists.in-berlin.de/2009-December/066096.html
 +  * https://bwachter.lart.info/linux/bridges.html
 +  * https://www.linux-magazin.de/Heft-Abo/Ausgaben/2004/12/Zugbruecke/%28offset%29/2
 +  * https://qemu-buch.de/de/index.php/QEMU-KVM-Buch/_Speichermedien/_Images_anlegen
 +  * https://www.linux-kvm.org/page/9p_virtio
 +
 +=====Häufige Probleme=====
 +====IO Performance====
 +Häufig gibt es bei KVM Probleme mit der IO Performance von Maschienen.\\
 +
 +Generell gibt es hier einige Dinge die man beachten sollte:
 +  * Als Schnittstelle sollte wenn möglich immer VIRTIO genutzt werden.
 +  * Auch sollte der Scheduler der Platte auf "noop" gestellt werden:\\ <code># echo noop > /sys/block/sda/queue/scheduler</code>\\ Alternativ kann man "elevator=noop" in zu den Kernelparametern hinzufügen.
 +  * Auch lässt sich von der Performance her folgendes sagen (von links nach rechts abnehmend): LVM > raw-image > qcow2
 +
 +Informationen zum qcow-Format: https://people.gnome.org/~markmc/qcow-image-format.html.
 +
 +====Speicherauslastung====
 +Falls öfters mal der OOM-Killer (Out of Memory) zuschlägt: https://www.hskupin.info/2010/06/17/how-to-fix-the-oom-killer-crashe-under-linux/.
 +
 +{{tag>KVM Virtualisierung niew}}