Si votre environnement VMware Cloud Director actuel utilise une base de données PostgreSQL externe, vous pouvez migrer vers un nouvel environnement VMware Cloud Director qui se compose de déploiements de dispositifs VMware Cloud Director. Votre environnement VMware Cloud Director actuel peut se composer d'installations de VMware Cloud Director sur des déploiements de dispositifs Linux ou VMware Cloud Director. Le nouvel environnement VMware Cloud Director peut utiliser les bases de données PostgreSQL intégrées du dispositif en mode haute disponibilité.

Si vous souhaitez migrer vers le dispositif VMware Cloud Director 10.4, reportez-vous à la section Migration de VMware Cloud Director avec une base de données PostgreSQL externe vers un dispositif VMware Cloud Director 10.4.

Le workflow de migration inclut quatre grandes étapes.
  • Mise à niveau de l'environnement VMware Cloud Director existant.
  • Création du groupe de serveurs VMware Cloud Director en déployant une ou plusieurs instances du dispositif VMware Cloud Director.
  • Migration de la base de données externe vers la base de données intégrée.
  • Copie des données du service de transfert partagé et des données de certificats

Procédure

  1. Si votre base de données PostgreSQL externe actuelle est de version 9.x, mettez à niveau la base de données PostgreSQL externe vers la version 10 ou ultérieure.
  2. Mettez à niveau votre environnement VMware Cloud Director actuel vers la version 10.4.x.

    Reportez-vous à Mise à niveau de VMware Cloud Director sous Linux.

  3. Vérifiez que le redémarrage de la source de migration VMware Cloud Director a réussi.
  4. Sur chaque cellule de l'environnement VMware Cloud Director mis à niveau, exécutez la commande pour arrêter le service VMware Cloud Director.
    /opt/vmware/vcloud-director/bin/cell-management-tool -u admin_username cell –-shutdown
  5. Sur la base de données PostgreSQL externe, sauvegardez la base de données actuelle.
    pg_dump -U postgres -W -F p vcloud > /tmp/dump_file_name

    Si l'espace libre dans le dossier /tmp est insuffisant, utilisez un autre emplacement pour stocker le fichier de vidage.

  6. Si le propriétaire de la base de données et le nom de la base de données sont différents de vcloud, notez le nom d'utilisateur et le nom de la base de données.

    Vous devez créer cet utilisateur dans le nouvel environnement et renommer la base de données décrite à l'étape 13.

  7. Copiez les fichiers de propriétés et de certificats de l'environnement existant dans un emplacement de la base de données PostgreSQL externe, puis mettez les cellules hors tension.
    1. Copiez les fichiers global.properties, responses.properties, certificates.pem, certificates.key et truststore.pem se trouvant à l'emplacement /opt/vmware/vcloud-director/etc/ dans /tmp ou à un emplacement préféré dans la base de données PostgreSQL externe.
    2. Mettez les cellules hors tension dans l'environnement existant.
  8. Si vous souhaitez que le nouvel environnement VMware Cloud Director utilise le serveur NFS de l'environnement existant, créez et exportez un nouveau répertoire sur ce serveur NFS en tant que nouveau point de montage NFS partagé.

    Vous ne pouvez pas réutiliser le point de montage existant, car les ID d'utilisateur et de groupe (UID/GID) des utilisateurs de l'ancien NFS peuvent ne pas correspondre aux ID d'utilisateur et de groupe du nouveau NFS.

  9. Créez le nouveau groupe de serveurs en déployant une ou plusieurs instances du dispositif VMware Cloud Director.
    • Si vous souhaitez utiliser la fonction de haute disponibilité de la base de données, déployez une seule cellule principale et deux cellules en veille et, éventuellement, une ou plusieurs cellules d'application vCD.
    • Si vous avez mis hors tension les cellules dans l'environnement existant, vous pouvez utiliser les adresses IP d'origine pour les nouvelles cellules.
    • Si vous avez exporté un nouveau chemin sur le serveur NFS existant, vous pouvez utiliser ce nouveau point de montage partagé pour le nouvel environnement.

    Reportez-vous à Déploiement et configuration initiale du dispositif VMware Cloud Director.

  10. Sur chaque nouvelle cellule déployée, exécutez la commande d'outil de gestion des cellules pour arrêter le service VMware Cloud Director.
    /opt/vmware/vcloud-director/bin/cell-management-tool cell -i $(service vmware-vcd pid cell) -s
  11. Copiez le fichier de vidage du dossier /tmp dans la base de données PostgreSQL externe vers le dossier /tmp sur la cellule principale du nouvel environnement.

    Reportez-vous à l'étape 5.

  12. Modifiez les autorisations sur le fichier de vidage.
    chmod a+r /tmp/db_dump_name
  13. Connectez-vous en tant que racine à la console de la nouvelle cellule principale déployée et transférez la base de données VMware Cloud Director depuis la base de données externe vers la base de données intégrée.
    1. Basculez l'utilisateur sur postgres, connectez-vous au terminal de base de données psql et exécutez l'instruction pour supprimer la base de données vcloud.
      sudo -i -u postgres /opt/vmware/vpostgres/current/bin/psql -c 'DROP DATABASE vcloud;'
    2. Créez une base de données vcloud.
      sudo -i -u postgres /opt/vmware/vpostgres/current/bin/psql -c 'CREATE DATABASE vcloud;'
    3. Restaurez la base de données.
      sudo -i -u postgres /opt/vmware/vpostgres/current/bin/psql -U postgres -W -d vcloud -f /tmp/db_dump_name
    4. Si le propriétaire de la base de données de l'environnement VMware Cloud Director existant est différent de vcloud, renommez le propriétaire de la base de données en vcloud et réattribuez les tables à vcloud.
      sudo -i -u postgres /opt/vmware/vpostgres/current/bin/psql -c 'ALTER DATABASE vcloud OWNER TO vcloud;'
      sudo -i -u postgres /opt/vmware/vpostgres/current/bin/psql -d vcloud -c 'REASSIGN OWNED BY <db_owner_external_pg> TO vcloud;'
  14. Sur chaque nouvelle cellule déployée, sauvegardez et remplacez les données de configuration, puis reconfigurez et démarrez le service VMware Cloud Director.
    1. Sauvegardez les fichiers de propriétés, de magasins d'approbation et de certificats, puis copiez et remplacez ces fichiers depuis l'emplacement de la base de données PostgreSQL externe de la source de migration dans lequel vous avez copié les fichiers à l'étape 7 a.

      Les fichiers global.properties, responses.properties, truststore.pem, certificates.pem et certificates.key se trouvent dans /opt/vmware/vcloud-director/etc/.

    2. Exécutez la commande pour reconfigurer le service VMware Cloud Director.
      /opt/vmware/vcloud-director/bin/configure --unattended-installation --database-type postgres --database-user vcloud \
      --database-password db_password_new_primary --database-host eth1_ip_new_primary --database-port 5432 \
      --database-name vcloud --database-ssl true --uuid --cert /opt/vmware/vcloud-director/etc/user.http.pem --key /opt/vmware/vcloud-director/etc/user.http.key --key-password root_password_new_primary --primary-ip appliance_eth0_ip \
      Où :
      • La valeur --key-password correspond au mot de passe racine initial de ce dispositif.
      • La valeur --database-password correspond au mot de passe de la base de données que vous avez défini lors du déploiement du dispositif.
      • La valeur --database-host correspond à l'adresse IP réseau eth1 du dispositif principal.
      • La valeur --primary-ip correspond à l'adresse IP du réseau eth0 du dispositif.

      Pour obtenir des informations sur le dépannage, consultez La reconfiguration du service VMware Cloud Director échoue lors de la migration ou de la restauration vers le dispositif VMware Cloud Director.

    3. Exécutez la commande pour démarrer le service VMware Cloud Director.
      systemctl start vmware-vcd

      Vous pouvez surveiller la progression du démarrage de la cellule à l'adresse /opt/vmware/vcloud-director/logs/cell.log.

  15. Une fois que toutes les cellules du nouveau groupe de serveurs ont terminé le processus de démarrage, vérifiez que la migration de votre environnement VMware Cloud Director a réussi.
    1. Ouvrez le Service Provider Admin Portal à l'aide de l'adresse IP du réseau eth0 d'une cellule du nouveau groupe de serveurs, https://eth0_IP_new_cell/provider.
    2. Connectez-vous au Service Provider Admin Portal avec vos informations d'identification d'administrateur système existantes depuis la source de migration.
    3. Confirmez que votre instance de vSphere et que vos ressources de cloud sont disponibles dans le nouvel environnement.
  16. Après avoir procédé à la vérification de la migration de VMware Cloud Director, utilisez la Service Provider Admin Portal pour supprimer les cellules déconnectées appartenant à l'ancien environnement VMware Cloud Director.
    1. Dans la barre de navigation supérieure, sous Ressources, sélectionnez Ressources de Cloud.
    2. Dans le panneau de gauche, cliquez sur Cellules cloud.
    3. Sélectionnez une cellule inactive et cliquez sur Annuler l'enregistrement.

Vous pouvez déployer le dispositif VMware Cloud Director pour ajouter des membres au groupe de serveurs de l'environnement migré.

Étape suivante

L'environnement du nouveau dispositif VMware Cloud Director migré utilise des certificats auto-signés. Pour utiliser les certificats signés à partir de l'ancien environnement, procédez comme suit sur chaque cellule du nouvel environnement :

  1. Copiez et remplacez les fichiers de certificat et de clé de l'ancienne cellule par /opt/vmware/vcloud-director/data/transfer/cert.pem et /opt/vmware/vcloud-director/data/transfer/cert.key.
  2. Exécutez la commande de l'outil de gestion des cellules pour remplacer les certificats.

    Assurez-vous que vcloud.vcloud est le propriétaire de ce fichier.

    /opt/vmware/vcloud-director/bin/cell-management-tool certificates -j --cert /opt/vmware/vcloud-director/etc/cert.pem --key /opt/vmware/vcloud-director/etc/cert.key --key-password ks_password_old_VCD
  3. Redémarrez le service VMware Cloud Director.
    service vmware-vcd restart
    

Si vous ajoutez de nouveaux membres à ce groupe de serveurs, les nouvelles cellules du dispositif sont déployées avec ces certificats signés correctement.