iX 9/2017
S. 66
Review
Virtualisierungs-Linux
Aufmacherbild

VMs und Container mit Proxmox VE 5.0

Stapelarbeit

Mit der Proxmox Virtual Environment lassen sich virtuelle Maschinen und Linux-Container gleichzeitig nutzen. Die clusterfähige Virtualisierungssoftware basiert in Version 5.0 auf Debian GNU/Linux 9 „Stretch“ und bietet Replikationen auf ZFS-Basis.

Seit mehr als neun Jahren bietet die in Wien ansässige Proxmox Server Solution GmbH ihre Virtual Environment (VE) an. Die Virtualisierungssoftware soll durch eine einfache Konfiguration und ihren universellen Einsatz bestechen. Hierzu basiert die Distribution auf Debian GNU/Linux, sie hat das Team rund um Martin und Dietmar Maurer um Funktionen für den QEMU/KVM-Hypervisor, Linux-Container (LXC), Ceph/Gluster/ZFS, hochverfügbares Clustering und ein Web-GUI erweitert.

Ausgabe 5.0 der Software baut auf Debian 9 „Stretch“ mit einem modifizierten 4.10-Kernel auf [1]. Bereits mit Version 4.0 ist Proxmox VE bei Linux-Containern von OpenVZ auf LXC [2] gewechselt. Das hatte den Vorteil, dass das Projekt nicht mehr den für OpenVZ notwendigen, stark modifizierten und in die Jahre gekommenen RHEL-2.6.32-Kernel verwenden musste, sondern auf einen aktuellen Standard-Kernel umsteigen konnte – alle benötigten Funktionen für LXC sind seit Linux 3.18 vorhanden. Trotz aller Backports des RHEL-Kernels bietet ein aktuelles Linux nicht nur viele neue Funktionen, sondern auch eine deutlich bessere Unterstützung aktueller Serverhardware. Proxmox VE 5.0 enthält den neuen LXC-Zweig in der Version 2.0.8.

QEMU/KVM trifft LXC

Den Hypervisor bildet die bekannte Kombination aus KVM (Kernel-based Virtual Machine) und QEMU (Quick Emulator). KVM ist ebenfalls Teil des Linux-Kernels, bei QEMU verwendet Proxmox VE die aktuelle Version 2.9. Das ist auf einem Server durchaus wichtig, denn erst mit dieser Ausgabe unterstützen interne QEMU-Komponenten wie der Tiny Code Generator (TCG) Multithreading, wodurch die vCPUs einer VM nicht mehr gemeinsam auf einem einzelnen Host-Kern laufen müssen. Mit Proxmox VE 5.0 können Nutzer direkt alle Linux-Gäste, Windows 2000 bis 10 und Solaris als VM betreiben. Über Other OS laufen aber beispielsweise auch FreeBSD 11 und OpenBSD 6.1.

Beim Storage lässt Proxmox VE 5.0 kaum Wünsche offen. Lokal unterstützt es LVM mit ext3/ext4, XFS und vor allem ZFS mit allen Features. Im Netz lassen sich FC, NFS und iSCSI einbinden und verteilte Speichersysteme wie Ceph RDB, Sheepdog oder GlusterFS nutzen. Gerade in Verbindung mit ZFS oder ZFS over iSCSI lassen sich einfach Live-Backups beziehungsweise Snapshots anlegen und im Netz sichern. Für VMs und Container lassen sich VLANs und pro Host bis zu 4094 Bridges definieren, die Software ist ferner IPv4- und IPv6-fest und verwendet Open vSwitch. Die spezielle Firewall ist clusterfähig und lässt sich auf Datacenter-, Host- und VM-/Container-Ebene konfigurieren.

Für die Authentifizierung steht neben dem Linux-üblichen PAM ein spezieller Proxmox VE Authentification Server bereit, außerdem können Administratoren sie über eine Anbindung an Microsofts Active Directory (AD) oder LDAP vornehmen. Für erhöhte Sicherheit sorgt eine optionale Zwei-Faktor-Authentifizierung über zeitbasierte Einmalpasswörter oder den YubiKey. Der Systemverwalter kann fein granuliert administrative Rollen auf dem Proxmox-VE-Server oder im -Cluster vergeben, hier lohnt ein Blick ins Proxmox-Wiki (siehe „Alle Links“).

Schnell eingerichtet

Eine Besonderheit von Proxmox VE ist seit jeher das einfache Installieren, inklusive der HA-Cluster-Konfiguration. In wenigen Minuten steht ein ausfallsicherer Cluster betriebsbereit zur Verfügung. Ausgabe 5.0 lässt sich direkt aus dem Installer heraus auf ZFS aufsetzen. Wichtige Optionen wie ashift=12 für 4k-Sektoren moderner Festplatten und SSDs sowie die leistungssteigernde Kompression sind voreingestellt. Neben den üblichen RAID-Setups für ZFS lässt sich sogar ein einzelnes Laufwerk nutzen, dabei müssen Administratoren aber copies=2 einstellen, um alle Datensektoren doppelt auf einem einzelnen Laufwerk zu speichern. Das schützt nicht vor einem Ausfall der Hardware, bietet aber durch die Redundanz eine Selbstheilung bei erkannten Lesefehlern (Bitrotting). Die Option kostet spürbar Zeit bei I/O-Zugriffen und man sollte sie – wenn überhaupt – ausschließlich für das Basissystem in Betracht ziehen. Eine übliche Konfiguration mit dem root-Dateisystem auf ZFS bietet alle Vorteile der Storage-Software wie Redundanz, Fehlererkennung, Selbstheilung und Snapshots. Standardmäßig schlägt der Installer ext4 mit ext3 und xfs als Alternativen für das root-Dateisystem vor. Die Lokalisierung, ein administratives Passwort samt E-Mail sowie die Netzwerkeinstellungen vervollständigen das Setup. Nach dem Neustart kann sich der Systemverwalter auf der Textkonsole oder via SSH einloggen. Alternativ steht unter der angezeigten Adresse (z. B. https://10.0.0.200:8006) die grafische Verwaltungsoberfläche im Webbrowser bereit.

Proxmox VE 5.0 ist in wenigen Minuten installiert und unterstützt ZFS bereits bei der Installation (Abb. 1).

Der root-Zugang per SSH ist im Gegensatz zu einer regulären Debian-Installation über ein Kennwort erreichbar. Aus Sicherheitsgründen sollte man auf passwortlose SSH-Keys umschwenken. Weitere administrative Konten für unterschiedliche Aufgaben lassen sich über das Web-GUI einrichten. Die User-Management-Dokumentation klärt über deren Rechte und Optionen sowie weitere Begriffe wie Pfade, Objekte, Pools, Privilegien und Zugriffsrechte im Proxmox-VE-Kontext auf.

Die Paket- und Security-Repositories von Debian sind in der /etc/apt/source.list voreingestellt. Die Datei /etc/apt/sources.list.d/pve-enterprise.list hingegen enthält den Link auf das kostenpflichtige Enterprise-Repository mit den Paketen von Proxmox. Um darauf Zugriff zu erhalten, muss man einen Support-Vertrag abschließen, der sich an den vorhandenen CPU-Sockeln orientiert. Ihre Anzahl zeigt cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc l an.