Riferimento per il codice di errore della modalità privata di Anthos

I messaggi di errore in modalità privata di Anthos sono costituiti da un ID nel formato APME1234, dove 1234 è un numero univoco, seguito da una descrizione del problema e da un suggerimento per risolverlo. Questo documento elenca ciascuno di questi messaggi di errore.

Errore AccessAccess APME1000

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

Verifica quanto segue:

  • Le immagini richieste sono presenti nel Container Registry.
  • Il Registro di sistema è raggiungibile dall'origine dell'errore.
  • La workstation ha l'autorizzazione di READ ed PULL 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 dei 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.

Errore CPME2001 UserClusterKubeconfig

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

Verifica se:

  • Lo spazio dei nomi cluster-CLUSTER_NAME esiste nel cluster di amministrazione.
  • Gli oggetti cluster esistono nello spazio dei nomi cluster-CLUSTER_NAME.
  • Il secret CLUSTER_NAME-kubeconfig esiste nello spazio dei nomi cluster-CLUSTER_NAME.
  • Disponi di tutte le autorizzazioni necessarie per accedere agli oggetti menzionati sopra.

Errore APME2002 ManagementCenterNotSchingulable

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 dispone di nodi worker e, per impostazione predefinita, il cluster non pianifica i carichi di lavoro sul nodo del piano di controllo per motivi di sicurezza.

Per risolvere questo problema:

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

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

    YAML di esempio:

    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, per consentire l'esecuzione dei carichi di lavoro non di sistema sui nodi del piano di controllo.

    NOTA: considera 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 è già vincolata da risorse, è configurata in modo errato o il carico di lavoro presenta un comportamento imprevisto, potrebbe avere un impatto negativo sul server API di Kubernetes.

    • Sicurezza: i container non rappresentano un forte limite di sicurezza. Se un carico di lavoro dannoso esce dal container, potrebbe assumere il controllo del piano di controllo del cluster. Se il cluster gestisce altri cluster utente, l'utente malintenzionato può accedere alle credenziali nel cluster di amministrazione e ottenere il controllo anche dei cluster utente.

    • Costo: la modalità privata di Anthos non addebita alcun costo per i nodi del piano di controllo purché sia presente l'incompatibilità di node-role.kubernetes.io/master:NoSchedule. Dopo aver rimosso l'incompatibilità e abilitato l'esecuzione dei carichi di lavoro degli utenti sui nodi del piano di controllo, i costi vengono addebitati come qualsiasi altro nodo. Per informazioni dettagliate sui prezzi, consulta la pagina 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 amministratore prima di eseguire l'upgrade del Centro di gestione.

Il Centro di gestione nella nuova release della modalità privata di Anthos potrebbe richiedere l'esecuzione nella 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 le istruzioni dettagliate, consulta l'articolo sull'upgrade del cluster di amministrazione.

APME3000 AISLoginClientValidationError

Funzionalità ritirata in modalità privata di Anthos 1.9

PermissionDeniedError APME3001

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

Per risolvere il problema:

  • Identifica il ruolo assegnato.

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

  • Se viene assegnato un ruolo con privilegio inferiore ed è necessario un ruolo con privilegi superiori per eseguire una determinata azione o se il ruolo è stato assegnato in modo errato, chiedi agli amministratori di verificare se l'accesso può essere concesso.

  • Se il ruolo dispone di autorizzazioni sufficienti per l'azione in base ai ruoli di autorizzazione predefiniti e le autorizzazioni e APME3001-PermissionDeniedError viene visualizzato per errore, segnala un bug all'indirizzo anthos-private-mode-feedback@google.com.

APME3002 AuthMethodPreflightCheckError

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

Se hai fornito un'impostazione OIDC:

  • Verifica che l'URL del provider OIDC sia corretto.
  • Assicurati che la pagina di rilevamento della configurazione 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 del provider OIDC.

APME3003 UserCredentialNotFoundError

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

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

Errore APME4001 ObservabilityOperatorUpgrade

Questo errore indica che si è verificato un errore durante l'upgrade dei componenti di osservabilità (durante l'upgrade della modalità privata 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 condizione status della condizione Installed nell'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 rapporto sugli errori sono facoltative. Se lo stato non è True, esegui le procedure di mitigazione elencate nel rapporto sugli errori.

Passaggi successivi