Der Versuch, die NSX Application Platform bereitzustellen, ist fehlgeschlagen, wenn das System versucht hat, das Helm-Diagramm zu installieren.

Problem

Nachdem 10 % des NSX Application Platform-Bereitstellungsvorgangs abgeschlossen wurden, zeigte das System beim Versuch, das Helm-Diagramm zu installieren, die folgende Fehlermeldung an.
NSX Application Platform deployment failed!
See Troubleshooting Documentation.
Helm install chart operation failed. Error: failed post-install: timed out waiting for the condition.

Ursache

Der Bereitstellungsvorgang versucht, auf eine Harbor-Registrierung zuzugreifen, die für die Verwendung von HTTP anstelle von HTTPS konfiguriert ist.

Lösung

  1. Für eine Produktionsumgebung muss Ihr Infrastrukturadministrator ein von einer Zertifizierungsstelle signiertes Zertifikat abrufen, um den HTTPS-Zugriff auf die private Harbor-Registrierung zu konfigurieren, die sie installiert haben. Weitere Informationen finden Sie auf der Webseite zum Konfigurieren des HTTPS-Zugriffs auf Harbor.
  2. (Optional) (Verwenden Sie diesen Schritt mit Vorsicht für den Upstream-Kubernetes-Cluster.) Wenn Sie weiterhin eine Harbor-Registrierung verwenden möchten, die HTTP anstelle von HTTPS verwendet, muss Ihr Infrastrukturadministrator die folgenden Informationen als Problemumgehung verwenden. Sie müssen die Problemumgehung auf alle Steuerungs- und Worker-Knoten des Upstream-Kubernetes-Clusters anwenden, den Sie für die NSX Application Platform-Bereitstellung verwenden.
    1. Fügen Sie Folgendes zu Ihrer Datei daemon.json hinzu, die sich im Verzeichnis /etc/docker/daemon.json befindet.
      {
      "insecure-registries" : ["Harbor FQDN or Harbor IP"]
      }
      
    2. Starten Sie die Docker-Engine mit dem folgenden Befehl neu.
      systemctl restart docker
  3. (Optional) (Verwenden Sie diesen Schritt mit Vorsicht für TKG-Cluster in Supervisor.) Um weiterhin eine Harbor-Registrierung zu verwenden, die HTTP anstelle von HTTPS verwendet, muss Ihr Infrastrukturadministrator die folgenden Informationen zur Problemumgehung auf alle Steuerungs- und Worker-Knoten des TKG-Clusters in Supervisor anwenden, die Sie für die NSX Application Platform-Bereitstellung verwenden.
    1. Melden Sie sich bei jedem Tanzu-Worker-Knoten mithilfe der unter SSH zu Tanzu Kubernetes-Clusterknoten beschriebenen Schritte als Systembenutzer mithilfe eines Kennworts an.
    2. Bearbeiten Sie die Datei config.toml mit dem folgenden Befehl.
      sudo vim /etc/containerd/config.toml
    3. Fügen Sie die folgenden Einträge in der config.toml für die Harbor-Registrierung hinzu, wobei „10.222.44.111“ die URL für eine Beispiel-Harbor-Registrierung ist.
       [plugins.cri.registry]
            [plugins.cri.registry.mirrors]
              [plugins.cri.registry.mirrors."docker.io"]
                endpoint = ["https://registry-1.docker.io"]
              [plugins.cri.registry.mirrors."localhost:5000"]
                 endpoint = ["http://localhost:5000"]
              [plugins.cri.registry.mirrors."10.222.44.111"]
                 endpoint = ["http://10.222.44.111"] 
    4. Starten Sie den Docker-Client mit dem folgenden Befehl neu.
      sudo systemctl restart docker