met VMotion kunt u een live VM migreren van de ene fysieke server naar de andere. Het betekent dat u geen downtime nodig hebt om vSphere host-onderhoud uit te voeren en het is ook mogelijk om zonder downtime VM ’s op een cluster te balanceren zonder dat u een van de VM’ s hoeft uit te schakelen.
VMware ondersteunt ook lange afstand vMotion en cross-vCenter vMotion, waarmee u workloads kunt migreren naar een ander datacenter of de cloud. Dit maakt het mogelijk om rampen te vermijden wanneer een dreiging op handen is, om workloads in een specifieke Tijdzone uit te voeren en cloud bursting te gebruiken als u geen middelen meer hebt.
voordat u vMotion implementeert, moet u ervoor zorgen dat u voldoende geheugen en netwerkbandbreedte hebt om het migratieproces te ondersteunen, uw VM ‘ s zijn geoptimaliseerd voor live-migratie en u weet hoe de functie in de infrastructuur werkt.
vMotion live migration requirements
bijna elke editie van vSphere bevat vMotion; alleen de vSphere Essentials kit ondersteunt de functie niet. VMotion is een proces tussen twee ESXi-hosts, maar het wordt gestart via vCenter, dus het vereist een vCenter-licentie.
de overige vereisten — zoals netwerkbandwith en RAM — zijn niet erg veeleisend. De migratie wordt gedaan tussen twee ESXi-hosts die een VMkernel-interface moeten hebben met de vMotion-functie ingeschakeld en elkaar kunnen bereiken via een netwerkverbinding.
voor de VM ‘ s die u besluit te migreren, is het vereiste dat ze in hetzelfde layer 2-netwerk blijven. Er is een minimale bandbreedte vereist van 250 Mbps per vMotion migratie, maar het is beter om meer bandbreedte beschikbaar te hebben.
de meer beschikbare bandbreedte betekent dat u migraties sneller kunt uitvoeren, wat het belangrijkste is met VM ‘ s met grote hoeveelheden RAM.
Hoe werkt vMotion
om de VM naar een andere fysieke computer te verplaatsen, moet u de geheugeninhoud verplaatsen en alle verwerkingsworkflows naar de andere computer overschakelen. VCenter initieert vMotion en start de migratie na een compatibiliteitscontrole met de bron en bestemming ESXi host.
het proces begint met een initiële geheugenkopie via het vMotion-netwerk. De afbeelding hieronder laat zien waar je 16 GB RAM moet kopiëren voor een VM met dat benodigde geheugen.
idealiter zou deze stap onmiddellijk zijn. Maar het duurt enkele seconden om 16 GB te kopiëren, en tijdens dit proces veranderen sommige geheugenpagina ‘ s in het brongeheugen. De VMkernel volgt welke pagina ‘ s zijn veranderd en kopieert ze vervolgens naar de bestemmingshost.
beschouw dit als een andere gigabyte RAM. Terwijl je die 16 GB kopieert, verandert het geheugen opnieuw. Dit wordt een iteratief proces, zoals weergegeven in de afbeelding hieronder.
na een aantal iteraties, je zou moeten hebben gekopieerd meeste geheugen en er is een hoeveelheid over die kan worden gekopieerd in minder dan 500 milliseconden. Als je dat punt kunt bereiken vanwege de snel veranderende bron RAM, dan zal de VM vertragen op de bron met verdoven tijdens het verzenden van de pagina om het mogelijk te maken om al het geheugen te kopiëren.
voldoende bandbreedte is de belangrijkste vereiste voor grote VM ‘ s. Bijvoorbeeld, het kopiëren van een 768 GB VM over een 1 Gbps link duurt te lang om ooit een stabiel switch-over punt te bereiken.
het is een goed idee om een speciaal vMotion-netwerk te hebben met 10 Gbps of meer en meerdere netwerkadapters. Meerdere VMkernel-poorten worden ook aanbevolen als u veel migraties tegelijkertijd uitvoert of grote VM ‘ s migreert.
zodra u het geheugen kopieert, stopt de instructie verwerking op de bron ESXi host en gaat verder op de bestemming ESXi host. Vanuit het perspectief van het gast besturingssysteem gebeurde er niets omdat alle instructies worden verwerkt, maar op een andere host.
u hebt actie op het netwerk nodig omdat netwerkverkeer naar de doel-ESXi-host moet worden verzonden — niet naar de bron-ESXi-host. De bestemming ESXi-host verzendt een protocol voor reversed address resolution naar de fysieke switch, waardoor het MAC-leerproces wordt geactiveerd om het MAC-adres van de VM op de uitgaande poort weer te geven waar u de ESXi-host aansluit.
nu is de workload naadloos gemigreerd en kunt u gerust zeggen dat u elke TCP-toepassing zonder onderbreking kunt verplaatsen.
verbeteringen en overwegingen
in de loop der jaren werden de meeste verbeteringen in vMotion geïmplementeerd vanwege de steeds toenemende VM-SPECIFICATIES. Dit is het geval met vSphere 7, waar u in update 2 een VM kunt configureren met een maximum van 896 vcpu ‘ s en 24 TB RAM.
VMware heeft belangrijke verbeteringen aangebracht in vSphere 7 U1 aan de manier waarop de VMkernel het proces initieert dat bijhoudt welke geheugenpagina ‘ s tijdens het kopieerproces veranderen.
de installatie-functie voor het traceren van losse pagina ’s elimineert de noodzaak om alle vcpu’ s te blokkeren wanneer u een paginatracer invoegt. Het wijdt een vCPU aan dit proces uit te voeren, zodat alle andere vcpu ‘ s kunnen doorgaan met het uitvoeren van guest OS instructies.
een andere verbetering is dat het VM-proces al is overgeschakeld voordat u al het geheugen naar zijn bestemming verplaatst. Het geheugen op de andere host is gemarkeerd als remote en wordt later opgehaald.
als u uw hosts en netwerkcomponenten correct ontwerpt en formatteert, dan zijn er geen grote nadelen aan vMotion.