Fehlercodes im privaten Anthos-Modus

Config Fehlermeldungen im privaten Anthos-Modus enthalten eine Fehler-ID im Format APME1234, wobei 1234 eine eindeutige Nummer ist, gefolgt von einer Beschreibung des Problems und einem Vorschlag zur Behebung. In diesem Dokument werden alle Fehlermeldungen aufgeführt.

APME1000 ImageAccessError

Dieser Fehler gibt an, dass die Komponente, die den Fehler erzeugt hat, mindestens ein erforderliches Image in der angegebenen Registry nicht finden kann.

Bitte bestätigen Sie die folgenden Punkte:

  • Die erforderlichen Images sind in der Container Registry vorhanden.
  • Die Registry ist vom Ursprung des Fehlers aus erreichbar.
  • Die Workstation hat die Berechtigung, aus der Registry zu lesen und abzurufen.
  • Die Workstation hat die Datei ${HOME}/.docker/config.json und ist für den Zugriff auf die Registry korrekt konfiguriert.

APME1001 InvalidRegistryInputError

Der Wert des Flags --private-registry muss dem Format hostname[:port]/repository/location entsprechen und darf nicht mit einem Schema (z. B. https://) beginnen. Der Hostname darf nicht localhost oder 127.0.0.1 sein. Der Wert wird von Kubernetes zum Abrufen von Bildern verwendet.

Beispiel für Flag-Werte:

  • fictional.registry.example/repository/location
  • fictional.registry.example:10443/repository/location
  • 10.200.0.2/library

APME2000 KubeContextNotFoundError

Dieser Fehler gibt an, dass der angegebene kubecontext nicht gefunden werden konnte.

Bitte prüfen Sie, ob

  • die Datei KUBECONFIG vorhanden ist.
  • die Datei $HOME/.kube/config vorhanden ist, wenn die mgebungsvariable KUBECONFIG nicht angegeben wurde.
  • der Kontext in der Datei KUBECONFIG vorhanden ist.

APME2001 UserClusterKubeconfigError

Dieser Fehler weist darauf hin, dass die kubeconfig-Datei für den Nutzercluster nicht gefunden werden konnte.

Bitte prüfen Sie, ob

  • der Namespace cluster-CLUSTER_NAME im Administratorcluster vorhanden ist.
  • sich die Clusterobjekte unter dem Namespace cluster-CLUSTER_NAME befinden.
  • das Secret CLUSTER_NAME-kubeconfig im Namespace cluster-CLUSTER_NAME vorhanden ist.
  • Sie alle erforderlichen Berechtigungen haben, um auf die oben genannten Objekte zuzugreifen.

APME2002 ManagementCenterNotSchedulableError

Dieser Fehler weist darauf hin, dass das Verwaltungscenter nicht für die Ausführung auf den Knoten eines Clusters geplant werden kann.

Dieser Fehler kann normalerweise auftreten, wenn der Administratorcluster keine Worker-Knoten hat und Ihr Cluster aus Sicherheitsgründen standardmäßig keine Arbeitslasten auf dem Knoten der Steuerungsebene plant.

So beheben Sie das Problem:

  1. [Bevorzugt] Worker-Knotenpool zum Administratorcluster hinzufügen.

    KUBECONFIG=${ADMIN_KUBECONFIG} kubectl apply -f <path/to/example-nodepool.yaml>
    

    YAML-Beispiel:

    apiVersion: baremetal.cluster.gke.io/v1
    kind: NodePool
    metadata:
      name: node-pool-1
      namespace: cluster-admin
    spec:
      clusterName: admin
      nodes:
      - address: <IP address of the worker node machine. e.g. 10.200.0.4>
    
  2. Entfernen Sie die Markierung der Steuerungsebene von den Knoten der Steuerungsebene, damit Nicht-Systemarbeitslasten auf den Steuerungsebenenknoten ausgeführt werden können.

    HINWEIS: Beachten Sie die Nachteile dieser Lösung:

    • Verfügbarkeit der Steuerungsebene: Durch die Ausführung zusätzlicher Arbeitslasten erhöht sich die Entropie auf den Knoten der Steuerungsebene. Wenn die Maschine bereits durch eine Ressource eingeschränkt oder falsch konfiguriert ist oder ein unerwartetes Verhalten der Arbeitslast auftritt, kann sich dies negativ auf den Kubernetes API-Server auswirken.

    • Sicherheit: Container sind keine starke Sicherheitsgrenze. Wenn eine schädliche Arbeitslast aus dem Container entfernt wird, kann sie die Kontrolle über die Clustersteuerungsebene erhalten. Wenn der Cluster andere Nutzercluster verwaltet, kann der Angreifer möglicherweise auf die Anmeldedaten im Administratorcluster zugreifen und auch die Kontrolle über Nutzercluster übernehmen.

    • Kosten: Im privaten Anthos-Modus werden keine Gebühren für Knoten der Steuerungsebene berechnet, solange die Markierung node-role.kubernetes.io/master:NoSchedule vorhanden ist. Nachdem Sie die Markierung entfernt und Nutzerarbeitslasten auf Steuerungsebenenknoten ausgeführt haben, werden sie wie alle anderen Knoten in Rechnung gestellt. Detaillierte Preisinformationen finden Sie auf der Preisseite.

    Beispielbefehl, mit dem Arbeitslasten auf allen Knoten der Steuerungsebene ausgeführt werden können:

    KUBECONFIG=${ADMIN_KUBECONFIG} kubectl taint nodes --all node-role.kubernetes.io/master:NoSchedule-
    

APME2003 AdminClusterNotUpgradedError

Dieser Fehler gibt an, dass der Administratorcluster aktualisiert werden muss, bevor ein Upgrade des Management Center im privaten Anthos-Modus ausgeführt werden kann.

Das Management Center im neuen privaten Modus von Anthos erfordert möglicherweise die Ausführung in der neuen Version des Administratorclusters.

Aktualisieren Sie die Konfigurationsdatei des Administratorclusters und geben Sie den Befehl actl clusters baremetal upgrade admin ein, um das Upgrade auszuführen. Eine ausführliche Anleitung finden Sie unter Administratorcluster aktualisieren.

APME3000 AISLoginClientValidationError

Damit Nutzer über ihre föderierten Anmeldedaten (OIDC-Authentifizierung) auf die Cluster zugreifen können, muss ADMIN_OIDC_KUBECONFIG von Administratoren generiert werden.

ADMIN_ACTL_AUTH_LOGIN_CONFIG=admin-actl-auth-login-config.yaml
ADMIN_OIDC_KUBECONFIG=oidc-kubeconfig
actl auth login --login-config=${ADMIN_ACTL_AUTH_LOGIN_CONFIG} --cluster=admin --kubeconfig=${ADMIN_OIDC_KUBECONFIG}

${KUBECTL_ANTHOS_CONFIG} ist eine Eingabekonfigurationsdatei, die vom Verwaltungscenter heruntergeladen wird, während ${ADMIN_OIDC_KUBECONFIG} der Speicherort der kubeconfig-Ausgabedatei ist. Geben Sie die Konfigurationsdatei für die Ausgabe nicht an Mitarbeiter oder Administratoren weiter.

Überprüfen Sie Ihre Eingabewerte, um fortzufahren:

  • Die Flags --login-config und --kubeconfig sind nicht leer.
  • Die Flags --login-config und --kubeconfig sind nicht identisch.
  • Die Flag-Werte --login-config und --kubeconfig haben gültige Dateipfade.

Verwenden Sie das Flag --skip-validation, um die Validierung zu überspringen.

APME3001 PermissionDeniedError

Der Fehler weist auf unzureichende Berechtigungen zum Ausführen der Aktion hin.

Weitere Informationen zur Fehlerbehebung:

  • Ermitteln Sie die zugewiesene Rolle.

    • Methode 1: Verwaltungszentrum verwenden
      • Öffnen Sie im Verwaltungscenter den Tab Identity and Access.
      • Wechseln Sie im Bildschirm Identity and Access zum Tab Access, um die zugewiesene Rolle aufzurufen.
    • Methode 2: Mit dem Befehl "kubectl":
    kubectl get
        rolebinding,clusterrolebinding --all-namespaces -o jsonpath='{range
        .items[?(@.subjects[0].name=="{your
        account}")]}[{.roleRef.kind},{.roleRef.name}]{end}'
    
    Example: kubectl get rolebinding,clusterrolebinding --all-namespaces -o
    jsonpath='{range
    .items[?(@.subjects[0].name=="foo@bar.com")]}[{.roleRef.kind},{.roleRef.name}]{end}'
    [ClusterRole,anthos-platform-admin-read-only]
    
  • Informationen zu den für die voreingestellten Autorisierungsrollen verfügbaren Berechtigungen finden Sie unter Vordefinierte Autorisierungsrollen und Berechtigungen.

  • Wenn eine Rolle mit niedrigerer Berechtigung zugewiesen ist und eine höhere Berechtigungsrolle erforderlich ist, um eine bestimmte Aktion auszuführen, oder wenn die Rolle falsch zugewiesen wurde, bitten Sie die Administratoren, zu prüfen, ob der Zugriff gewährt werden kann.

  • Wenn die Rolle ausreichende Berechtigungen für die Aktion gemäßVoreingestellte Autorisierungsrollen und die Berechtigungen undAPME3001-PermissionDeniedError falsch gesehen, melden Sie einen Fehler unteranthos-private-mode-feedback@google.com.

APME3002 AuthMethodPreflightCheckError

Der Fehler gibt an, dass die angegebene Einstellung für die Authentifizierungsmethode die Preflight-Prüfung nicht bestehen kann.

Wenn Sie eine OIDC-Einstellung bereitgestellt haben:

  • Prüfen Sie, ob die URL zum OIDC-Anbieter korrekt ist.
  • Achten Sie darauf, dass die OpenID-Konfigurationserkennungsseite https://<your OIDC provider URL>/.well-known/openid-configuration zugänglich ist und eine gültige Konfiguration enthält.
  • Wenn Ihr OIDC-Anbieter ein selbst signiertes SSL-Zertifikat verwendet, müssen Sie es in das Feld für das OIDC-Anbieterzertifikat eingeben.

APME3003 UserCredentialNotFoundError

Dieser Fehler weist darauf hin, dass die angeforderte Aktion ohne Nutzeranmeldedaten nicht ausgeführt werden kann.

Aktivieren Sie die Authentifizierung oder bitten Sie Ihren Administrator, die Authentifizierung zu aktivieren. Informationen zum Einrichten der OIDC-Authentifizierung finden Sie unter Mit OIDC authentifizieren.

APME4000 VersionSupportDiscontinuedError

Dieser Fehler weist darauf hin, dass eine verworfene Version eines Anthos-Features noch in einem oder mehreren Nutzerclustern verwendet wird.

Der Name des Anthos-Features und die Liste der Nutzercluster sind in der Fehlermeldung enthalten. Die folgende Meldung zeigt beispielsweise an, dass die Anthos Config Management-Version 1.6.0 in den Nutzerclustern user-cluster-2 und user-cluster-2 installiert ist, die aktualisiert werden müssen.

APME4000: found clusters using the to-be-deprecated Anthos Config Management version "1.6.0": ["user-cluster-1", "user-cluster2"]
Mitigation: Please upgrade the Anthos Config Management on those clusters

In Version 0.9 hat nur Anthos Config Management die Unterstützung für ältere Versionen verworfen. Folgen Sie der Anleitung zum Aktualisieren der Anthos Config Management-Version in den Nutzerclustern, um diesen Fehler zu beheben.

Weitere Informationen