Riferimento al codice di errore Anthos

I messaggi di errore Anthos sono costituiti da un ID errore nel formato APME1234, dove 1234 è un numero univoco, seguito da una descrizione del problema e da un suggerimento per risolverlo. In questo documento sono riportati tutti i messaggi di errore.

APME1000 ImageAccessError

Questo errore indica che il componente che ha prodotto l'errore non riesce a trovare una o più immagini richieste nel registro specificato.

Verifica quanto segue:

  • Le immagini richieste esistono in Container Registry.
  • Il Registro di sistema è raggiungibile dall'origine dell'errore.
  • La workstation ha l'autorizzazione in lettura e scrittura dal registro.
  • La workstation ha il file ${HOME}/.docker/config.json ed è configurata correttamente per accedere al Registro di sistema.

APME1001 InvalidRegistryInputError

Il valore del flag --private-registry deve essere conforme al formato: hostname[:port]/repository/location e non può iniziare con uno schema (ad esempio https://). Il nome host non può essere localhost o 127.0.0.1. Il valore viene utilizzato da Kubernetes per recuperare le immagini.

Esempi di valori flag:

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

APME2000 KubeContextNotFoundError

Questo errore indica che non è stato possibile trovare il kubecontext specificato.

Verifica se:

  • Il file KUBECONFIG esiste.
  • Il file $HOME/.kube/config esiste quando la variabile di ambiente KUBECONFIG non è specificata.
  • Il contesto esiste nel file KUBECONFIG.

APME2001 UserClusterKubeconfigError

Questo errore indica che kubeconfig per il cluster utente non è stato trovato.

Verifica se:

  • Lo spazio dei nomi cluster-CLUSTER_NAME esiste nel cluster di amministrazione.
  • Gli oggetti del cluster esistono sotto lo spazio dei nomi cluster-CLUSTER_NAME.
  • Il secret CLUSTER_NAME-kubeconfig esiste sotto lo spazio dei nomi cluster-CLUSTER_NAME.
  • Hai tutte le autorizzazioni necessarie per accedere agli oggetti menzionati in precedenza.

APME2002 ManagementCenterNotSchingulableErrore

Questo errore indica che Anthos Management Center non può essere pianificato per l'esecuzione sui nodi di un cluster.

Questo errore di solito può verificarsi se il cluster di amministrazione non ha nodi worker e, per impostazione predefinita, il cluster non pianifica i carichi di lavoro sul nodo del piano di controllo.

Per risolvere questo problema:

  1. [Preferito] Aggiungi un pool di nodi worker al cluster di amministrazione.

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

    Esempio YAML:

    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. Rimuovi l'incompatibilità del piano di controllo dai nodi del piano di controllo, in modo che i carichi di lavoro non di sistema possano essere eseguiti sui nodi del piano di controllo.

    NOTA: valuta gli svantaggi di questa soluzione:

    • Disponibilità del piano di controllo: l'esecuzione di carichi di lavoro aggiuntivi aumenta l'entropia sui nodi del piano di controllo. Se la macchina ha già un limite di risorse, la configurazione è errata o il carico di lavoro ha comportamenti imprevisti, potrebbe avere un impatto negativo sul server API Kubernetes.

    • Sicurezza: i container non rappresentano un confine di sicurezza sicuro. Se un carico di lavoro dannoso si arresta al di fuori del container, potrebbe ottenere il controllo del piano di controllo del cluster. Se il cluster gestisce altri cluster utente, l'attaccante può accedere alle credenziali nel cluster di amministrazione e ottenere il controllo anche dei cluster utente.

    • Costo: Anthos non addebita alcun costo per i nodi del piano di controllo finché è presente l'incompatibilità node-role.kubernetes.io/master:NoSchedule. Una volta rimossa l'incompatibilità e abilitato i carichi di lavoro utente sui nodi del piano di controllo, vengono addebitati i costi come qualsiasi altro nodo. Consulta la pagina Prezzi per informazioni più dettagliate sui prezzi.

    Comando di esempio per consentire l'esecuzione dei carichi di lavoro su tutti i nodi del piano di controllo:

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

APME2003 AdminClusterNotUpgradedError

Questo errore indica che è necessario eseguire l'upgrade del cluster di amministrazione prima di eseguire l'upgrade del Centro di gestione.

Il Centro di gestione nella nuova versione di Anthos potrebbe richiedere l'esecuzione della nuova versione del cluster di amministrazione.

Aggiorna il file di configurazione del cluster di amministrazione ed esegui il comando actl clusters baremetal upgrade admin per completare l'upgrade. Per istruzioni dettagliate, consulta la pagina relativa all'upgrade del cluster di amministrazione.

APME3000 AISLoginClientValidationError

Ritirato in Anthos 1.9

APME3001 PermissionDeniedError

L'errore indica autorizzazioni insufficienti per eseguire l'azione.

Per risolvere il problema:

  • Identifica il ruolo assegnato.

    • Metodo 1: utilizzo della console di Anthos Management Center
      • Apri la scheda Identity and Access nella Console Centro di gestione.
      • Vai alla scheda Access nella schermata Identity and Access per visualizzare il ruolo assegnato.
    • Metodo 2: utilizza il comando 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]
    
  • Fai riferimento ai ruoli di preautorizzazione e alle autorizzazioni per visualizzare le autorizzazioni disponibili per i ruoli di autorizzazione preimpostati.

  • Se viene assegnato un ruolo con privilegi più bassi e se è necessario un ruolo con privilegi più elevati per eseguire una determinata azione o se il ruolo è stato assegnato in modo errato, richiedi agli amministratori di verificare se è possibile concedere l'accesso.

  • Se il ruolo dispone di autorizzazioni sufficienti per l'azione in base a preimposta i ruoli di autorizzazione e le autorizzazioni e APME3001-PermissionDeniedError non vengono visualizzate correttamente, segnala un bug all'indirizzo anthos-private-mode-feedback@google.com.

APME3002 AuthMethodPreflightCheckError

L'errore indica che l'impostazione del metodo di autenticazione fornita non può superare il controllo preliminare.

Se hai fornito un'impostazione OIDC:

  • Verifica che l'URL al provider OIDC sia corretto.
  • Assicurati che la pagina di rilevamento della configurazione di OpenID https://<your OIDC provider URL>/.well-known/openid-configuration sia accessibile e contenga una configurazione valida.
  • Se il tuo provider OIDC utilizza un certificato SSL autofirmato, assicurati di inserirlo nel campo del certificato provider OIDC.

APME3003 UserCredentialNotFoundError

Questo errore indica che l'azione richiesta non può essere eseguita senza una credenziale utente.

Per eseguire la richiesta, abilita l'autenticazione o chiedi all'amministratore di abilitarla. Per configurare l'autenticazione OIDC, consulta la sezione Autenticarsi con OIDC.

APME4001 ObservabilityOperatorUpgradeError

Questo errore indica che si è verificato un errore durante l'upgrade dei componenti osservabili (durante l'upgrade di Anthos). Lo stack di osservabilità aggiornato potrebbe continuare a funzionare nonostante la segnalazione di questo errore.

Per verificare se lo stack di osservabilità aggiornato funzionerà, controlla la status della condizione Installed sull'oggetto default del tipo Observability nello spazio dei nomi anthos-management-center:

kubectl get -n anthos-management-center observability default -o jsonpath='
{.status.conditions[?(@..type=="Installed")].status}{"\n"}'

Se status è True, lo stack di osservabilità continua a funzionare. Le procedure di mitigazione elencate nel report degli errori sono facoltative. Se lo stato non è True, esegui le procedure di mitigazione elencate nel rapporto sugli errori.

Passaggi successivi