Unser Wechsel von VMware auf Proxmox

Fast 20 Jahre haben wir von der CIIT Software unsere Infrastruktur auf VMware vSphere betrieben. Die Übernahme VMwares durch Broadcom und die damit einhergehenden Änderungen in den Lizenzierungs- und Preismodellen haben uns gezwungen, die Virtualisierungsplattform zu wechseln. Nach einer mehrmonatigen Evaluierungs- und Planungsphase haben wir schließlich im März dieses Jahres erfolgreich auf Proxmox migriert. Wir beschreiben hier unsere Motivation, Erfahrungen, Fallstricke und die wesentlichsten Unterschiede, die sich für uns dadurch ergeben haben. 

Warum haben wir gewechselt?

Grund für die Migration waren die steigenden Lizenzkosten, die sich bei einem Verbleib bei VMware etwa verzehnfacht hätten. Der Hauptgrund ist Broadcoms Wechsel von einem sockel-/hostbasierten Lizenzmodell zu einem corebasierten Lizenzmodell, das darüber hinaus von einer unbefristeten Lizenz auf ein abonnementbasiertes Lizenzmodell umgestellt wurde. Für ein kleines Unternehmen bedeutet das eine Kostensteigerung, die sich bei der eigenen Infrastruktur zulasten des Gewinns niederschlagen würde. Bei der für Kunden betriebenen Infrastruktur würde dies in einer Preiserhöhung resultieren.

VMware vSpheres Lizenzkosten bei unseren 148 Cores auf insgesamt 6 Sockeln in der Infrastruktur:

Lizenz

Preis / Core

Anzahl Cores

€ netto / Jahr

vSphere Standard

56

148

8.288

vSphere Enterprise

173

148

25.604

vSphere Foundation

215

148

31.820

Auf diese Kosten folgen die Kosten für eine Backup-Software. Hierzu führe ich einen Vergleich der führenden Anbieter Veeam und Acronis an.

Zunächst Veeam:

Lizenz

Preis / 5 VM

Anzahl VMs

€ netto / Jahr

Veeam Data Platform Essentials

388

79

6.130

Acronis ist unsere bevorzugte Backup-Lösung aufgrund der von uns beobachteten höheren Zuverlässigkeit gegenüber Veeam. Es bringt folgende jährliche Kosten mit sich:

Lizenz

Preis / Host

Anzahl Hosts

€ netto / Jahre

Acronis Cyber Protection

452

5

2.260

Die minimalen Lizenzkosten für den Betrieb unserer Virtualisierungsinfrastruktur betragen damit € 10.548 pro Jahr.

Warum betreiben wir nicht in der Cloud? - Ein Kostenvergleich

Unterhält man sich mit IT Professionals, die sich seltener mit den tatsächlichen Kosten von Virtualisierung beschäftigen oder selbst in der Cloud betreiben, kommt schnell die Frage auf, warum man denn nicht in der Cloud betreibe.

Die Antwort darauf ist einfach: Die Kosten dafür betragen ein Vielfaches bei etwa gleichem Verwaltungsaufwand.

Minimale Kosten bei Betrieb in Cloud

Ein kleines Rechenbeispiel: Eine minimale, von uns benötigte VM in der Google Cloud betrieben, produziert Kosten von mindestens € 30 pro Monat. Bei unseren 79 VMs wären die Minimalkosten folgenderweise zu berechnen:

79 * 30

= 2.370,- pro Monat

= 28.440,- pro Jahr

Hier wurde allerdings eine kleine VM als Referenz genommen. Sobald VMs höhere Anforderungen an RAM, Storage oder CPU haben, steigen auch die Kosten nochmals drastisch. Wir nehmen die Kosten für Backup-Software (auch in der Cloud müssen Backups erstellt werden), mit minimal € 2.000 an.

Somit würden die minimalen Gesamtkosten € 30.440 pro Jahr betragen.

Hardwarekosten bei Betrieb in eigener Infrastruktur

Betrachtet man die Kosten von zwei leistungsfähigen Servern, welche diese Last tragen können (wobei auch ein Failover auf eine Maschine möglich wäre), so hat man etwa € 30.000 Hardwarekosten verteilt auf 5 Jahre. Dies bedeutet € 6.000 pro Jahr. Hinzu kommen Stromkosten. Wir gehen von 230 Watt für einen Server, also von 460 Watt für beide Server, aus.

Dies macht pro Jahr:

460 W * 24 h * 365 ~ 4.000.000 Wh = 4.000 kWh

Die Kilowattstunde nehmen wir mit 21 Cent netto an. Damit liegen wir bei:

4.000 * 0,21 = € 840 pro Jahr

Hardware- und Stromkosten zusammengerechnet, ergibt dies also € 6.840 (netto) pro Jahr.

Kosten: Proxmox

Proxmox bietet unterschiedliche Support-Level an, die in weiterer Folge Auswirkungen auf die Kosten haben. Wir rechnen, wie im oben angeführten VMware-Beispiel, mit dem günstigsten kommerziellen Modell:

Variante

Preis / Sockel

Anzahl Sockel

Preis / Jahr

Proxmox Open Source

0

6

0

Proxmox Basic

115

6

690

Proxmox Standard

530

6

3.180

Proxmox Premium

1.060

6

6.360

Kosten: Proxmox Backup-Server

Hinzu kommen die Kosten für Backups. Hier setzen wir den Proxmox Backup-Server (PBS) ein, welcher eine exzellente Lösungen für unsere Anforderungen darstellt. PBS ist vom Funktionsumfang mit Veeam und Acronis vergleichbar, ist nach unseren Erfahrungen aber wesentlich zuverlässiger was Konsistenz der Backups und Fehleranfälligkeit angeht.

Variante

Preis / Jahr

PBS Open Source

0

PBS Community

540

PBS Basic

1.080

PBS Standard

2.160

PBS Premium

4.320

Die Minimalkosten bei Proxmox liegen also bei 0, die Maximalkosten bei:

6360 (Proxmox VE Premium) + 4320 (Proxmox Backup) = € 10.980 (netto) pro Jahr 

Wir gehen allerdings von einer moderaten „Basic“-Lizenzierung aus. Bei dieser belaufen sich die jährlichen Kosten auf:

690 + 1080 = € 1770 (netto) pro Jahr

Kostenvergleich

Damit kommen wir zu folgender Kostendifferenz:

Variante

Kosten Cloud bzw. eigene Hardware

Lizenz Virtualiserungsplattform

Netto Gesamtkosten / Jahr in €

Cloud

28.440

0

28.440

Eigene Server VMware

6.840

10.548

17.388

Proxmox Basic Lizenz

6.840

1.770

8.610

Proxmox ohne Support

6.840

0

6.840

Damit sehen wir, dass der Betrieb in der Cloud mit Abstand die teuerste aller Varianten darstellt, gefolgt von VMware in der eigenen Infrastruktur und schließlich den unterschiedlichen Proxmox-Varianten.

Die günstigste Proxmox-Variante macht, von den Kosten her, weniger als ein Drittel der Cloud-Variante aus. Zusätzlich bedeutet eine lizenzierte Proxmox-Supportvariante eine Halbierung der Kosten gegenüber der günstigsten VMware-Variante.

Andere Alternativen zu VMware

Wir haben im Kostenvergleich schon vorgegriffen und die Kosten für Proxmox ermittelt. Was wären andere Alternativen zu VMware?

Alternative

Stärken

Einschränkungen

Proxmox VE

  • Open Source,
  • Intuitive Web-GUI
  • Kombiniert VMs & Container
  • Clusterfähig
  • Aktive Community
  • Weniger Enterprise-Funktionen, z. B. bei Rollenrechten und Storage Policies

Hyper-V

  • Gut integriert in Windows-Umgebungen
  • Oft in Server-Lizenzen enthalten
  • Stabil und verbreitet
  • Wenig flexibel in heterogenen Umgebungen
  • Teils komplexe Verwaltung (z. B. PowerShell)

Red Hat Virtualization / oVirt

  • Gute Linux-Integration
  • Open-Source-Basis
  • Enterprise-orientiert (RHV)
  • RHV wird eingestellt
  • oVirt hat begrenzten Support & geringere Verbreitung

Nutanix AHV

  • In Nutanix-Plattform integriert
  • Keine Extra-Lizenzkosten für Hypervisor
  • Einfach skalierbar
  • Nur mit Nutanix-Stack sinnvoll
  • Starker Vendor Lock-in

XCP-ng / Xen

  • Moderne Open-Source-Alternative mit guter Web-Verwaltung (Xen Orchestra)
  • Stabiler Unterbau
  • Kleinere Community
  • Einrichtung teils komplexer als bei Proxmox

KubeVirt

  • Moderne Lösung für DevOps
  • Kombiniert Container & VMs
  • Zukunftssicher in Cloud-nativen Umgebungen
  • Hohe Einstiegshürde
  • Kubernetes-Know-how nötig
  • Weniger geeignet für klassische IT

Neben Proxmox haben wir XCP-ng in einer Probeinstallation evaluiert.

Proxmox vs. XCP-ng

  • XCP-ng versucht durch einige Hürden beim Download und bei der Installation zu verhindern, dass eine unlizenzierte Variante der OpenSource-Software betrieben wird. Dieses Gebaren deutet darauf hin, dass das dahinterliegende Unternehmen bewusst an der Verwendung der kostenfreien Variante hindern möchte. Als Betreiber:in muss man so selbst den Build der Software vor der Installation durchführen.
  • XCP-ng hat keine freie Backup-Lösung, die inkrementelle und deduplizierende Backups ermöglicht. Neben der XCP-ng-eigenen Lösung gibt es auch Drittanbieter, die kommerzielle Backup-Lösungen anbieten.
  • Die WebUI benötigt eine eigene Installation, ähnlich dem vCenter-Server bei VMware. Dieses Konzept ist dem von Proxmox unterlegen. Bei Proxmox hat jeder Knoten eine WebUI, über die der gesamte Cluster konfiguriert werden kann. Das bedeutet: Solange zumindest ein Knoten verfügbar ist, ist auch eine Bedienung über die WebUI möglich – ein Traum aus Administrationssicht.
XO-Lite Overview
  • Der entscheidende Unterschied zwischen XCP-ng und Proxmox ist, dass XCP-ng auf Xen basiert, Proxmox hingegen auf KVM. KVM ist fest in den Linux-Kernel integriert, ist die modernere Technologie, hat eine sehr große und lebendige Community und wird auch von vielen namhaften Cloud-Anbietern als Basis verwendet. Beispiele sind: Amazon, Ionos, Google, IBM, DigitalOcean, etc. Sowohl Amazon als auch Google haben übrigens von XEN auf KVM migriert.

Warum wir uns für Proxmox entschieden haben

Proxmox Virtual Environment
  • Proxmox hat überragende Funktionalität bei sehr moderaten bis gar keinen Kosten.
  • Das Unternehmen ist in Wien ansässig.
  • Das Clusterkonzept mit eigenständiger UI auf jedem Knoten ist überragend. 
  • Die Backup-Software ist großartig, hat alle benötigten Features und ist äußerst zuverlässig.
  • Der Cluster kann sich mit dem VMware-Server verbinden und von dort virtuelle Maschinen direkt und selbstständig importieren.
  • Unser Hardware-Lieferant (Thomas Krenn) bietet Proxmox-zertifizierte Hardware an.
  • Proxmox ist auch vollständig über die Konsole konfigurierbar und verwendet Standard-Linux-Konzepte für Virtualisierung und Storage (KVM, LVM, Debian Linux).
  • Proxmox liefert eine wirklich exzellent funktionierende Hochverfügbarkeit und Life Migration von VMs an. Eine VM kann ohne Probleme (auch bei lokalem Storage) während des Betriebs zwischen den Knoten verschoben werden – ein Feature, das bei VMware teuer erkauft wird und in der hier im Kostenvergleich kalkulierten Variante nicht enthalten wäre.

Proxmox Backup-Server

Ein wirklich entscheidendes Feature ist, wie schon oben angeführt, der Proxmox Backup-Server. Er ist eine eigenständige Instanz, die auch virtualisiert betrieben werden kann. An ihn wird der Backup Storage, beispielsweise über iSCSI oder NFS gemountet. Die Backups erfolgen anschließend in diesen gemounteten Storage. Natürlich kann auch lokaler Storage des Backup-Servers verwendet werden. Der Backup-Server wird in Proxmox VE dann als eigener Storage-Typ eingebunden.

Proxmox Backup-Server

Die Backups gegen den Backup-Server sind automatisch inkrementell und deduplizierend. Da das Backup basierend auf Snapshots erfolgt, gibt es keinerlei Unterbrechung des Betriebs der VM. 

Der Backup-Server kann selbstständig zwischen zwei Storages replizieren, um eine Redundanz der Backups zu erreichen. Außerdem gibt es automatisierte Jobs zum Pruning, zur Garbage Collection und zur Verifizierung der Backups. All diese Funktionen können feingranular über die WebUI eingestellt werden. Schließlich ist es noch möglich, Daten am Backup-Server verschlüsselt abzulegen.

Backups in der Cloud

Die bei uns durchgeführten Backups sind redundant in zwei unterschiedlichen Gebäuden untergebracht. Dafür wird die Replikationsfunktion des Backup-Servers verwendet. Zusätzlich erstellen wir Backups in der Cloud, um jenen Katastrophenfall abzudecken, in dem beide lokale Backups beschädigt werden. Für die Cloud Sicherung könnte man zwar Amazon S3 oder Google Cloud Buckets in den Backup-Server mounten, das Backup scheitert allerdings, da diese Storage-Typen bestimmte vom Backup-Server verwendeten Fileoperationen nicht unterstützen.

Der gangbare Weg, Backups in der Cloud zu machen, ist ein anderer: Man installiert eine Instanz des Backup-Servers in der Cloud mit entsprechend direkt angebundenem Storage dahinter. Danach bindet man diesen Cloud Backup-Server in den lokalen Proxmox-Cluster ein. Dies stellt eine hervorragende Lösung dar, welche äußerst zuverlässig funktioniert. Mittlerweile gibt es auch darauf spezialisierte Anbieter, wie beispielsweise den niederländischen Anbieter Tuxis. Dieser bietet vorkonfigurierte Proxmox Backup-Server an, die einem innerhalb weniger Minuten zur Verfügung stehen. Beim Backup in die Cloud ist die von Proxmox Backup-Servern unterstützte Verschlüsselung essenziell. 

Fallstricke bei der Migration

Für die Implementierung der Hochverfügbarkeit verzichten wir aus Performancegründen auf zentralen, geteilten Storage. Das heißt, VMs und Daten liegen direkt am jeweiligen Host, auf dem die Maschine betrieben wird. Dieser Betrieb nutzt die überragende Performance der verwendeten NVMe-basierten Hardware RAID Arrays – kein Vergleich zu einem über Kabel angebundenen Storage-Systems.

Einen Nachteil stellt der Failover dar. Um einen schnellen Failover zu implementieren, ist eine ständig laufende Life-Replikation der virtuellen Maschinen notwendig. Hier macht uns eine Einschränkung von Proxmox zu schaffen: Replikation ist nur möglich, wenn ZFS als basierendes Dateisystem verwendet wird. Das wäre noch kein Problem, aber: ZFS darf nicht auf einem Hardware RAID Array verwendet werden. Das bedeutet, es müsste der Disk-Betrieb auf JBOD-Modus umgestellt werden und darauf basierend ein ZFS Array verwendet werden.

Da wir mit ZFS Arrays bisher keine Erfahrung gemacht haben und laut Berichten ZFS Arrays Performance-Nachteile gegenüber Hardware Arrays aufweisen, haben wir vorerst auf diese Umstellung verzichtet.

Die Funktionalität der Replikation von VMs bleibt uns daher bis auf Weiteres verwehrt. Wir hoffen auf Weiterentwicklungen des Replikationsfeatures bei Proxmox, sodass auch LVM-basierter Storage unterstützt wird.

Resümee

Proxmox bietet eine herausragende Funktionalität und Stabilität zu sehr geringen Kosten. Das Backup-Konzept ist den Herstellern Veeam und Acronis aus unserer Erfahrung überlegen – vor allem in Bezug auf Zuverlässigkeit, aber auch bezüglich Performance.

Die Konfiguration über die UI ist sehr gut. Alternativ kann auch auf Shell-Ebene konfiguriert und gescriptet werden.

Die Verbreitung von Proxmox nimmt rasant zu – es gibt eine riesige Community. Die zugrundeliegende KVM-Technologie ist Teil des Kernels und unterliegt einer lebendigen und stetigen Weiterentwicklung. Dieselbe Virtualisierungstechnologie wird auch in den Clouds von Amazon und Google verwendet.

Und zu guter Letzt: Wir laufen nicht wieder Gefahr, durch einen Hersteller erpresst oder im Stich gelassen zu werden.

DevOps

DevOps: Eine Kulturelle und Technische Revolution in der Softwareentwicklung DevOps, ein zusammengesetztes Wort aus „Development“ (Entwicklung) und „Operations“ (Betrieb), steht für eine Reihe von Praktiken,

Weiterlesen »

Service Level Agreement

Service Level Agreement: Sicherstellung von Qualität und Zuverlässigkeit in der Dienstleistung Ein Service Level Agreement (SLA) ist ein wesentlicher Bestandteil in der Beziehung zwischen Dienstleistern

Weiterlesen »