I messaggi di errore Anthos sono formati 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 ambienteKUBECONFIG
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 nomicluster-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:
[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>
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: Anthos non addebita alcun costo per i nodi del piano di controllo fintanto che è presente l'incompatibilità
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 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 le istruzioni dettagliate, consulta l'articolo sull'upgrade del cluster di amministrazione.
APME3000 AISLoginClientValidationError
Funzionalità ritirata in 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 schermataIdentity and Access
per visualizzare il ruolo assegnato.
- Apri la scheda
- 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]
- Metodo 1: utilizzo di Anthos Management Center Console
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'indirizzoanthos-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 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.