Xen Datacenter Setup

aus PUG, der Penguin User Group
Wechseln zu: Navigation, Suche
Xen logo.gif

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

Shared Storage

  • 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

Netwerkplan

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.

Messagebox info.png
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.

Blockgeräte