Xen Datacenter Setup
Inhaltsverzeichnis
Einführung
Diese Anleitung dient in erster Sache der Dokumentation einer ausfallsicheren Xen-Umgebung zur redundanten Konsolidierung von Datenzentren. Durch die Citrix XenServer Trail inspiriert und vom Preis der Enterprise Version abgeschreckt habe ich selbst ein Konzept entwickelt um eine Xen-Umgebung mit Live Migration Feature zu schaffen.
Hardware
Um möglichst viele Geräte zu konsolidieren sollte man sich mindestens 2 oder mehr Server mit viel RAM und 4 oder Mehr Kernen zulegen. Ich habe folgendes Setup pro System verwendet:
XenHost (dom0)
- 2 Xeon Quad Core
- 12 GB RAM
- 76GB SAS HDD
- min. 2 Netzwerkschnittstellen
- Raid 1, 10 oder 5+1
- schnelle Netzwerkverbindung
- Funktionierende Datensicherung
Im Idealfall sollte man hier gleich einen FiberChannel Controller für die SAN Anbindung einbauen. Da ich nicht die nötige FC Infrastruktur besitze, wähle ich den einfachen weg. Ein NFS Server wird als gemeinsamer Image-Speicher verwendet.
Natürlich gibt es verschiedene Möglichkeiten den gemeinsamen Speicher anzusprechen.
- iSCSI und ATA over Ethernet
- Sind ideal für die Virtualisierung da sie einen Blockweisen Zugriff auf das Dateisystem ermöglichen.
- NFS und CIFS / SMBFS
- Netzwerk Dateisysteme die den Zugriff auf Dateiebene bieten. Sie sind träger, da die gesamte Datei übertragen werden muss.
Setup
Netzwerk Plan
Als erstes planen wir das Netzwerk. Für eine Ideale Performance wähle ich eine Struktur mit getrennten Netzen. Hier soll gewährleistet sein, das die VMs selbst keine Verbindung über eth0 zum SAN bekommen und auch die Clients nicht vom SAN wissen. Das hat den Grund, das beim migrieren einer virtuellen Maschine der Speicher unverschlüsselt über das Netzwerk übertragen wird. Die Migration MUSS daher unbedingt in einem vertrauenswürdigen Netzwerk passieren. Zusätzlich reduziert man die Last auf den den Interfaces wodurch die Migration beschleunigt wird.
- Storage Network:
- 192.168.100.0/255.255.255.0
- Local Network
- 192.168.200.0/255.255.255.0
System Setup
Für die VM-Hostserver habe ich mich für Slackware 12.1 entschieden. Xen-3.2.1.tar.gz auf das system kopieren entpacken und make world ausführen.
eth0 und eth1 werden entsprechend des Netzwerkplan (siehe oben) konfiguriert und alle unnötigen Dienste werden deaktiviert (system-config-services). Ein DHCP und DNS Server werden im Moment nicht verwendet, da diese Server auch konsolidiert werden sollen.
Benutzer sollten auch nicht angelegt werden. Außer dem Systemverwalter hat niemand Zugriff zu den Xen-Servern. Auf SELinux sollte man unter keinen Umständen verzichten und die Firewall-Regeln können schon mal um die Ports 8002 und 8006 erweitert werden.
Firewall Ports: 22, 8002, 8006
Alle anderen Ports sind zu schließen |
NFS
Mit mount -t nfs <storage.ip>:/path/to/images /home/xen/images hängt nun den gemeinsamen Speicher auf den HostServern ein.