libvirt_qemu_kvm

This is an old revision of the document!


Virtualisierung auf dem minad.de Server

Erstellen einer VM

 sudo virt-install -n user-vmname -r 512 --os-type=linux --os-variant=virtio26 --disk /var/lib/libvirt/images/user-vmname.img,device=disk,bus=virtio,size=1,sparse=true,format=raw -w network=default,model=virtio --graphics vnc,listen=127.0.0.1,port=9999999 --video cirrus --noautoconsole --location http://ftp.debian.de/debian/dists/testing/main/installer-amd64/

* -n → Name der VM * -disk → Image wird angelegt beim erstellen der VM, die größe ist mit size=1 angegeben, in Gigabyte * –graphics vnc,listen=127.0.0.1,port=9999999 → port immerwieder neu setzen, am besten im hohen 60000er bereich * –location → statt nem iso wird über netz gebootet. Im Beispiel wird Debian testing genommen, andere URLs siehe:

       Fedora/Red Hat Based
           http://download.fedoraproject.org/pub/fedora/linux/releases/10/Fedora/i386/os/
       Debian/Ubuntu
           http://ftp.us.debian.org/debian/dists/etch/main/installer-amd64/
       Suse
           http://download.opensuse.org/distribution/11.0/repo/oss/

Verbinden mit dem VNC client

  • Den Port der VNC verbindung von minad auf den Rechner leiten ( SSH ;) )
  • Um die Umstände in Zukunft zu vermeiden, Portforwarding nutzen

Der virt-manager ist eine GUI die sowohl lokale als auch remote laufende Hypervisor verwalten kann.

Einrichten der Verbindung

Erstellen einer VM

 (iptables -I FORWARD -m state -d 192.168.100.1/24 --state NEW,RELATED,ESTABLISHED -j ACCEPT) wird beim Systemstart automatisch gesetzt.
 iptables -t nat -I PREROUTING -p tcp --dport 65022 -j DNAT --to-destination 192.168.100.78:22

Das Gastsystem hat in dem Fall die IP 192.168.100.78, Dienst ist in dem Fall ssh :) Die erste Zeile ist für das Forwarding von Paketen auf die virbr0 (hat die IP 192.168.100.1, siehe “ip addr show”)

VM-hostname (IP) Anwendung Port
brot-vgentoo (192.168.100.183)rtorrent10797-10799 + udp:10797
brot-vgentoo (192.168.100.183)webentwicklung (webpy)10780(→80)
brot-vgentoo (192.168.100.183)ssh10722
brot-torvm (192.168.100.190)ssh59022(→22)
brot-torvm (192.168.100.190)tor59030,59001
brot-pyhole-ircbot (192.168.100.231)ssh60022(→22)
brot-owncloud (192.168.100.161)ssh61022(→22)
brot-owncloud (192.168.100.161)ssh61080(→61080)

Zur Virtualisierung wird KVM und die damit zusammenhängenden Tools verwendet :) Das heisst im Endeffekt

  • KVM virtualisiert die CPU
  • Qemu kümmert sich um den Rest der Hardware
  • Libvirt (daemon) als Interface um die VM's zu verwalten

Qemu ist mit SPICE Support kompiliert. Dadurch lassen sich die VMs auch im graphischen Modus recht ordentlich bedienen

  • libvirt_qemu_kvm.1322047519.txt.gz
  • Last modified: 2011/11/23 11:25
  • by brot