Migration vers des serveurs virtuels d' IBM Cloud s à l'aide de l'extraction directe VDDK à partir de vCenter

Utilisez l'extraction directe VDDK avec virt-v2v pour migrer des machines virtuelles VMware depuis vCenter vers des serveurs virtuels IBM Cloud VPC, avec conversion automatisée des disques.

Composants de l'architecture

Le tableau suivant décrit les composants de l'architecture d'une migration par extraction directe du VDDK.

Composants de l'architecture pour la méthode de migration par extraction directe du VDDK
Composants de l'architecture Description
VMware Kit de développement de disques virtuels (VDDK) VMware pour accéder aux disques virtuels. Vous le téléchargerez à partir du portail des développeurs de VMware.
libguestfs avec support VDDK L'outil virt-v2v construit avec le plugin nbdkit VDDK. Cela nécessite la version « Red Hat Enterprise Linux » (RHEL) (les versions « Ubuntu » ne prennent pas en charge VDDK).
Instance de serveur virtuel de travailleur Instance basée sur RHEL avec libguestfs-tools et VDDK installés.
Accès à vCenter Connectivité réseau de l'instance de serveur virtuel du travailleur aux hôtes vCenter et vSphere, avec des informations d'identification permettant l'accès au disque de la machine virtuelle.

Vue d'ensemble du processus de migration de l'extraction directe du VDDK

Les étapes suivantes décrivent le processus de migration à l'aide de l'extraction directe de VDDK.

  1. Mise en place d'une instance de serveur virtuel « Worker » sous RHEL ( Red Hat Enterprise Linux )

    1. Instance RHEL 8 ou 9
    2. Installer libguestfs-tools : dnf install libguestfs-tools
    3. Connectivité réseau avec vCenter
  2. Installer VMware VDDK

    1. Télécharger à partir du portail des développeurs VMware (nécessite un compte VMware )
    2. Décompressez le fichier dans un répertoire de l'instance du serveur virtuel de travail (par exemple, /opt/vmware-vix-disklib-distrib)
  3. Recueillir des informations sur vCenter

    1. vCenter nom d'hôte/IP
    2. vCenter informations d'identification (format domaine/utilisateur)
    3. Nom de la machine virtuelle cible
    4. Hôte ESXi sur lequel tourne la machine virtuelle (découverte via vCenter )
    5. vCenter l'empreinte du certificat :
    openssl s_client -connect vcenter.example.com:443 </dev/null 2>/dev/null | \
      openssl x509 -fingerprint -noout -in /dev/stdin | \
      cut -d= -f2
    
  4. Créer des volumes cibles

    1. Utiliser la méthode de l'instance de serveur virtuel éphémère (Méthode 2 étapes 2-4)
    2. Associer à une instance de serveur virtuel de travail
  5. Configurer /etc/hosts (souvent nécessaire)

    1. Ajouter vCenter et les hôtes ESXi si le DNS n'est pas résolu correctement
    2. Le DMDV peut être pointilleux sur la résolution des noms d'hôtes
  6. Exécuter virt-v2v avec VDDK

    1. Créer un fichier de mots de passe
       echo 'YourPasswordHere' > /tmp/vcenter-passwd
       chmod 600 /tmp/vcenter-passwd
    
    1. Exécuter virt-v2v
       virt-v2v \
         -ic 'vpx://vsphere.local\%5cAdministrator\@vcenter.example.com/Datacenter/Cluster/esxi-host.example.com?no_verify=1' \
         'VM-Name' \
         -ip /tmp/vcenter-passwd \
         -o disk \
         -os /tmp \
         -it vddk \
         -io vddk-libdir=/opt/vmware-vix-disklib-distrib \
         -io vddk-thumbprint=A2:41:6A:FA:81:CA:4B:06:AE:EB:C4:1B:0F:FE:23:22:D0:E8:89:02 \
         --block-driver virtio-scsi
    

    Paramètres : - -ic: Chaîne de connexion d'entrée (vpx:// pour vCenter ) - \%5c est l'encodage URL pour la barre oblique inversée dans domain\user - ?no_verify=1 saute l'étape de la vérification des certitudes sur SSL - 'VM-Name': Nom exact de la machine virtuelle en vCenter - -ip: Chemin d'accès au fichier du mot de passe - -o disk -os /tmp: Sortie dans le répertoire /tmp - -it vddk: Transport d'entrée VDDK - -io vddk-libdir: Chemin d'accès à l'installation de VDDK - -io vddk-thumbprint vCenter: empreinte du certificat - --block-driver virtio-scsi: Pour les machines virtuelles Windows (le premier disque a besoin d'un pilote SCSI)

  7. Accès direct au périphérique grâce à une astuce avec les liens symboliques

    Normalement, virt-v2v écrit dans les fichiers d'un répertoire. Pour écrire directement sur un bloc de données :

    # virt-v2v will create file named VM-Name-sda
    ln -fs /dev/vdb /tmp/VM-Name-sda
    # Run virt-v2v, it writes to symlink which points to device
    virt-v2v ... (same command as above)
    
  8. Créer une instance de serveur virtuel à partir des volumes

    • Identique à la méthode 2/3 : détachement du travailleur, création d'une instance de serveur virtuel à partir des volumes existants

Avantages de conception

Le tableau suivant énumère les avantages de la migration par extraction directe du VDDK.

Avantages de la conception de la méthode de migration par extraction directe du VDDK
Avantage de la conception Description
Migration en une seule commande Une invocation virt-v2v fait tout : extraire de vCenter,, convertir le format, injecter des pilotes, écrire à la destination.
Pas d'étape d'exportation Semblable à la migration de transfert de réseau en direct, elle élimine les frais généraux d'exportation.
Facile à automatiser Facilement scriptable pour des migrations à grande échelle une fois qu'il est opérationnel.
Transformation intégrée L'injection de pilotes et la préparation du système d'exploitation se font automatiquement.

Contraintes et limites de conception

Le tableau suivant énumère les contraintes et les limites d'une migration par extraction directe du VDDK.

Limites et contraintes de la méthode de migration par extraction directe du VDDK
Limitation ou contrainte Description
vCenter uniquement Ne fonctionne pas avec VCFaaS (pas d'accès à l'API vCenter ).
Lacunes des outils RHEL/ Ubuntu

Défi critique

  • La version RHEL de libguestfs inclut le support VDDK (plugin nbdkit)

  • La version RHEL de virt-v2v ne supporte PAS --block-driver virtio-scsi (requis pour Windows)

  • La version Ubuntu de virt-v2v supporte --block-driver virtio-scsi

  • La version Ubuntu n'inclut PAS le support VDDK

Vous devez soit :

  • Construire libguestfs vous-même sur Ubuntu avec le plugin VDDK

OU

  • Utiliser RHEL pour l'extraction du VDDK, l'écriture dans le fichier, le transfert vers le système Ubuntu pour la transformation virt-v2v
Prérequis complexes Nécessite l'installation de VDDK, l'accès à l'API vCenter, des empreintes de certificats, des chaînes de connexion précises. Plus de mise en place que les autres méthodes.
Configuration requise pour le réseau L'instance de serveur virtuel du travailleur doit atteindre directement vCenter et les hôtes ESXi. Cela pourrait nécessiter la mise en place de règles de pare-feu supplémentaires.

La migration VDDK Direct Extraction est puissante pour les migrations vCenter à grande échelle où l'investissement initial dans l'installation et la construction d'outils est rentable pour de nombreuses machines virtuelles. Non recommandé pour les petites migrations ou les environnements VCFaaS. Si vous choisissez cette méthode, prévoyez du temps pour la mise en place et le test de l'outil.