Virtualisierung Archiv - credativ®

Rückblick auf den Dutch Proxmox Day 2025

Am 25. September 2025 waren wir beim Dutch Proxmox Day 2025 in Ede (Niederlande) – und ich darf sagen: die Veranstaltung war rundum gelungen. Organisiert von Tuxis B.V. im Hotel Belmont in der Veluwe-Region, bot der Tag eine ausgezeichnete Mischung aus Fachvorträgen und wertvollem Austausch.

Dank an die Gastgeber

Ein herzliches Dankeschön an das Tuxis-Team: Für die Einladung als Speaker, für das entgegengebrachte Vertrauen und für die perfekte Organisation. Ja — dieser Blogartikel kommt etwas später, aber wie man sagt: besser spät als nie.

Meine Perspektive als Speaker

Als Speaker hatte ich das Vergnügen, Teil eines spannenden Programms zu sein. Gleichzeitig war ich Teilnehmer: beides zugleich – das macht solche Tage besonders. Einige Vorträge möchte ich hervorheben:

Ich konnte viele Impulse mitnehmen – sowohl technisch als auch ideell. Und ich habe gute Gespräche geführt, die sich sicherlich noch weiter auszahlen werden.

Networking & Austausch

Der informelle Teil war genauso wertvoll wie das Programm: in den Pausen, beim Mittagessen oder beim Get-together am Nachmittag haben wir neue Kontakte geknüpft, interessante Einblicke erhalten und alte Bekannte getroffen. Genau diese Momente machen eine Tagung lebendig.

Ausblick

Wir freuen uns jetzt schon auf nächstes Jahr. Wenn das Tuxis-Team wieder ruft, sind wir gern wieder mit dabei. Nochmals vielen Dank an alle Beteiligten, alle Speaker und alle Teilnehmenden – auf ein Wiedersehen. Zwischendurch gibt es in diesem Dezember das erste Open Source Virtualization Gathering bei uns im Haus.

VMs von VMware ESXi zu Proxmox migrieren

Als Reaktion auf die jüngsten Änderungen von Broadcom am VMware-Abonnementmodell überdenken immer mehr Unternehmen ihre Virtualisierungsstrategien. Angesichts wachsender Bedenken hinsichtlich Lizenzkosten und des Zugangs zu Funktionen wenden sich Unternehmen open source Lösungen zu, um mehr Flexibilität und Kosteneffizienz zu erzielen. Insbesondere Proxmox hat als praktikable Alternative große Aufmerksamkeit erlangt. Proxmox ist bekannt für seinen robusten Funktionsumfang und seine offene Architektur und bietet eine überzeugende Plattform für Unternehmen, die die Auswirkungen proprietärer Lizenzmodelle abmildern und gleichzeitig umfassende Virtualisierungsfunktionen beibehalten möchten. Dieser Trend unterstreicht einen breiteren Branchenwandel hin zur Akzeptanz von Open-Source-Technologien als praktikable Alternativen in der Virtualisierungslandschaft. Nur um es zu erwähnen, Proxmox ist weithin als eine praktikable Alternative zu VMware ESXi bekannt, aber es gibt auch andere Optionen, wie z. B. bhyve, die wir auch in einem unserer Blog-Posts behandelt haben.

Vorteile von Open-Source-Lösungen

In der dynamischen Landschaft des modernen Geschäftslebens stellt die Entscheidung für open source Lösungen für die Virtualisierung einen strategischen Vorteil für Unternehmen dar. Mit Plattformen wie KVM, Xen und sogar LXC-Containern können Unternehmen von der Abwesenheit von Lizenzgebühren profitieren, was erhebliche Kosteneinsparungen ermöglicht und Ressourcen in Innovation und Wachstum umleitet. Diese finanzielle Flexibilität ermöglicht es Unternehmen, strategische Investitionen in ihre IT-Infrastruktur zu tätigen, ohne die Belastung durch proprietäre Lizenzkosten. Darüber hinaus fördert die Open-Source-Virtualisierung die Zusammenarbeit und Transparenz, sodass Unternehmen ihre Umgebungen an ihre individuellen Bedürfnisse anpassen und nahtlos in bestehende Systeme integrieren können. Durch die Community-gesteuerte Entwicklung und robuste Support-Netzwerke erhalten Unternehmen Zugang zu einem reichen Wissens- und Ressourcenpool, der die Zuverlässigkeit, Sicherheit und Skalierbarkeit ihrer virtualisierten Infrastruktur gewährleistet. Die Nutzung der Open-Source-Virtualisierung bietet nicht nur greifbare finanzielle Vorteile, sondern stattet Unternehmen auch mit der Agilität und Anpassungsfähigkeit aus, die sie benötigen, um in einer sich ständig weiterentwickelnden digitalen Landschaft erfolgreich zu sein.

Migrieren einer VM

Voraussetzungen

Um einen reibungslosen Migrationsprozess von VMware ESXi zu Proxmox zu gewährleisten, müssen mehrere wichtige Schritte unternommen werden. Zunächst muss der SSH-Zugriff sowohl auf dem VMware ESXi-Host als auch auf dem Proxmox-Host aktiviert werden, um die Remote-Verwaltung und -Administration zu ermöglichen. Darüber hinaus ist es entscheidend, Zugriff auf beide Systeme zu haben, um den Migrationsprozess zu erleichtern. Darüber hinaus ist die Einrichtung einer SSH-Verbindung zwischen VMware ESXi und Proxmox für eine nahtlose Kommunikation zwischen den beiden Plattformen unerlässlich. Dies gewährleistet eine effiziente Datenübertragung und -verwaltung während der Migration. Darüber hinaus ist es unerlässlich, das Proxmox-System oder den Cluster ähnlich wie beim ESXi-Setup zu konfigurieren, insbesondere in Bezug auf die Netzwerkkonfigurationen. Dies umfasst die Sicherstellung der Kompatibilität mit VLANs oder VXLANs für komplexere Setups. Zusätzlich sollten beide Systeme entweder auf lokalem Speicher laufen oder Zugriff auf gemeinsam genutzten Speicher wie NFS haben, um die Übertragung von Virtual-Machine-Daten zu erleichtern. Schließlich ist es vor der Einleitung der Migration unerlässlich, zu überprüfen, ob das Proxmox-System über ausreichend verfügbaren Speicherplatz verfügt, um die importierte virtuelle Maschine aufzunehmen, um einen erfolgreichen Übergang ohne Speicherbeschränkungen zu gewährleisten.

SSH auf ESXi aktivieren

Der SSH-Server muss aktiviert sein, um den Inhalt vom ESXi-System an den neuen Speicherort auf dem Proxmox-Server zu kopieren. Die virtuelle Maschine wird später vom Proxmox-Server kopiert. Daher ist es erforderlich, dass das Proxmox-System eine SSH-Verbindung auf tcp/22 zum ESXi-System herstellen kann:

Quellinformationen über VM auf ESXi finden

Eine der herausfordernden Aufgaben ist das Auffinden des Speicherorts der virtuellen Maschine, die die virtuelle Festplatte enthält. Der Pfad kann in der Web-UI des ESXi-Systems gefunden werden:

Eine neue leere VM auf Proxmox erstellen

VM von ESXi zu Proxmox kopieren

Der Inhalt der virtuellen Maschine (VM) wird vom ESXi- zum Proxmox-System mit dem open source Tool rsync zur effizienten Synchronisierung und zum Kopieren übertragen. Daher müssen die folgenden Befehle vom Proxmox-System aus ausgeführt werden, wo wir ein temporäres Verzeichnis erstellen, um den Inhalt der VM zu speichern:

mkdir /tmp/migration_pgsql07.gyptazy.ch
cd /tmp/migration_pgsql07.gyptazy.ch
rsync -avP root@esx02-test.gyptazy.ch:/vmfs/volumes/137b4261-68e88bae-0000-000000000000/pgsq07.gyptazy.ch/* .

Abhängig von der Dateigröße der virtuellen Maschine und der Netzwerkkonnektivität kann dieser Vorgang einige Zeit dauern.

VM in Proxmox importieren

Anschließend wird die Festplatte mit dem Dienstprogramm qm importiert, wobei die VM-ID (die während des VM-Erstellungsprozesses erstellt wurde) zusammen mit der Angabe des Festplattennamens (der kopiert wurde) und des Zieldatenspeichers auf dem Proxmox-System definiert wird, in dem die VM-Festplatte gespeichert werden soll:

qm disk import 119 pgsql07.gyptazy.ch.vmdk local-lvm

Abhängig vom Erstellungsformat der VM oder dem Exportformat kann es mehrere Festplattendateien geben, die auch mit _flat ergänzt werden können. Dieses Verfahren muss für alle verfügbaren Festplatten wiederholt werden.

VM starten

Im letzten Schritt sollten alle Einstellungen, Ressourcen, Definitionen und Anpassungen des Systems gründlich überprüft werden. Nach der Validierung kann die VM gestartet werden, um sicherzustellen, dass alle Komponenten korrekt für den Betrieb in der Proxmox-Umgebung konfiguriert sind.

Fazit

Dieser Artikel behandelt nur eine von vielen möglichen Methoden für Migrationen in einfachen, eigenständigen Setups. In komplexeren Umgebungen mit mehreren Host-Knoten und verschiedenen Speichersystemen wie Fibre Channel oder Netzwerkspeicher gibt es erhebliche Unterschiede und zusätzliche Überlegungen. Darüber hinaus kann es spezifische Anforderungen in Bezug auf Verfügbarkeit und Service Level Agreements (SLAs) geben, die zu berücksichtigen sind. Dies kann für jede Umgebung sehr spezifisch sein. Sie können sich jederzeit gerne an uns wenden, um eine persönliche Beratung zu Ihren spezifischen Migrationsanforderungen zu erhalten. Gerne bieten wir Ihnen auch unsere Unterstützung in verwandten Bereichen in open source wie Virtualisierung (z. B. OpenStack, VirtualBox) und Themen im Zusammenhang mit Cloud-Migrationen an.

Nachtrag

Am 27. März veröffentlichte Proxmox ihren neuen Import-Assistenten (pve-esxi-import-tools), der die Migration von VMware ESXi-Instanzen in eine Proxmox-Umgebung erheblich vereinfacht. In einem kommenden Blog-Beitrag werden wir weitere Informationen über die neuen Tools und Fälle bereitstellen, in denen diese möglicherweise nützlicher sind, aber auch die Eckfälle abdecken, in denen der neue Import-Assistent nicht verwendet werden kann.

VXLAN steht für „Virtual eXtensible Local Area Network“. Standardisiert in RFC 7348 im August 2014 ist VXLAN heute auch als virtuelle Netzwerkschnittstelle in aktuellen Linuxkerneln verfügbar. Doch worum geht es bei VXLAN?

Worum geht es bei VXLAN?

Liest man die Stichworte „Virtual“ und „LAN“, denken die meisten zu Recht an VLAN. Hierbei wird ein großes physisches Netzwerk logisch in kleinere Netzwerke aufgeteilt. Dazu werden die entsprechenden Verbindungen mit VLAN-Tags markiert. Dies kann entweder beim sendenden Host (tagged VLAN) oder beispielsweise durch den Switch (portbasiertes VLAN) erfolgen. Diese Markierungen erfolgen bereits auf Layer 2, dem Data Link Layer im OSI Schichtenmodell. Hierdurch lassen sie sich bereits auf sehr niedriger Netzwerkebene sinnvoll auswerten und so unerwünschte Kommunikation im Netzwerk unterdrückt werden. Die Norm IEEE 802.1Q definiert für das VLAN-Tag 12 Bit Breite, somit ergeben sich grundsätzlich 4096 mögliche VLAN-Netzwerke auf einer Ethernet-Installation.

VXLAN wurde entwickelt, um diese Beschränkung zu umgehen. Mit VXLAN wird eine auf OSI-Layer 3 bzw. Layer 4 basierende Übertragungstechnik eingeführt, die virtuelle Layer-2-Umgebungen schafft. Mit der VXLAN-Logik sind rund 16 Millionen (2 hoch 24) VXLAN-Layer-2-Netzwerke möglich, die ihrerseits wieder 4096 VLAN-Netzwerkabschnitte abbilden können. Dies sollte zunächst auch für sehr große Ethernet-Installationen ausreichen.

Wie kann man ein solches VXLAN einrichten?

Eine VXLAN-Schnittstelle stellt man im Anschluss mit beispielsweise

ip link add vxlan0 type vxlan id 42 group 239.1.1.1 dev eth0

zur Verfügung. Dieses Kommando legt das Gerät „vxlan0“ als VXLAN mit der ID 42 auf dem physikalischen Interface „eth0“ an. Mehrere VXLAN werden auf Basis ihrer ID unterschieden. Die Anweisung „group <ip-adresse>“  legt die Übertragung auf Multicast und die zugehörige Multicast-Gruppe fest. Alternativ könnte hier auch mit dem Kommando „remote“ eine IP des Zielhostes auf Basis des zugrunde liegenden Netzwerkes (eth0)  gegeben werden (Unicast-Betrieb). Mit weiteren Anweisungen lassen sich auch die Quell- und Zielports für die auf dem darunterliegenden IP-Netzwerkes auf „eth0“ festlegen. Standard nach IANA ist der UDP-Port 4789.

Mit der Befehlszeile

ip addr add 10.0.0.1/24 dev vxlan0

gibt man der neu erschaffenen VXLAN-Netzwerkschnittstelle eine feste IP-Adresse, hier im Beispiel 10.0.0.1

Der Befehl

ip link set up dev vxlan0

schaltet die neu angelegte Netzwerkschnittstelle „vxlan0“ scharf. Damit existiert ein virtuelles Netzwerk auf Basis von IP-Multicast auf dem physikalischen Interface „eth0“.

Das Interface „vxlan0“ verhält sich nun prinzipiell genauso wie eine Ethernet-Schnittstelle. Alle weiteren Rechner, die die VXLAN ID 42 und Multicast-Gruppe 239.1.1.1 auswählen, werden damit teil dieses virtuellen Ethernets. Auf diesem könnte man nun auch wieder verschiedene VLAN einrichten, beispielsweise mit

ip link add link vxlan0 name vlan1 type vlan id 1

ein neues VLAN auf der VXLAN-Schnittstelle aufsetzen. In diesem Falle bräuchte man der vxlan-Schnittstelle keine IP-Adresse zu geben.

Was lässt sich damit in der Praxis machen?

Grundsätzlich eignet sich VXLAN für den Einsatzfall, in einem sehr großen Ethernet, etwa in Cloud-Umgebungen, die Grenze von 4096 VLAN zu überwinden.

Einsatz als Testumgebung für Netzwerkdienste

Alternativ lässt sich VXLAN sehr gut in Testumgebungen oder virtualisierten Umgebungen einsetzen, in denen man die volle Kontrolle über das zu nutzende Layer-2-Netzwerk benötigt. Möchte man Netzwerkinfrastruktur-Komponenten bzw. deren Konfiguration testen, bietet sich ein solches, komplett isoliertes Netzwerk an. Auch kann man so von Virtualisierungsumgebungen eingefügte Kontrollstrukturen, die besonders für solche Tests hinderlich sind, umgehen. Mein erster Praxiskontakt zu VXLAN war beim Test eines komplexeren DHCP-Setups auf mehreren virtuellen Maschinen in OpenStack. Auf den vom OpenStack gelieferten Netzwerkschnittstellen war der Test für mich unmöglich, da ich zum einen nur beschränkten Zugriff auf die Netzwerkkonfigurationen auf Seite des Virtualisierungshosts hatte und OpenStack dhcp-Pakete aus dem Netzwerkstream ausfiltert. Dieses Problem ließ sich elegant durch Aufsetzen des Testnetzes auf VXLAN umgehen. Gleichzeitig war so sichergestellt, dass der DHCP-Test keinen Einfluss auf andere Teile des OpenStack-Netzes hatte. Außerdem blieb so die von OpenStack gelieferte Ethernet-Verbindung zu Wartungs- und Beobachtungszwecke dauerhaft nutzbar.

Es sind beispielsweise im Unicast-Betrieb auch Szenarien denkbar, bei denen ein über VXLAN aufgespanntes Layer-2-Netzwerk über mehrere Standorte transportiert wird. Es gibt Switches oder Router, die VXLAN unterstützen und als VTEP (VXLAN Tunnel Endpoints) dienen können. Diese setzt man beispielsweise ein, um zwei Multicast-VXLAN-Netzwerke per Unicast zwischen den VTEP zu verbinden und so transparent ein großes VXLAN aufspannen.

Ist VXLAN sicher?

VXLAN legt auf eine bestehende Ethernet-Infrastruktur eine weitere Layer-2-Infrastruktur. Diese arbeitet mit UDP-Paketen im Unicast oder Multicast. Eine Verschlüsselung auf VXLAN-Ebene ist nicht vorgesehen und müsste bei Bedarf über darüber liegende Protokollebenen geleistet werden. Hier kommen IPSec-Lösungen oder beispielsweise TLS in Frage. Grundsätzlich ist ein VXLAN auf einer vergleichbaren Sicherheitsebene wie die meisten anderen Netzwerkprotokolle auf Layer 2.

Mögliche Probleme?

Bei VXLAN kann möglicherweise dem Anwender ein „alter Bekannter“ in Form von MTU-Problemen wieder begegnen. Ein Standard-Ethernet-Frame hat eine Länge von 1.518 Bytes. Damit bleiben nach Abzug des Ethernet-Headers 1.500 Bytes für Nutzlast. VXLAN erweitert den Ethernet-Header um 50 Bytes, weshalb die verfügbare Nutzlast auf 1.450 Bytes sinkt. Dies sollte beim Setzen der MTU beachtet werden. Sogenannte Jumbo-Frames werden entsprechend beeinflusst. Hier sind die zusätzlichen 50 Bytes ebenfalls mit in Betracht zu ziehen.

Was bietet credativ?

Gerne unterstützen und beraten wir Sie bei der Gestaltung und Betrieb Ihrer Netzwerkumgebung. Wir arbeiten unter anderem im Bereich DevOps, Netzwerk-Infrastruktur und Netzwerkdesign. Die credativ GmbH verfügt über Mitarbeiter mit Expertise in hochkomplexen Netzwerksetups für Rechenzentren auf realer Hardware ebenso wie in virtueller Umgebung. Unser Schwerpunkt liegt auf der Umsetzung mit Open-Source-Software.

Aktuelle Virtualisierungs-Lösungen bieten die Möglichkeit, USB-Geräte an das Gast-System weiter zu reichen. KVM ist da keine Ausnahme, und ermöglicht so zum Beispiel die Weitergabe eines USB-GSM-Modems an einen KVM-Gast.

Nahezu jedes Unternehmen setzt heutzutage auf die Virtualisierung von Diensten. Häufig werden dabei nicht nur neue Systeme, sondern auch alte Dienste auf die virtualisierte Infrastruktur umgesattelt. Ein Kunde traf dabei auf das Problem, dass ein Dienst abhängig war von einem externen USB-GSM-Modem – dieses musste in der virtualisierten Umgebung an den Gast weiter gereicht werden. Der Kunde setzt für seine Virtualisierung auf KVM, und das bietet für diese Zwecke selbstverständnlich USB pass through.

Um USB pass through zu nutzen müssen auf dem KVM-Host die „vendor ID“ und die „product ID“ des USB-Geräts ausgelesen werden:

$ lsusb
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 004 Device 002: ID 0557:2221 ATEN International Co., Ltd Winbond Hermon
Bus 002 Device 003: ID 12d1:1003 Huawei Technologies Co., Ltd. E220 HSDPA Modem / E230/E270/E870 HSDPA/HSUPA Modem

Der letzte Eintrag zeigt das von Huawei hergestellte GSM-Modem. Die interessanten Ziffern ergeben sich aus den vierstelligen Nummern vor und nach dem Doppelpunkt: die „vendor ID“ ist 12d1, die product ID ist 1003.

Derzeit ist dies auf dem Gast-System noch nicht sichtbar. Dafür muss die Weiterreichung spezifiziert werden. Auf der Kommandozeile lässt sich dies mit dem „virsh“-Befehl umsetzen: $ sudo virsh edit example-server.

Dieses Programm öffnet die XML-Spezifikation des KVM-Gasts in einem Editor. Dort kann nun im Bereich „devices“ das USB-Gerät hinzugefügt werden:

[...]
<devices>
  [...]
  <hostdev mode='subsystem' type='usb' managed='no'>
    <source>
      <vendor id='0x12d1'/>
      <product id='0x1003'/>
    </source>
  </hostdev>
</devices>

Dabei muss darauf geachtet werden, dass den Nummern ein 0x beigefügt wird. Nachdem die Datei gespeichert und der KVM-Gast neugestartet wird – der KVM-Host braucht zum Glück dafür nicht neugestartet werden – kann auf dem Gast geprüft werden, ob das Gerät zu finden ist:

$ lsusb
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 0627:0001 Adomax Technology Co., Ltd 
Bus 001 Device 003: ID 0409:55aa NEC Corp. Hub
Bus 001 Device 004: ID 12d1:1003 Huawei Technologies Co., Ltd. E220 HSDPA Modem / E230/E270/E870 HSDPA/HSUPA Modem

Das Gerät taucht in der Übersicht des Gasts auf, und wird in diesem Fall auch direkt als Modem bereit gestellt:

USB Serial support registered for GSM modem (1-port)
option 1-2.1:1.0: GSM modem (1-port) converter detected
usb 1-2.1: GSM modem (1-port) converter now attached to ttyUSB0
option 1-2.1:1.1: GSM modem (1-port) converter detected
usb 1-2.1: GSM modem (1-port) converter now attached to ttyUSB1
usbcore: registered new interface driver option
option: v0.7.2:USB Driver for GSM modems

Damit ist das USB-GSM-Modem erfolgreich vom KVM-Host an den KVM-Gast übertragen worden.

 

Dieser Artikel wurde ursprünglich geschrieben von Roland Wolters.