Benutzer-Werkzeuge

Webseiten-Werkzeuge


 [[anwenderwiki:virtualisierung:kvm:kvm_convirt]] 

Virtualisierung mit KVM und ConVirt als web-GUI (in Arbeit)

KVM ist ein Hypervisor, der auf einem Linux-Kernel aufsetzt. Dieser Kernel muss zunächst auf der Hardware installiert werden.

1. Zuerst ubuntu-server 10.04 LTS installieren

Hinweis: Unter ubuntu 12.04 verläuft die Installation anders als hier beschrieben!

  • Den Server z.B. den Namen „ubuntuserver“ geben, so dass die paedML später problemlos „server“ genannt werden kann.
  • Zusätzlich das Paket „openSSH Server“ bei der Installation auswählen.
  • Den Server mit LVM installieren, so dass später für jede virtuelle Maschine eine Logical-Volume-Disk verwendet werden kann: Geführt → ganze Platte + LVM
  • Nutzender Anteil: 50 GB von insgesamt 500 GB (diese 50GB sind für den ubuntuserver selbst)

Nach Installation empfiehlt es sich dem user root ein Passwort zu geben, so dass man sich danach als root direkt anmelden kann:

# sudo passwd root

Nach der Installation kann man prüfen, ob der Prozessor Virtualisierungsbefehle unterstützt:

# egrep -c '(vmx|svm)' /proc/cpuinfo

Dieser Befehl sollte als Ausgabe die Zahl 1 oder größer liefen, so dass ein oder mehrere Prozessorkerne mit Virtualisierungserweiterungen vorhanden sind.

Die externe IP des ubuntu-Servers im DSL-Router-Netz ist im Folgenden 192.168.200.110. Mit dieser IP kann man nun den Ubuntu-Server per ssh oder später per Web-Interface von ConVirt kontaktieren.

2. KVM installieren

Zunächst als root anmelden.

# apt-get update
# apt-get dist-upgrade
# apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
# apt-get install kvm-pxe

Eingaben:

  • Emailserver: nur lokal

Dabei wird neben KVM auch qemu und PXE für LINBO installiert. Qemu stellt die gesamte virtuelle Hardware zur Verfügung.

3. ConVirt installieren

Quellen in der Datei /etc/apt/sources.list freigeben:

deb http://archive.canonical.com/ubuntu lucid partners
deb-src http://archive.canonical.com/ubuntu lucid partners

und dann die Pakete installieren:

# apt-get update
# apt-get install convirt2 convirture-tools
# apt-get install ssh kvm socat dnsmasq uml-utilities lvm2 expect

Eingaben:

  • kein neues mysql-root-Passwort (mehrfach)

4. ConVirt setup

ConVirt im Webbrowser aufrufen. Benutzer und Erst-Kennwort lauten beide „admin“.

http://192.168.200.110:8081

Nun einen Server hinzufügen mit „Add Server“ und folgenden Punkten:

  • Platform: KVM
  • Host: 192.168.200.110

Für die Netzwerkeinrichtung sollte man nachfolgende Datei passend editieren und nicht ein automatisches Setuptool verwenden wie z.B. „convert-tool“.

5. Netzwerk einrichten

Das Netzwerk wird in der Datei /etc/network/interfaces eingerichtet.
Unser Ubuntu-Server hatte drei Netzwerkkarten:

eth0 Verbunden mit DSL-Router Management-Interface für den ubuntuserver
eth1 Verbunden mit internem Switch für grünes Netz des IPCop
eth2 Verbunden mit DSL-Router für rotes Netz des IPCop

Weitere Netzwerkkonfigurationen und Hinweise siehe → KVM virtuelle Netzwerke

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
      address 192.168.200.110
      netmask 255.255.255.0
      network 192.168.200.0
      broadcast 192.168.200.255
      gateway 192.168.200.1

# IPCop Green
auto eth1
iface eth1 inet manual

auto br1
iface br1 inet manual
  bridge_ports eth1
  bridge_fd 0
  bridge_stp yes
  bridge_maxwait 0

# IPCop Red
auto eth2
iface eth2 inet manual

auto br2
iface br2 inet manual
  bridge_ports eth2
  bridge_fd 0
  bridge_stp yes
  bridge_maxwait 0

Die Namensgebung „br1“ bzw „br2“ ist dabei frei.
„br1“ ist dann eigentlich ein Switch, an dem die Netzwerkkarte „eth1“ eingesteckt ist. In den Switch „br1“ werden schließlich auch alle Netzwerkinterfaces der virtuellen Maschinen „eingesteckt“, die mit dem grünen Netz verbunden werden sollen.

6. Virtuelle Maschinen erzeugen

Im folgenden arbeitet man am besten an einem PC, an dem man sowohl per Browser-Web-Gui Convirt konfiguriert als auch mit einem VNC-Viewer auf die Konsolen der virtuellen Maschinen Zugriff hat. Dieser PC muss sich im Netz des DSL-Routers 192.168.200.0 befinden.

Zunächst muss das Iso der paedML-Installations-CD auf den Ubuntu-Server am besten unter /var/cache/convirt/ abgelegt werden.

Als virtuelle Festplatten werden hier aus Performancegründen LVs verwendet, die Convirt in der Volume-Group (hier „ubuntu“) selbst anlegt.

Das Web-Interface von ConVirt ist erreichbar unter:

http://192.168.200.110:8081/

Nun den Punkt „Provision Virtual Machine“ aufrufen.
Achtung: Alle Optionen am Stück konfigurieren, da das nachträgliche Verändern der Settings nicht bei allen Optionen möglich ist.

Unsere Einstellungen:

IPCop Guest OS Linux - Debian
Speicher 512 MB
Storage Festplatte Options Create New Disk
Type Logical Volume
Location /dev/ubuntu/$VM_NAME.disk.xm
VM-Device hda (ide)
CD-Rom Options Use Iso File
Type Select Iso
Location /var/cache/convirt/paedML.iso
VM-Device hdc: CD-Rom
Netzwerk eth0 verbunden mit br1 - für green
eth1 verbunden mit br2 - für red
Miscellaneous apic, acpi 0, 0
paedML Guest OS Linux - Debian
Speicher 3072 MB
Storage Festplatte Options Create New Disk
Type Logical Volume
Location /dev/ubuntu/$VM_NAME.disk.xm
VM-Device vda (virtio)
CD-Rom Options Use Iso File
Type Select Iso
Location /var/cache/convirt/paedML.iso
VM-Device hdc:CD-Rom
Netzwerk eth0 verbunden mit br1 - für green virtio
Miscellaneous apic,acpi 1, 1

7. Virtuelle Server-Maschinen installieren

IPCop

IPCop auf Booten von CD-Rom umstellen und die Maschine starten. Das Grüne Interface wird dabei automatisch auf die ersten Netzwerkarte gesetzt, dies ist leider im Setup nicht umzukonfigurieren. Das Rote Interface so konfigurieren, als wäre es direkt mit dem DSL-Router verbunden, z.B. mit static - IP 192.168.200.111. Ansonsten alles wie im Administrator-Handbuch beschrieben.
Ggf. ein notwendiges Vertauschen der Netzwerkkarten-Zuordnung (br0 ↔ br1) mit dem Web-Interface von ConVirt durchführen.

paedML Server

paedML auf Booten von CD-Rom umstellen und die Maschine starten. Installation wie im Administrator-Handbuch. Dabei die „gesamte Platte“ verwenden und kein LVM, das ist in einer virtuellen Maschine nicht notwendig.

8. Virtuelle Client-Maschinen

Die Installations-Iso von WinXP, Ubuntu, Win7 … unter /var/cache/convirt/ ablegen.

Win7 Guest OS Windows - Windows 7
Speicher 3072 MB
Storage Options Create New Disk
Type Logical Volume
Location /dev/ubuntu/$VM_NAME.disk.xm
VM-Device hda Win7 bootet nicht von vda,
spätere Umstellung ist aber möglich
dazu muss vitio-Treiber installiert werden
Netzwerk rtl8139 verbunden mit br1 - für green
Miscellaneous apic,acpi 1, 1 notwendig
boot n

9. Erweiterungen

Auf dem Ubuntu-Server kann ein NFS-Share gemountet werden (z.B. /abc vom nasserver), das man dann an die virtuellen Maschinen weiterreicht:

# apt-get install nfs-client
# mount -t nfs nasserver:/abc /mnt/abc

Genaues Vorgehen ??? … bin noch am testen …

10. Fehlersuche

Status der Bridges abrufen:

# brctl show

Virtuell laufende Maschine aufrufen: PROBLEM: die ConVirt-Maschinen erscheinen hier nicht!

# virsh list



Volume Group auflisten:

# vgscan

Ausgabe:

Found Volume Group "ubuntu".



Logical-Volume auflisten:

# lvscan

Ausgabe:

ACTIVE /dev/ubuntu/root            50GB inherit
ACTIVE /dev/ubuntu/swap_1           2GB inherit
ACRIVE /dev/ubuntu/ipcop.disk.xm   10GB inherit
ACTIVE /dev/ubuntu/paedml.disk.xm 300GB inherit


 [[anwenderwiki:virtualisierung:kvm:kvm_convirt]] anwenderwiki/virtualisierung/kvm/kvm_convirt.txt · Zuletzt geändert: 2013/03/27 20:13 (Externe Bearbeitung)