Wenn Ihre aktuelle vCloud Director-Umgebung eine externe PostgreSQL-Datenbank verwendet, können Sie in eine neue vCloud Director-Umgebung migrieren, die aus Bereitstellungen der vCloud Director-Appliance besteht. Ihre aktuelle vCloud Director-Umgebung kann aus vCloud Director-Installationen auf Linux oder aus Bereitstellungen der vCloud Director-Appliance bestehen. Die neue vCloud Director-Umgebung kann die eingebetteten PostgreSQL-Datenbanken der Appliance in einem Hochverfügbarkeitsmodus verwenden.

Der Migrations-Workflow umfasst vier Hauptphasen.
  • Aktualisieren der vorhandenen vCloud Director-Umgebung
  • Erstellen der neuen vCloud Director-Servergruppe durch Bereitstellen einer oder mehrerer Instanzen der vCloud Director-Appliance
  • Migrieren der externen Datenbank auf die eingebettete Datenbank
  • Kopieren der gemeinsam genutzten Übertragungsdienst- und Zertifikatsdaten.

Vorgehensweise

  1. Wenn die aktuelle externe PostgreSQL-Datenbank Version 9.x aufweist, führen Sie ein Upgrade der externen PostgreSQL-Datenbank auf Version 10 oder höher durch.
  2. Aktualisieren Sie die aktuelle vCloud Director-Umgebung auf Version 10.0.

    Weitere Informationen finden Sie unter Aktualisieren von vCloud Director.

  3. Vergewissern Sie sich, dass der Neustart von vCloud Director der Migrationsquelle erfolgreich ist.
  4. Führen Sie in jeder Zelle der aktualisierten vCloud Director-Umgebung den Befehl zum Beenden des vCloud Director-Diensts aus.
    /opt/vmware/vcloud-director/bin/cell-management-tool -u <Administrator-Benutzername> cell –-shutdown
  5. Sichern Sie die aktuelle Datenbank in der externen PostgreSQL-Datenbank.
    sudo -u postgres path_to_pg_dump -Fc db_name > /tmp/db_dump_name

    Wenn nicht genügend freier Speicherplatz im Ordner /tmp vorhanden ist, verwenden Sie einen anderen Speicherort zum Speichern der Speicherabbilddatei.

  6. Wenn sich der Datenbankbesitzer und der Datenbankname von vcloud unterscheiden, notieren Sie sich den Benutzernamen und den Datenbanknamen.

    Sie müssen diesen Benutzer in der neuen Umgebung erstellen und die Datenbank in Schritt 13 umbenennen.

  7. Wenn die neue vCloud Director-Umgebung die IP-Adressen der vorhandenen Umgebung verwenden soll, müssen Sie die Eigenschaften und die Zertifikatsdateien an einen Speicherort in der externen PostgreSQL-Datenbank kopieren und die Zellen ausschalten.
    1. Kopieren Sie die Dateien global.properties, responses.properties, certificates, proxycertificates und truststore, die sich unter /opt/vmware/vcloud-director/etc/ befinden, in das Verzeichnis /tmp oder in einen beliebigen bevorzugten Speicherort auf der externen PostgreSQL-Datenbank.
    2. Schalten Sie die Zellen in der vorhandenen Umgebung aus.
  8. Wenn die neue vCloud Director-Umgebung den NFS-Server der vorhandenen Umgebung verwenden soll, erstellen Sie ein neues Verzeichnis auf diesem NFS-Server und exportieren Sie es als neuen freigegebenen NFS-Mount-Punkt.

    Sie können den vorhandenen Mount-Punkt nicht wieder verwenden, da die Benutzer- und Gruppen-IDs (UID/GID) der Benutzer im alten NFS möglicherweise nicht mit den Benutzer- und Gruppen-IDs im neuen NFS übereinstimmen.

  9. Erstellen Sie die neue Servergruppe, indem Sie eine oder mehrere Instanzen der vCloud Director 10.0-Appliance bereitstellen.
    • Wenn Sie die Hochverfügbarkeitsfunktion der Datenbank verwenden möchten, stellen Sie eine primäre und zwei Standby-Zellen und optional eine oder mehrere vCD-Anwendungszellen bereit.
    • Wenn Sie die Zellen in der vorhandenen Umgebung ausgeschaltet haben, können Sie die ursprünglichen IP-Adressen für die neuen Zellen verwenden.
    • Wenn Sie einen neuen Pfad auf den vorhandenen NFS-Server exportiert haben, können Sie diesen neuen freigegebenen Mount-Punkt für die neue Umgebung verwenden.

    Weitere Informationen finden Sie unter Bereitstellen der vCloud Director-Appliance.

  10. Führen Sie in jeder neu bereitgestellten Zelle den Befehl zum Beenden des vCloud Director-Diensts aus.
    service vmware-vcd stop
  11. Kopieren Sie die Speicherabbilddatei aus dem Ordner /tmp in der externen PostgreSQL-Datenbank in den Ordner /tmp in der primären Zelle der neuen Umgebung.

    Siehe Schritt 5.

  12. Ändern Sie die Berechtigungen in der Speicherabbilddatei.
    chmod a+r /tmp/db_dump_name
  13. Melden Sie sich als root bei der Konsole der neu bereitgestellten primären Zelle an und übertragen Sie die vCloud Director-Datenbank aus der externen in die eingebettete Datenbank.
    1. Ändern Sie den Benutzer in postgres, stellen Sie eine Verbindung zum psql-Datenbankterminal her und führen Sie die Anweisung aus, um die vcloud-Datenbank zu löschen.
      sudo -i -u postgres /opt/vmware/vpostgres/current/bin/psql -c 'DROP DATABASE vcloud;'
    2. Wenn sich der Datenbankbesitzer der vorhandenen externen Datenbank von vcloud unterscheidet, erstellen Sie einen Benutzer mit dem Namen, den Sie in Schritt 6 notiert haben.
      sudo -i -u postgres /opt/vmware/vpostgres/current/bin/psql -c 'CREATE USER <db_owner_external_pg>;'
    3. Führen Sie den Befehl pg_restore aus.
      sudo -u postgres /opt/vmware/vpostgres/current/bin/pg_restore -C -d postgres /tmp/db_dump_name
    4. Wenn sich der Datenbankname der vorhandenen externen Datenbank von vcloud unterscheidet, ändern Sie den Datenbanknamen in vcloud, indem Sie den Namen verwenden, den Sie in Schritt 6 notiert haben.
      sudo -i -u postgres /opt/vmware/vpostgres/current/bin/psql -c 'ALTER DATABASE <db_name_external_pg> RENAME TO vcloud;'
    5. Wenn sich der Datenbankbesitzer der vorhandenen vCloud Director-Umgebung von vcloud unterscheidet, ändern Sie den Datenbankbesitzer in vcloud und weisen Sie die Tabellen erneut vcloud zu.
      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. Sichern und ersetzen Sie die Konfigurationsdaten in jeder neu bereitgestellten Zelle, konfigurieren Sie den vCloud Director-Dienst neu und starten Sie ihn.
    1. Sichern Sie die Eigenschaften, den Truststore und die Zertifikatsdateien, kopieren Sie diese Dateien und ersetzen Sie sie am Speicherort in der externen PostgreSQL-Datenbank der Migrationsquelle, in die Sie die Dateien in Schritt 7a kopiert haben.

      Die Dateien global.properties, responses.properties, truststore, certificates und proxycertificates befinden sich unter /opt/vmware/vcloud-director/etc/.

    2. Sichern Sie die Keystore-Datei, die sich unter /opt/vmware/vcloud-director/certificates.ks befindet.

      Kopieren und ersetzen Sie sie nicht durch die Keystore-Datei aus der Migrationsquelle.

    3. Führen Sie den Befehl aus, um den vCloud Director-Dienst neu zu konfigurieren.
      /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 --keystore /opt/vmware/vcloud-director/certificates.ks \
      --keystore-password root_password_new_primary --primary-ip appliance_eth0_ip \
      --console-proxy-ip appliance_eth0_ip --console-proxy-port-https 8443 
      Dabei gilt:
      • Der Wert --keystore-password entspricht dem anfänglichen root-Kennwort dieser Appliance.
      • Der Wert --database-password stimmt mit dem Datenbankkennwort überein, das Sie während der Bereitstellung der Appliance festgelegt haben.
      • Der Wert --database-host stimmt mit der eth1-Netzwerk-IP-Adresse der primären Appliance überein.
      • Der Wert --primary-ip entspricht der eth0-Netzwerk-IP-Adresse der Appliance.
      • Der Wert --console-proxy-ip entspricht der eth0-Netzwerk-IP-Adresse der Appliance.
      • Der Wert --console-proxy-port entspricht dem Proxy-Port 8443 der Appliance-Konsole.

      Informationen zur Fehlerbehebung finden Sie unter Neukonfigurieren des vCloud Director-Diensts schlägt beim Migrieren oder Wiederherstellen auf der vCloud Director-Appliance fehl.

    4. Führen Sie den Befehl aus, um den vCloud Director-Dienst zu starten.
      service vmware-vcd start

      Sie können den Fortschritt des Zellenstarts unter /opt/vmware/vcloud-director/logs/cell.log überwachen.

  15. Ändern Sie die Konfiguration des Lastausgleichsdiensts dahingehend, dass alle IPs der neuen Appliance eth0 in die Lastausgleichspools für HTTP-, HTTPS- und TCP-Datenverkehr aufgenommen und die alten IPs der Linux-vCloud Director-Zellen aus diesen Pools entfernt werden.
  16. Nachdem alle Zellen der neuen Servergruppe gestartet wurden, stellen Sie sicher, dass die Migration Ihrer vCloud Director-Umgebung erfolgreich verlaufen ist.
    1. Öffnen Sie das Service Provider Admin Portal mithilfe der eth0 Netzwerk-IP-Adresse einer beliebigen Zelle aus der neuen Servergruppe, https://eth0_IP_new_cell/provider.
    2. Melden Sie sich beim Service Provider Admin Portal mit den vorhandenen Anmeldedaten für Systemadministratoren an.
    3. Stellen Sie sicher, dass Ihre vSphere- und Cloud-Ressourcen in der neuen Umgebung zur Verfügung stehen.
  17. Verwenden Sie nach erfolgreicher Überprüfung der vCloud Director-Migration die Service Provider Admin Portal, um die getrennten Zellen zu löschen, die zur alten vCloud Director-Umgebung gehören.
    1. Wählen Sie im Hauptmenü () die Option Cloud-Ressourcen aus.
    2. Klicken Sie im linken Bereich auf Cloud-Zellen.
    3. Wählen Sie eine inaktive Zelle aus und klicken Sie auf Registrierung aufheben.

Sie können die vCloud Director-Appliance bereitstellen, um Mitglieder zur Servergruppe der migrierten Umgebung hinzuzufügen.

Weitere Schritte

In der neuen Umgebung der migrierten vCloud Director-Appliance werden selbstsignierte Zertifikate verwendet. Zur Verwendung der ordnungsgemäß signierten Zertifikate aus der alten Umgebung in jeder Zelle der neuen Umgebung führen Sie die folgenden Schritte aus:

  1. Kopieren und ersetzen Sie die Keystore-Datei aus der alten Zelle in /opt/vmware/vcloud-director/data/transfer/certificates.ks.
  2. Führen Sie den Befehl des Zellenverwaltungstools aus, um die Zertifikate zu ersetzen.

    Stellen Sie sicher, dass vcloud.vcloud der Besitzer dieser Datei ist.

    /opt/vmware/vcloud-director/bin/cell-management-tool certificates -j -p --keystore /opt/vmware/vcloud-director/data/transfer/certificates.ks \
    --keystore-password ks_password_old_vCD
  3. Starten Sie den vCloud Director-Dienst neu.
    service vmware-vcd restart
    

Wenn Sie dieser Servergruppe neue Mitglieder hinzufügen, werden die Zellen der neuen Appliance mit diesen ordnungsgemäß signierten Zertifikaten bereitgestellt.