Tags: vSphere, Migration, Storage
Das unterbrechungslose Verschieben laufender virtueller Maschinen von einem Server auf den anderen gehört zu den Kernfunktionen der Virtualisierung und bildet die Grundlage aller Betriebsmodelle im Cloud-Computing. VMware bietet mittlerweile mehrere vMotion-Arten für verschiedene Szenarien.
Die unterbrechungsfreie Migration von VMs zwischen Hosts beherrscht vSphere schon seit 2003 und VMware hat sich Funktion und den Algorithmus unter der Bezeichnung "vMotion" patentieren lassen. Heute versteht der Hersteller unter vMotion eine breite Palette an Verschiebeoperationen, darunter Storage vMotion (svMotion) und Shared Nothing vMotion.
Insgesamt müssen für vMotion mehrere Host-, VM-, Netzwerk, Storage-, vCenter- und Lizenz-Voraussetzungen erfüllt sein. Die Handhabung des Features selbst ist VMware-typisch einfach bis selbsterklärend. Scheitert aber der Vorgang an sich, dann liegt es in der Regel daran, dass bestimmte Voraussetzungen nicht erfüllt sind.
Daher ist es hilfreich, sich ein wenig intensiver mit der Funktionsweise von vMotion auseinanderzusetzen, um eine vSphere-Umgebung entsprechend einzurichten und auftretende Probleme lösen zu können.
Shared Storage für klassisches vMotion nötig
Das vMotion im engeren Sinn, also das Verlagern von Workloads (Compute) auf einen anderen ESXi-Host, funktioniert nur dann, wenn die virtuellen Disks der betreffenden VM während des Umzugs für Quell- und Ziel-Host zugreifbar sind. Die verknüpfte virtuelle Festplatte verbleibt nämlich im selben Verzeichnis des Speichers, den beide Hosts gemeinsam verwenden.
Das setzt neben einem Cluster-fähigen Dateisystem ein Shared Storage voraus. Dies kann ein Fibre-Channel- bzw. iSCSI-SAN oder ein NAS mit NFS sein. Auch vSAN kommt dafür in Frage.
vMotion überträgt den gesamten Zustand der virtuellen Maschine auf den neuen Host (Arbeitsspeicher, CPU-Register, Netzwerkverbindungen). Anschließend nimmt die virtuelle Maschine ihre Aktivität wieder auf.
vMotion-Arten
Neben dem klassischen vMotion beherrscht vSphere heute eine ganze Reihe weiterer Verschiebetypen, die VMware selbst im vSphere-Handbuch unter vMotion-Migrationstypen zusammenfasst.
Der vSphere-Client (Kontext-Menü Migrate) versammelt alle Arten der VM-Migration in einem einzigen Dialog, der den meisten Anwendern bekannt sein dürfte.
Ganz allgemein gilt, dass vMotion die Computing-Ressource ändert, auf der eine virtuelle Maschine läuft. Daneben kann sich auch der Speicher für die virtuelle Maschine ändern. Eine komplette Migration virtueller Maschinen ist in vSphere auch ohne gemeinsam genutzten Speicher möglich.
Darüber hinaus lassen sich auch ausgeschaltete VMs und solche, die sich im Status Suspended befinden, auf einen anderen Server verschieben. Beim ursprünglichen vMotion, also dem Verlagern des Workloads, kommen als Ziel nicht nur andere ESXi-Hosts in Frage, sondern alle Typen von aggregierten Ressourcen, beispielsweise Cluster, Resource Pools und vApps.
Voraussetzungen für das Netzwerk
Wichtigste Voraussetzung für alle Verschiebearten ist das Vorhandensein eines vCenter (also die Editionen Essentials, Foundation oder Standard), ohne das vMotion grundsätzlich nicht funktioniert.
Außerdem braucht man ein vMotion-Netzwerk, bei dem das Service-Tag für vMotion gesetzt ist. Dieses benötigt je einen VMKernel-Adapter pro Host im gleichen Layer-2-Segment bzw. VLAN und im gleichen Layer-3-Subnetz.
Das vMotion-Netzwerk existiert dann neben anderen System-Traffic-relevanten VM-Kernel-Adaptern, wie Management, IP-Storage oder vSAN sowie dem VM-Traffic.
VMware empfiehlt aus Gründen der Sicherheit (vMotion-Traffic lässt sich erst ab vSphere 6.5 optional verschlüsseln) und Performance, den vMotion Traffic von anderen System-Traffic-Arten und insbesondere dem VM-Traffic zu isolieren. Denn der vMotion-Traffic braucht natürlich Bandbreite und Long Distance vMotion zudem eine geringe Round-Trip-Time. Dies lässt sich entweder durch physische Segmentierung oder VLANs zu erreichen.
Bezüglich der Portgruppe gibt es zusätzliche Voraussetzungen für das VM-Netzwerk. In der Vergangenheit musste diese auf dem Quell- und Ziel-Host mit identischem Namen existieren. Inzwischen kann der Nutzer im vMotion-Dialog aber das Zielnetzwerk auch auswählen.
Im Übrigen verfügt ab vSphere 6.x jeder Host über einen zweiten TCP/IP-Stack, der für die Migration von vSphere vMotion vorgesehen ist.
Weitere Bedingungen für vMotion
Eine zusätzliche Voraussetzung für vMotion besteht darin, dass eine VM keine aktive Verbindung zu einem internen virtuellen Switch hat. Die Migration einer solchen virtuellen Maschine führt zu einem Fehler.
Ferner darf keine CPU-Affinität für den virtuellen Prozessor konfiguriert sein. Auch sollte die VM mit keinem virtuellen Gerät wie einer CD/DVD oder einem Diskettenlaufwerk verbunden sein, auf dem ein lokales Image gemountet ist.
Kann der Ziel-Host nicht auf die Auslagerungsdatei der VM zugreifen, dann muss vSphere vMotion in der Lage sein, für den Ziel-Host eine neue zu erstellen, bevor die Migration startet. Wird Raw Device Mapping (RDM) verwendet, dann muss der Ziel-Host auf die RDM-Datei und die LUN, der diese Festplatte zugeordnet ist, zugreifen können.
Auch sind so genannte Monster-VMs (sehr viele vCPUs, virtuelle Festplatten mit mehr als 2TB) für vMotion in der Regel problematisch.
Es gilt zudem, dass pro angeschlossenem VMFS-, VVOL, VSAN- oder NFS-Datenspeicher maximal 128 gleichzeitige Migrationen durch vSphere vMotion möglich sind. Es bedarf mindestens eines 1-GBit-Ethernet-Adapters für das vMotion-Netzwerk (nicht das VM-Netzwerk). Damit sind maximal 4 gleichzeitige vMotion-Vorgänge möglich, 10 GBit/s erlauben bis 8 gleichzeitige Migrationen.
Jeder aktive vMotion-Prozess erfordert einen Mindestdurchsatz von 250 MBit/s auf dem Netzwerk. Um vMotion eine bessere Leistung zu ermöglichen, weist man dem vMotion-Netzwerk in einem Multi-NIC-Setup am besten zwei Portgruppen zu.
Schließlich erfordert vMotion auf dem Quell- und Ziel-Host kompatible CPUs, die Funktionssätze der Prozessoren beider Server müssen kompatibel sein. Die lizenzseitigen Voraussetzungen für vMotion sind schnell geklärt: Man braucht mindestens vSphere Essentials Plus.
Täglich Know-how für IT-Pros mit unserem Newsletter
Thomas Drilling arbeitet seit mehr als 20 Jahren selbständig als Redakteur und Autor für viele ehemalige und aktuelle IT-Magazine sowie Blogs. Thomas ist zudem Buchautor und IT-Consultant.
Seit 5 Jahren ist Thomas neben seiner journalistischen Tätigkeit hauptberuflicher, selbständiger IT-Trainer für VMware und Microsoft.
Seine Themenschwerpunkte sind Virtualisierung und Cloud Computing, speziell VMware, Amazon Web Services, Google Cloud und Microsoft Azure. Thomas ist zertifizierter VMware Professional, Advanced Professional und wurde von VMware in den Jahren 2016, 2017, 2018, 2019 und 2020 mit dem Blogger-Status vExpert ausgezeichnet.
Thomas ist außerdem zertifizierter AWS Solutions Architect, Sysops Engineer und Devops Engineer sowie Microsoft Certified Azure Administrator.
Thomas führt aktuell jeden zweiten Montag einen 4-tägigen Grundlagenkurs in Cloud Computing mit AWS via Zoom-Meeting durch. Weitere Informationen und Anmeldung über sein AWS-Blog.
Ähnliche Beiträge
- Storage vMotion und Shared Nothing vMotion
- VMware gibt vSphere 6.0 und PowerCLI 6.0 R1 frei: Die Neuerungen im Überblick
- Storage vMotion: Images von VMs auf andere Speicher verschieben
- VMware vCenter Converter 6.4 Beta: Support für vSphere 8, Microsoft VBS
- vCenter Converter ist zurück: VMware veröffentlicht Version 6.3
Weitere Links