Nachdem Sie eine VMware Cloud Director-Instanz mit einem SDDC in VMware Cloud Director service verknüpft haben, können verschiedene Aufgaben unter Umständen nicht mehr ausgeführt werden.

Problem

Nachdem Sie eine VMware Cloud Director-Instanz mithilfe von VMware Proxy Service mit einem SDDC verknüpft haben, wird vCenter Server möglicherweise als getrennt angezeigt. Wenn Sie versuchen, die Verbindung zu aktualisieren oder erneut herzustellen, führt dies zu einem Fehler mit einer Netzwerkausnahme, z. B. SocketTimeoutException.

Sie können keine VM-Konsole öffnen oder OVF- und OVA-Dateien hochladen und herunterladen.

Netzwerkressourcen wie Netzwerkpools, externe Netzwerke oder Edge-Gateways können nicht hinzugefügt, bearbeitet oder gelöscht werden.

Wenn VMware Cloud Director API-Aufrufe an NSX tätigt, werden in der Datei vcd-debug-container.log Einträge ähnlich Received Response: 503 angezeigt.

Hinweis: In neueren Versionen der VMware Cloud Director service-Proxy-Client-Appliance können Sie den diagnose.sh-Befehl zur Fehlerbehebung verwenden, um Probleme mit der Appliance zu diagnostizieren. Weitere Informationen hierzu finden Sie unter Vorgehensweise zum Beheben von Fehlern bei der VMware Cloud Director service-Proxy-Client-Appliance. Wenn Sie versuchen, den diagnose.sh-Befehl auszuführen, und dies zu einem Fehler führt, befolgen Sie die Anweisungen zur Fehlerbehebung, die unten beschrieben werden.

Ursache

Dies geschieht, weil die VMware Cloud Director-Instanz weder mit vCenter Server, ESXi-Hosts noch NSX über VMware Proxy Service kommunizieren kann.

Dafür gibt es zwei mögliche Gründe.

Entweder schlägt die Kommunikation zwischen VMware Cloud Director und VMware Proxy Service fehl, oder die Kommunikation zwischen VMware Cloud Director und der Proxy-VM, die Sie während der Instanzenverknüpfung mit dem VMware Cloud on AWS-SDDC bereitgestellt haben, ist zwar erfolgreich, aber die Verbindung zwischen dem Proxy-Dienst und vCenter Server oder NSX kann nicht hergestellt werden.

Voraussetzungen

  1. Suchen Sie nach der VMware Reverse Proxy-Client-VM, die Sie bei der Erstellung der Verknüpfung zwischen dem SDDC und der VMware Cloud Director-Instanz im Ressourcenpool der vCenter Server-Benutzeroberfläche bereitgestellt haben.
  2. Melden Sie sich beim Betriebssystem der Reverse Proxy-Client-VM als root an.
    Tipp: Das Kennwort für den root-Benutzer finden Sie in den vApp-Eigenschaften der VM unter root-password.

Lösung

  • Führen Sie den Befehl transporter-status.sh aus, um sicherzustellen, dass die VM mit dem Netzwerk verbunden ist.
    Wenn die VM verbunden ist, gibt der Befehl den Status als UP und den Status von command_channel_1 und command_channel_2 als CONNECTED zurück.
  • Stellen Sie sicher, dass die VMware Reverse-Proxy-Client-VM über eine gültige IPv4-Adresse verfügt.
    1. Navigieren Sie zur VM im Ressourcenpool des vCenter Server und überprüfen Sie, ob die VM über eine gültige IPv4-Adresse verfügt.
    2. Wenn die VM über keine gültige IPv4-Adresse verfügt, wählen Sie eine der folgenden Optionen aus.
      • Klicken Sie auf die Registerkarte Netzwerke und wählen Sie ein Netzwerk mit einem gültigen DHCP-Profil aus.
      • Melden Sie sich beim Betriebssystem der VM an und weisen Sie ihr manuell eine IPv4-Adresse zu, indem Sie die folgenden Befehle ausführen.
        sudo ifconfig ens160 IPv4-address netmask mask
        sudo route add default gw gateway-address ens160
  • Führen Sie eine cURL-Anforderung an die URL aus, unter der die neuesten Images der VMware Reverse-Proxy-Client-VM gespeichert sind.
  • Führen Sie über das Betriebssystem der VMware Reverse Proxy-Client-VM eine cURL-Anforderung an den VMware Proxy-Dienst aus.
    curl -v <VMware-Proxy-Service-IP-address>
    Sie finden die IP-Adresse des VMware Proxy-Diensts in den vApp-Eigenschaften der VMware Reverse Proxy-Client-VM unter reverse-proxy-host.
    Der Befehl gibt ein Ergebnis ähnlich dem Folgenden zurück.
    Connected to <VMware-Proxy-Service-IP-address> port 80
  • Stellen Sie sicher, dass keine Firewallregeln oder andere Netzwerkprobleme vorliegen, die die VMware Reverse Proxy-Client-VM daran hindern, vCenter Server, NSX und ESXi anzupingen.
    Wenn die Liste der zulässigen Ziele eine CIDR-Notation enthält und Sie einen der darin befindlichen Hosts nicht erreichen können, stellen Sie sicher, dass Sie den entsprechenden Host anpingen können. Wenn Sie erfolgreich sind, fügen Sie die IP-Adresse oder den FQDN des Hosts als separaten Eintrag zur Liste hinzu.
  • Stellen Sie sicher, dass die VMware Reverse-Proxy-Client-VM ein gültiges API-Token verwendet.
    Das aktuelle API-Token finden Sie in den vApp-Eigenschaften der VMware Reverse Proxy-Client-VM unter csp-token.
    1. Führen Sie eine POST-Anforderung unter https://console.cloud.vmware.com/csp/gateway/am/api/auth/api-tokens/authorize mit refresh_token={your-api-token-value} im Hauptteil der Anforderung aus.
      Beispiel:
      curl --location --request POST 'https://console.cloud.vmware.com/csp/gateway/am/api/auth/api-tokens/authorize' \
      --header 'Accept: application/json' \
      --header 'Content-Type: application/x-www-form-urlencoded' \
      --header 'Cookie: incap_ses_8217_1285679=sJfafQlQfgUmPGK0X6YIckRAaWIAAAAAZ5DsTuKH0eALPsXXCrk1Lw==; nlbi_1285679=qGFfKYa/khghkd06+iiRRwAAAAA7h7npdR2O1o9/MIk2Plre' \
      --data-urlencode 'refresh_token=<your-csp-token>'

      Nach Ablauf des API-Tokens gibt die Anforderung einen Fehler vom Typ Invalid Token oder 400 Bad Request zurück. Weitere Informationen finden Sie unter Vorgehensweise zum Erneuern des API-Tokens für die VMware Reverse Proxy-Client-VM.

      Wenn Ihr API-Token gültig ist, gibt die Anforderung eine Antwort mit einem Zugriffstoken zurück, z. B.:
      {
        "id_token": "eyJhbGciOiJS.......srRmGX9eYKOKMA",
        "token_type": "bearer",
        "expires_in": 1799,
        "scope": "ALL_PERMISSIONS openid group_ids group_names",
        "access_token": "eyJhbGciOiJSU.........Q6Y9Yohgw",
        "refresh_token": "B4STbh2fYFmjI9ABCv..............XeRniDiO4cBJjF82sWWprZfm7OLHn"
      }

      Der relevante Teil ist access_token, der immer mit "ey" beginnt und ein JSON Web Token (JWT) ist.

    2. Kopieren und fügen Sie access_token in den Abschnitt Kodiert unter https://jwt.io/ ein.
    3. Stellen Sie sicher, dass context_name in der Nutzlast die Organisations-ID für Ihre VMware Cloud-Organisation enthält und der Abschnitt Perms die Rolle provider:network aufweist.
      Wenn eine dieser Bedingungen nicht erfüllt ist, erneuern Sie Ihr API-Token. Weitere Informationen finden Sie unter Vorgehensweise zum Erneuern des API-Tokens für die VMware Reverse Proxy-Client-VM.