6 façons de déplacer une VM VMware d’un hôte EXSi à un autre

Lorsque vous avez plusieurs hôtes ESXi dans votre environnement, vous pouvez avoir besoin de migrer des machines virtuelles d’un hôte à un autre. La raison peut être une utilisation rationnelle des ressources ou des ressources de calcul insuffisantes sur l’un des hôtes. Découvrez les méthodes à votre disposition pour migrer des machines virtuelles dans VMware vSphere avec et sans vCenter.

Nous utilisons l’environnement configuré dans le home lab VMware déployé dans l’article de blog précédent pour expliquer le workflow de migration de VM :

  • ESXi01 – 192.168.101.101 (datastore10a, datastore40)
  • ESXi02 – 192.168.101.102 (datastore40-2)
  • vCenter8 – 192.168.101.103

Migration de VM VMware entre des hôtes avec vMotion

La méthode la plus pratique et la plus efficace pour migrer des machines virtuelles vers un autre hôte ESXi consiste à utiliser vCenter et la fonction vMotion. Assurez-vous que les VM exécutant les hôtes ESXi et une VM vCenter sont opérationnelles. Ouvrez VMware vSphere Client dans votre navigateur Web pour accéder à votre serveur vCenter.

VMware fournit la fonction vMotion pour effectuer la migration de VM entre des hôtes et des banques de données. Storage vMotion est utilisé lorsqu’une VM migre d’un stockage à un autre. vMotion vous permet de migrer des VM même si elles sont en cours d’exécution. Vous pouvez tester cette excellente fonction de niveau entreprise dans votre propre home lab ESXi. Essayez d’envoyer une requête ping à votre VM Linux imbriquée pendant le processus de migration pour vérifier qu’il n’y a pas de temps d’arrêt.

Cliquez avec le bouton droit de la souris sur la VM en cours d’exécution sur le premier hôte ESXi (ESXi01 – 192.168.101.101) et cliquez sur Migrer dans le menu Actions.L’Assistant de migration s’ouvre :

Le Assistant de migration s’ouvre :

  1. Sélectionner un type de migration. À ce stade, vous pouvez sélectionner l’une des trois options :
    • Changer uniquement le ressource de calcul. Sélectionnez cette option si une VM est située sur un datastore partagé connecté à plusieurs hôtes ESXi.
    • Changer uniquement le stockage. Sélectionnez cette option si vous souhaitez supprimer la VM d’un datastore directement attaché vers un autre. Les deux datastores directement attachés sont connectés au même hôte ESXi dans ce cas.
    • Changer à la fois le ressource de calcul et le stockage. Sélectionnez cette option si vous souhaitez migrer une VM d’un hôte à un autre. Ainsi, les deux hôtes peuvent utiliser des datastores différents.
    • Exportation croisée vCenter Server. Utilisez pour migrer des VMs vers un vCenter Server qui est membre d’un autre domaine SSO.

    La troisième option convient dans le cas reproduit dans le laboratoire domestique VMware actuel. Les deux hôtes ESXi ont leurs propres datastores de 40 Go. La VM en cours d’exécution sera migrée d’un hôte à un autre (ESXi01 > ESXi02) et d’un datastore de 40 Go à un autre (datastore40 > datastore40-2).

  2. Sélectionnez une ressource de calcul. Cette option vous permet de définir un hôte ESXi, ainsi que les ressources CPU et mémoire qui seront utilisées pour exécuter une machine virtuelle. Sélectionnez vCenter8 > Datacenter01 > 192.168.101.102 (l’adresse IP de ESXi02, qui est le deuxième hôte dans cet environnement d’essai VMware).

  3. Sélectionnez le stockage. À cette étape, vous devez sélectionner le stockage de destination pour la migration de la machine virtuelle. Sélectionnez le format de disque virtuel : le même que la source (provisionnement mince dans ce cas). Sélectionnez le datastore (datastore40-2 dans notre exemple).
  4. Sélectionnez les réseaux. Sélectionnez les réseaux de destination pour la migration de la machine virtuelle. VM Network est sélectionné à cet effet dans notre exemple.
  5. Sélectionnez la priorité de vMotion. Vous pouvez définir vMotion sur une haute priorité (recommandé) ou une priorité normale. Réglez sur haute priorité.
  6. Prêt à terminer. Vérifiez les paramètres de migration de votre VM et appuyez sur Terminer pour démarrer la migration.

Attendez que le processus de migration de la VM soit terminé. Vous pouvez ouvrir la barre Tâches récentes en bas de l’interface web du client VMware vSphere pour vérifier la progression de la tâche. Après que la tâche de migration de la VM soit terminée avec succès, votre VM commencera à s’exécuter sur le deuxième hôte ESXi (voir la capture d’écran ci-dessous).

Vous pouvez voir un aperçu du bureau de la VM Lubuntu où la console a été ouverte afin de vérifier le réseau et d’installer VMware Tools avant la migration. L’état d’exécution de la machine virtuelle est préservé.

Comment déplacer une VM vers un autre hôte sans vMotion?

Il arrive que vMotion et Storage vMotion ne puissent pas être utilisés parce que vCenter n’est pas installé ou que la licence VMware vSphere Essentials ne vous permet pas d’utiliser Storage vMotion. Dans ce cas, vous pouvez procéder à la migration froide de VM sans vCenter.

Migration d’une machine virtuelle Windows depuis le premier hôte ESXi (ESXi01) vers le deuxième (ESXi02) sans utiliser de datastore partagé. Voici comment copier une VM d’un hôte ESXi à un autre sans serveur vCenter :

  1. Connectez-vous au client VMware Host sur l’hôte ESXi source où se trouve la VM source (ESXi01) en utilisant un navigateur web.
  2. Cliquez sur Stockage dans le volet Navigator, sélectionnez un datastore où les fichiers VM sont stockés et cliquez sur le bouton Navigateur de datastore.
  3. Parcourez le répertoire de la VM que vous souhaitez migrer vers un autre hôte ESXi (Windows-VM sur datastore10a dans cet exemple).
  4. Téléchargez les fichiers .vmdk, –flat.vmdk et .vmx de la VM source sur ESXi01. Sélectionnez un fichier .vmdk de la VM dans le navigateur du datastore et cliquez sur Télécharger. Enregistrez les fichiers .vmdk et –flat.vmdk (descripteur de disque virtuel et fichier de données brut de disque virtuel) sur votre ordinateur. Répétez cette action pour les autres disques virtuels si votre VM en possède plusieurs. De même, téléchargez le fichier de configuration .vmx de la VM.

    NOTE: Les fichiers .vmdk et –flat.vmdk sont affichés comme un seul fichier .vmdk dans le navigateur du datastore. Vous pouvez utiliser un client SSH pour afficher les fichiers et un client SFTP tel que WinSCP pour télécharger les fichiers de la VM à partir d’un datastore ESXi en tant qu’alternative. Le fichier –flat.vmdk téléchargé est téléchargé en tant que fichier à provisionnement épais. Assurez-vous d’avoir suffisamment d’espace disque pour enregistrer les fichiers de disque virtuel.

  5. Connectez-vous au client hôte VMware sur le deuxième hôte ESXi (destination), l’hôte vers lequel vous souhaitez migrer la machine virtuelle (ESXi02 dans cet exemple).
  6. Cliquez sur Stockage dans le volet Navigator, sélectionnez le datastore où vous souhaitez placer la machine virtuelle après la migration (datastore40b) et ouvrez le navigateur du datastore.
  7. Cliquez sur Créer un répertoire dans la fenêtre du navigateur du datastore, saisissez le nom du répertoire de la machine virtuelle, par exemple, Windows-VM-copy, et appuyez sur Créer un répertoire dans la fenêtre appropriée.

  8. Une fois le répertoire créé, cliquez sur Télécharger et sélectionnez les fichiers .vmdk, –flat.vmdk et .vmx de la machine virtuelle que vous avez téléchargés depuis ESXi01 auparavant. Attendez que les fichiers soient téléchargés dans le datastore de ESXi02.

  9. Les disques virtuels téléchargés sont sauvegardés dans un format de disque virtuel épais dans ce cas. Suivez les étapes suivantes pour convertir un disque virtuel au format provisionné fin afin d’économiser de l’espace de stockage.
  10. Connectez-vous à l’hôte ESXi de destination (ESXi02) dans un client SSH. Vous pouvez utiliser PuTTY sous Windows et vous connecter en tant que root. L’accès SSH doit être activé sur un hôte ESXi.
  11. Accédez au répertoire de la machine virtuelle que vous avez créée sur le datastore ESXi02 comme répertoire de destination pour la migration de la machine virtuelle.

    cd /vmfs/volumes/datastore40b/Windows-VM-copy/

  12. Exécutez la commande pour convertir un disque virtuel à provisionnement épais en un disque virtuel à provisionnement dynamique :

    vmkfstools -i sourcename.vmdk -d thin targetname.vmdk

    Dans notre cas, la commande exacte est :

    vmkfstools -i Windows-VM.vmdk -d thin Windows-VM-thin.vmdk

  13. Renommez le disque virtuel épais d’origine (ensuite, vous pouvez supprimer ce disque après avoir vérifié que tout fonctionne correctement après la conversion) avec la commande :

    vmkfstools -E targetname.vmdk sourcename.vmdk

    Dans cet exemple, la commande est :

    vmkfstools -E Windows-VM.vmdk Windows-VM-thick.vmdk

    REMARQUE : Cette commande renomme à la fois le descripteur de disque virtuel et les fichiers de données de disque virtuel (.vmdk et –flat.vmdk).

  14. Renommez le nouveau disque virtuel provisionné mince écrit après la conversion pour correspondre au nom du disque virtuel original :

    vmkfstools -E Windows-VM-thin.vmdk Windows-VM.vmdk

  15. Dans le navigateur de datastore de ESXi02, accédez au répertoire de la VM copiée (Windows-VM-copy) et sélectionnez le fichier de configuration de la VM .vmx.
  16. Faites un clic droit sur le fichier .vmx et sélectionnez Enregistrer la VM dans le menu contextuel pour enregistrer la VM clonée sur l’hôte ESXi de destination (ESXi02).

  17. Démarrer la VM créée après la migration.
  18. Si tout fonctionne correctement, supprimez les fichiers de disque virtuel provisionnés en épaisseur conservés après la conversion d’un disque virtuel du format épais au format mince (Windows-VM-thick-flat.vmdk et le fichier correspondant .vmdk).

Si la taille du disque n’a pas été réduite après la conversion, vous pouvez récupérer de l’espace libre lors de l’utilisation de disques virtuels provisionnés en mince.

Migration VMware en utilisant un stockage partagé

Le stockage partagé doit être connecté à tous les hôtes ESXi participant à la migration de la VM en utilisant cette méthode.

Il peut y avoir deux scénarios de migration VMware : copier (cloner) une VM ou déplacer une VM.

  • Pour copier une VM :
    1. Créez un nouveau dossier VM sur un datastore partagé.
    2. Copiez les fichiers de la VM source dans ce dossier nouvellement créé.
    3. Enregistrez une copie de la VM sur l’hôte ESXi de destination connecté au datastore partagé.
  • Pour déplacer une VM :
    1. Désenregistrez une VM sur l’hôte ESXi source (premier).
    2. Enregistrez une VM sur l’hôte ESXi de destination (deuxième).

Comment déplacer une VM en exportant / important manuellement un modèle de VM

Vous pouvez exporter des VM vers des modèles et importer ces modèles pour créer une VM sur un autre hôte ESXi afin de migrer des machines virtuelles ou de les cloner. Cette méthode vous permet d’effectuer une migration de VM à froid (pour les VM éteintes). Vous pouvez copier ou déplacer une VM VMware vers un autre hôte sans vCenter et avec vCenter en utilisant des modèles.

Migration de VM en utilisant des modèles sans vCenter

Suivez les étapes suivantes pour migrer une VM vers un autre hôte sans vCenter :

  1. Accédez à Machines virtuelles dans le Navigator du Client hôte VMware sur l’hôte ESXi source (ESXi01).
  2. Cliquez avec le bouton droit sur la VM et sélectionnez Exporter dans le menu contextuel.
  3. Vérifiez les fichiers sélectionnés (vous pouvez utiliser la sélection par défaut sans .nvram) et cliquez sur Exporter.

  4. Attendez que les fichiers soient téléchargés dans un navigateur web. Dans cet exemple, nous avons téléchargé trois fichiers de la VM exportée :
    • Windows-VM.mf
    • Windows-VM.ovf
    • Windows-VM-1.vmdk
  5. Dans le client hôte VMware de l’hôte ESXi de destination (ESXi02), allez dans Machines virtuelles dans le Navigateur et cliquez sur Créer / Enregistrer VM.

  6. Sélectionnez Déployer une machine virtuelle à partir d’un fichier OVF ou OVA dans la première étape de l’assistant Nouvelle machine virtuelle. Cliquez sur Suivant à chaque étape de l’assistant pour continuer.
  7. Entrez le nom unique de la VM sur l’hôte ESXi de destination, par exemple, Windows-VM-clone, et sélectionnez les fichiers .ovf (ou .ova) et .vmdk exportés en tant que modèle OVF précédemment.

  8. Sélectionnez le stockage. Sélectionnez un datastore sur un hôte ESXi de destination pour stocker la VM que vous migrez.
  9. Définissez les options de déploiement. Sélectionnez un réseau pour la connexion VM, la provision en fin ou épaisse des disques virtuels, et si la VM doit être automatiquement mise sous tension après le déploiement.
  10. Prêt à terminer. Vérifiez vos paramètres et appuyez sur Terminer.
  11. Attendez que la VM soit importée à partir d’un modèle. Vous devriez voir le message : Nom_VM importé avec succès.

Si vous rencontrez une erreur, telle que Un fichier image disque requis manquait, et que le processus d’importation échoue, assurez-vous que les fichiers .ovf et .vmdk ont été sélectionnés. Si la sélection de tous les fichiers requis ne vous aide pas, essayez les actions suivantes :

  1. Copiez le(s) fichier(s) .vmdk exporté(s) avec un modèle .ovf vers le datastore de l’hôte ESXi de destination.
  2. Créez une nouvelle VM avec la même configuration que la VM source et sélectionnez l’utilisation d’un disque virtuel existant dans l’assistant de création de VM.
  3. Sélectionnez le(s) disque(s) virtuel(s) exporté(s) copié(s) vers le datastore de destination à l’étape 1.

Migration de VM en utilisant des modèles dans vCenter

De même, vous pouvez exporter des VM vers des modèles OVF et importer ces modèles en tant que nouvelles VM dans vCenter avec le client VMware vSphere.

  1. Cliquez avec le bouton droit sur une VM et cliquez sur Modèle > Exporter le modèle OVF dans le menu contextuel.
  2. Entrez un nom de modèle et sélectionnez les options nécessaires dans la fenêtre ouverte. Cliquez sur OK.
  3. Téléchargez les fichiers de modèle.

Ensuite, déployez un modèle OVF vers une VM pour migrer la machine virtuelle.

  1. Cliquez avec le bouton droit sur l’hôte ESXi de destination dans la vue Hôtes et clusters du client vSphere et cliquez sur Déployer un modèle OVF.
  2. Terminer l’assistant pour terminer la migration de la machine virtuelle.

L’alternative à un modèle OVF dans vSphere est de convertir une VM en modèle de machine virtuelle VMware. En savoir plus sur l’utilisation des modèles de machine virtuelle VMware.

Comment migrer une VM vers un autre hôte avec VMware PowerCLI?

Dans PowerCLI, vous pouvez utiliser la cmdlet Move-VM pour migrer des machines virtuelles d’un hôte ESXi à un autre. Voici les étapes à suivre:

  1. Ouvrez la console PowerCLI ou PowerShell avec le module VMware PowerCLI chargé.
  2. Connectez-vous au serveur vCenter ou directement à l’hôte ESXi source à l’aide de la cmdlet Connect-VIServer. Remplacez <vCenter_or_ESXi_Host> par l’adresse du serveur appropriée:

    Connect-VIServer -Server <vCenter_or_ESXi_Host> -User <Username> -Password <Password>

  3. Récupérez des informations sur la machine virtuelle que vous souhaitez migrer à l’aide de la cmdlet Get-VM:

    $vm = Get-VM -Name "Nom_VM"

  4. Sélectionnez l’hôte ESXi de destination. Identifiez l’hôte ESXi de destination vers lequel vous souhaitez déplacer la machine virtuelle.

    $destinationHost = Get-VMHost -Name "Hôte_ESXi_Destination"

  5. Déplacez la machine virtuelle. Utilisez l’applet de commande Move-VM pour lancer la migration. Spécifiez la machine virtuelle ($vm) et l’hôte de destination ($destinationHost).

    Move-VM -VM $vm -Destination $destinationHost

  6. Surveillez la progression de la migration en vérifiant l’état de la tâche à l’aide de l’applet de commande Get-Task.

    Get-Task | Where-Object {$_.Entity -eq $vm} | Sort-Object StartTime -Descending | Select-Object -First 1

  7. Facultatif : déconnectez-vous du serveur vCenter ou de l’hôte ESXi si aucune autre tâche n’est requise.

    Disconnect-VIServer -Server * -Confirm:$false

Exemple

Voici un exemple complet qui peut être utilisé comme script PowerShell pour migrer des machines virtuelles entre des hôtes ESXi :

# Connexion au serveur vCenter ou à l’hôte ESXi source

Connect-VIServer -Server 192.168.101.103 -User [email protected] -Password Votre_Mot_De_Passe111

# Récupération des informations sur la machine virtuelle

$vm = Get-VM -Name "Windows-VM"

# Identifier l’hôte ESXi de destination

$destinationHost = Get-VMHost -Name "192.168.101.102"

# Déplacer la machine virtuelle vers l’hôte de destination

Move-VM -VM $vm -Destination $destinationHost

# Surveiller la progression de la migration

Get-Task | Where-Object {$_.Entity -eq $vm} | Sort-Object StartTime -Descending | Select-Object -First 1

# Déconnectez-vous du serveur vCenter source ou de l’hôte ESXi source

Disconnect-VIServer -Server * -Confirm:$false

Assurez-vous d’avoir les autorisations nécessaires pour effectuer la migration et remplacez les espaces réservés tels que <Source_vCenter_or_ESXi_Host>, <Username>, <Password>, <VM_Name> et <Destination_ESXi_Host> dans les commandes ci-dessus par vos valeurs réelles. Ajustez le script en fonction de votre environnement et de vos besoins.

Comment migrer une VM vers un autre hôte avec VMware Converter

VMware vCenter Converter Standalone est un outil qui vous permet de convertir des machines physiques, des VM provenant d’autres hyperviseurs et des VM de versions antérieures de VMware vSphere en machines virtuelles à utiliser dans des environnements vSphere. Bien que cet outil ne soit pas spécifiquement conçu pour les migrations en direct, le convertisseur peut être utilisé pour effectuer une migration à froid d’une VM entre des hôtes ESXi (une VM source doit être éteinte pendant la migration).

Pour migrer une VM avec VMware Converter:

  1. Préparez tous les composants nécessaires :
    • Téléchargez VMware vCenter Converter Standalone sur le site web de VMware et installez-le sur une machine qui peut accéder aux hôtes ESXi source et destination.
    • Assurez-vous d’avoir un accès administratif aux hôtes ESXi source et destination.
    • Assurez-vous qu’il y a une connectivité réseau adéquate entre la machine exécutant VMware Converter et les hôtes ESXi source et destination.
  2. Ouvrez l’application VMware Converter sur la machine où elle est installée.
  3. Cliquez sur Convertir la machine.
  4. Sélectionnez le type de source. Dans ce cas, sélectionnez Éteint et Machine virtuelle VMware Infrastructure comme source. Entrez l’adresse IP ou le nom d’hôte de l’hôte ESXi source (par exemple, 192.168.101.101) et fournissez les informations d’identification pour vous connecter.

  5. Sélectionner la machine virtuelle source. Choisissez la machine virtuelle que vous souhaitez migrer dans la liste des machines virtuelles disponibles sur l’hôte ESXi source.
  6. Sélectionnez le type de destination. Sélectionnez Machine virtuelle VMware Infrastructure comme destination. Entrez l’adresse IP ou le nom d’hôte de l’hôte ESXi de destination (par exemple, 192.168.101.102), et fournissez les informations d’identification pour vous connecter.
  7. Configurer la machine virtuelle de destination. Spécifiez le nom et l’emplacement de la machine virtuelle de destination sur l’hôte ESXi de destination.
  8. Sélectionnez l’emplacement de destination. Sélectionnez un datastore sur l’hôte ESXi de destination et la version du matériel de la machine virtuelle. Vous pouvez examiner et configurer des options supplémentaires telles que le centre de données, le cluster, le pool de ressources et le datastore pour la machine virtuelle de destination.
  9. Options. Configurez les options de conversion telles que le type de disque, les paramètres réseau et les options de personnalisation si nécessaire.
  10. Prêt à terminer. Revoyez le résumé de vos sélections et cliquez sur Terminer pour commencer le processus de conversion.
  11. Suivez la progression de la conversion dans l’interface autonome du convertisseur. L’outil arrêtera la machine virtuelle source, copiera ses disques, puis créera une nouvelle machine virtuelle sur l’hôte de destination.
  12. Une fois la conversion terminée, vérifiez que la machine virtuelle a été créée avec succès sur l’hôte ESXi de destination.

En savoir plus sur l’utilisation de VMware Converter.

Comment migrer une machine virtuelle vers un autre hôte avec NAKIVO Backup & Replication

Vous pouvez copier une machine virtuelle d’un hôte ESXi à un autre en utilisant une solution de protection des données VM et une réplication de VM. NAKIVO Backup & Replication vous permet de migrer des machines virtuelles en utilisant ce scénario. La fonction de réplication de VM aide à le faire de manière efficace, même pour les VM en cours d’exécution.

Cette méthode de migration de VM peut être utilisée dans les deux cas :

  • Les hôtes ESXi sont gérés par vCenter
  • Les hôtes ESXi autonomes ne sont pas gérés par vCenter

Exigences :

  • Tous les hôtes ESXi autonomes doivent être ajoutés à l’Inventaire de NAKIVO.
  • Si les hôtes ESXi sont gérés par vCenter, le serveur vCenter doit être ajouté à l’Inventaire.

Pour migrer des machines virtuelles avec NAKIVO Backup & Replication, suivez les étapes suivantes.

  1. Dans l’interface web de la solution NAKIVO, allez à Travaux > + (Ajouter un nouveau travail) et cliquez sur Travail de réplication VMware vSphere.

  2. Dans le Nouveau Assistant de travail de réplication pour VMware vSphere qui s’ouvre, sélectionnez la VM source sur l’hôte ESXi source. Dans cet exemple, Windows-VM sur ESXi01 est sélectionné.

  3. Sélectionnez l’hôte ESXi de destination, le datastore et le dossier VM.

  4. Terminez l’assistant de réplication de la VM et attendez qu’une réplique de VM soit créée à l’emplacement de destination.

C’est ainsi que vous avez migré une machine virtuelle en direct vers un hôte différent. Vous pouvez configurer une réplication incrémentielle avec NAKIVO Backup & Replication et utiliser la réplique pour basculer en cas d’indisponibilité de vos machines virtuelles de production. NAKIVO Backup & Replication est une solution complète de protection des données qui offre des sauvegardes, une orchestration de récupération après sinistre et automatisation, une réplication en temps réel et une récupération contre les rançongiciels avec une seule installation de solution et à partir d’une seule console d’administration.

Source:
https://www.nakivo.com/blog/vmware-migration-to-another-host/