Auf dieser Seite wird beschrieben, wie Sie häufige Probleme bei der Softwarebereitstellung beheben können.
Fehlerbehebung beim Bootstrapping der Steuerungsebene
Wenn Sie Probleme mit dem Bootstrap-Steuerungsebenenprozess beheben möchten, prüfen Sie die folgenden Ressourcen im KIND-Cluster:
Sehen Sie sich den Pod
anthos-cluster-operatoran:kubectl logs deployment/anthos-cluster-operator -c operator -n kube-systemPrüfen Sie die
AddOn-Ressourcen:kubectl get AddOn -AMit dem Befehl
gpc-addonskönnen Sie sich auch die Ressourcen ansehen, um weitere Informationen zu erhalten.Prüfen Sie die
AddOnSet-Ressourcen:kubectl get AddOnSet -AWenn die Verarbeitung des Bootstrap der Steuerungsebene nach der Erstellung des Organisationsinfrastrukturclusters nicht abgeschlossen wird, z. B. während eines Ressourcenpivots, exportieren Sie die Datei
kubeconfigmanuell:kubectl get secret root-admin-kubeconfig -n root -o jsonpath="{.data.value}" | base64 -d > /root/path/to/root-admin-kubeconfig.yaml
Fehlerbehebung bei der Clustererstellung
So beheben Sie Probleme beim Erstellen des Clusters:
Sehen Sie sich die aktuelle Phase des Clusters an und prüfen Sie, ob das Objekt
Harbor-operatoroder Harbor vorhanden ist. Prüfen Sie den Status des Objekts im KIND-Cluster in derAddOnSet-Ressource, indem Sie den folgenden Befehl ausführen:kubectl get addonset -n fleet-root root-admin -o yamlSuchen Sie nach dem Ausführen dieses Befehls in
status.currentStagenach der aktuellen Phase.Prüfen Sie im Infrastrukturcluster der Organisation die Ressourcen im Namespace
harbor-system. Wenn Sie dasHarborCluster-Objekt über den Befehlkubectl get harborcluster harbor -n harbor-systembereitgestellt haben, bedeutet das, dass die Installation in die zweite Phase, die Harbor-Phase, übergegangen ist.Prüfen Sie das Feld
statusim ObjektHarborCluster:kubectl -n harbor-system get harborcluster harborWenn der Status
healthylautet, prüfen Sie die Funktionalität über das Webportal mit dem Befehldocker push.Rufen Sie das Webportal über die gemeldete URL auf. Beispiel:
https://10.200.0.36:10443.Führen Sie im Bootstrapper den Befehl
docker pushaus.Wenn der Status
unhealthyist, sehen Sie sich die Details der Statusbedingungen an, indem Sie den folgenden Eintrag ausführen:kubectl -n harbor-system get harborcluster harbor -o yamlWenn der Status
healthylautet, fahren Sie mit dem Abschnitt Istio-Status prüfen fort. Wenn der Status nichthealthylautet, fahren Sie mit dem nächsten Abschnitt Harbor-Namespace-Ressourcen auswerten fort.
Harbor-Namespace-Ressourcen bewerten
Diese Schritte müssen nur ausgeführt werden, wenn die harbor-system-Ressourcen nicht den Status healthy haben. Informationen zum Prüfen des Status Ihrer harbor-system-Ressourcen finden Sie unter Fehlerbehebung bei der Clustererstellung.
Bewerten Sie die Ressourcen des Namespace
harbor-system:kubectl get all -n harbor-systemPrüfen Sie den Status der Ressourcen, die mit dem Harbor-Operator zusammenhängen, einschließlich der PostgreSQL- und Redis-Operatoren, die in der zweiten Phase der Erstellung des Organisationsinfrastrukturclusters als untergeordnete Diagramme erstellt werden. Prüfen Sie, ob die folgenden Operatoren den Status
Runninghaben:deployment/harbor-operator-harbor-operator deployment/harbor-operator-postgres-operator deployment/harbor-operator-redisoperatorPrüfen Sie, ob die Ressourcen für die PostgreSQL-, Redis- und Harbor-Komponenten alle den Status
healthyhaben. Wenn sich einige Pods nicht im Statushealthybefinden, prüfen Sie die Details des fehlerhaften Pods mit den folgenden Befehlen:kubectl get pod -o wide kubectl describe podMit diesem Befehl können Sie auch die Logs des verwaltenden Operators aufrufen:
kubectl logs -f deploy/harbor-operator-postgres-operatorDie PostgreSQL-Ressource finden Sie unter
statefulset/postgresql-harbor-system-harbor.So prüfen Sie die Redis-Ressource:
- Redis-Instanz:
statefulset/rfr-harbor-redis - Redis-Sentinel:
deployment/rfs-harbor-redis
Die Harbor-Kernkomponenten werden erst bereitgestellt, wenn die beiden Komponenten bereit sind.
Wenn einige Pods der Harbor-Kernkomponenten fehlschlagen, sehen Sie sich die Logs des fehlgeschlagenen Pods an. In einigen Fällen gibt es ein Kommunikationsproblem mit PostgreSQL- oder Redis-Instanzen.
Wenn die Harbor-Kernkomponente beispielsweise mit den bereitgestellten Anmeldedaten keine Verbindung zu PostgreSQL oder Redis herstellen kann, liegt möglicherweise ein Problem mit dem Harbor-Operator vor, der für die Einrichtung der Anmeldedaten vor der Bereitstellung von Harbor-Kernkomponenten verantwortlich ist.
- Redis-Instanz:
Istio-Status prüfen
Prüfen Sie, ob der Pod-Status istio lautet, z. B. istio-system und service/istio-ingressgateway, indem Sie prüfen, ob Port 10443 freigegeben ist.