[[!meta title="Linux Virtual Machines (overview)"]] This document is ***WORK IN PROGRESS*** ## Introduction This article tries to summarise Linux Virtual Machine methods and is in its early stage. It does not focus on different types of hypervisors, but more on the issues and features you get with each hypervisor. ### Host Kernel Some supervisors need their own (modified Linux) kernel to operate, whereas others work with any Linux kernel. Though some of them again need some configurations to be turned on in the stock kernel. ## Comparision table [[!table data=""" Name | Host Kernel [QEMU](http://wiki.qemu.org/) | Original [KVM](http://www.linux-kvm.org/) | Original w/KVM [Linux Containers](http://lxc.sourceforge.net/) | Original w/Containers [User Mode Linux](http://user-mode-linux.sourceforge.net/) | Original [VMWare](http://www.vmware.com/) | Own [Xen](http://www.xen.org/) | Own """]] ## Raw import of notes The following notes I made some months ago, which will be the basis for this article. Try all of them and handle them via creature! Installation ------------ From host like lxc. From "inside" like KVM/QEMU/VMWare. status ------ eth: ip addresses / mac / dhcp VMWare ------ Commercial solution, modified Linux. ### lxc Not completly isolated. Linux only. Many changes to the guest os. Some scripts existent (lxc-debian, lxc-fedora). The latter does not work on debian. lxc-debian mit cache (schlau) no real hypervisor existent. mac / ipv4 management missing => creature adjust init. change dev. do not run udev (why?) Root open in the filesystem. Nice. Quota? Ressources are shared, if nothing else is specified. => network = all! First installation - than virtualisation! openvz ------ templates /vz/template/osname/osversion/vz-addons/ http://wiki.openvz.org/Introduction_to_virtualization vserver ------- http://linux-vserver.org/ virtualbox ---------- xen --- different host kernel kvm --- mac address, ip address => dhcp??? user-mode-linux --------------- libvirt ------- broken many many times. Bootstrapping ------------- how tos different methods which way for which vm-type Network ------- Always dhcp? Either on the vm-host or external. Reason: Easy to configure. Scales dynamically. How to handle bridges etc.? Independent of the os? Reuse OS [[!tag net unix]]