Risolvi i problemi relativi ai cluster Amazon EKS locali su Outposts AWS - Amazon EKS

Aiutaci a migliorare questa pagina

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Vuoi contribuire a questa guida per l'utente? Scegli il GitHub link Modifica questa pagina che si trova nel riquadro destro di ogni pagina. I tuoi contributi contribuiranno a rendere la nostra guida utente migliore per tutti.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Risolvi i problemi relativi ai cluster Amazon EKS locali su Outposts AWS

Questo argomento illustra alcuni errori comuni che si potrebbero verificare durante l'utilizzo dei cluster locali e il modo in cui risolverli. I cluster locali sono simili ai cluster Amazon EKS nel cloud, ma ci sono alcune differenze nel modo in cui vengono gestiti da Amazon EKS.

I cluster locali vengono creati tramite l'API Amazon EKS, ma vengono eseguiti in modo asincrono. Ciò significa che le richieste all'API Amazon EKS vengono restituite immediatamente per i cluster locali. Tuttavia, queste richieste potrebbero avere esito positivo, anticipare l’errore a causa di errori di convalida degli input oppure fallire e riportare errori di convalida descrittivi. Questo comportamento è simile al Kubernetes API.

I cluster locali non passano a uno FAILED stato. Amazon EKS prova a riconciliare lo stato del cluster con lo stato desiderato richiesto dall'utente in modo continuo. Di conseguenza, un cluster locale può rimanere a lungo nello stato CREATING, fino a quando il problema di base non viene risolto.

I problemi relativi ai cluster locali possono essere scoperti utilizzando il comando describe-cluster Amazon EKS AWS CLI. I problemi relativi ai cluster locali vengono evidenziati dal cluster.health campo di risposta del comando. describe-cluster Il messaggio contenuto in questo campo include un codice di errore, un messaggio descrittivo e una risorsa correlata. IDs Queste informazioni sono disponibili solo tramite l'API e la AWS CLI di Amazon EKS. Nell'esempio seguente, sostituiscilo my-cluster con il nome del tuo cluster locale.

aws eks describe-cluster --name my-cluster --query 'cluster.health'

Di seguito viene riportato un output di esempio:

{ "issues": [ { "code": "ConfigurationConflict", "message": "The instance type 'm5.large' is not supported in Outpost 'my-outpost-arn'.", "resourceIds": [ "my-cluster-arn" ] } ] }

Se il problema non è risolvibile, potrebbe essere necessario eliminare il cluster locale e crearne uno nuovo. Ad esempio, cercando di effettuare il provisioning di un cluster con un tipo di istanza non disponibile su Outpost. La tabella seguente include gli errori più comuni relativi allo stato di integrità.

Scenario di errore Codice Messaggio ResourceIds

Le sottoreti fornite non sono state trovate.

ResourceNotFound

The subnet ID subnet-id does not exist

Tutte le sottoreti fornite IDs

Le sottoreti fornite non appartengono allo stesso VPC.

ConfigurationConflict

Subnets specified must belong to the same VPC

Tutte le sottoreti fornite IDs

Alcune sottoreti fornite non appartengono all'Outpost specificato.

ConfigurationConflict

Subnet subnet-id expected to be in outpost-arn, but is in other-outpost-arn

ID della sottorete problematico

Alcune sottoreti fornite non appartengono a nessun Outpost.

ConfigurationConflict

Subnet subnet-id is not part of any Outpost

ID della sottorete problematico

Alcune sottoreti fornite non dispongono di indirizzi gratuiti sufficienti per creare interfacce di rete elastiche per le istanze del piano di controllo.

ResourceLimitExceeded

The specified subnet does not have enough free addresses to satisfy the request.

ID della sottorete problematico

Il tipo di istanza del piano di controllo specificato non è supportato su Outpost.

ConfigurationConflict

The instance type type is not supported in Outpost outpost-arn

ARN del cluster

Hai terminato un' EC2 istanza Amazon del piano di controllo o l'operazione run-instance è stata completata, ma lo stato ha rilevato modifiche a. Terminated Ciò può verificarsi per un periodo di tempo dopo la riconnessione di Outpost e gli errori interni di Amazon EBS causano il fallimento di un flusso di lavoro EC2 interno di Amazon.

InternalFailure

EC2 instance state "Terminated" is unexpected

ARN del cluster

Capacità insufficiente nell'Outpost. Ciò può verificarsi anche quando viene creato un cluster se un Outpost è disconnesso dalla regione. AWS

ResourceLimitExceeded

There is not enough capacity on the Outpost to launch or start the instance.

ARN del cluster

Il tuo account supera la quota del gruppo di sicurezza

ResourceLimitExceeded

Messaggio di errore restituito dall' EC2 API Amazon

ID del VPC di destinazione

Il tuo account supera la quota dell'interfaccia di rete elastica

ResourceLimitExceeded

Messaggio di errore restituito dall' EC2 API Amazon

ID della sottorete di destinazione

Le istanze del piano di controllo non erano raggiungibili tramite Systems Manager AWS . Per la risoluzione, consulta la sezione Le istanze del piano di controllo non sono raggiungibili tramite Systems Manager AWS.

ClusterUnreachable

Le istanze del piano di controllo di Amazon EKS non sono raggiungibili tramite SSM. Verifica la configurazione SSM e di rete e fai riferimento alla documentazione per la risoluzione dei problemi di EKS su Outposts.

EC2 Istanza Amazon IDs

Si è verificato un errore durante la raccolta dei dettagli per un gruppo di sicurezza gestito o un'interfaccia di rete elastica.

Basato sul codice di errore EC2 del client Amazon.

Messaggio di errore restituito dall' EC2 API Amazon

Tutti i gruppi di sicurezza gestiti IDs

Si è verificato un errore durante l'autorizzazione o la revoca delle regole di ingresso dei gruppi di sicurezza. Questo vale per i gruppi di sicurezza sia del cluster sia del piano di controllo.

Basato sul codice di errore EC2 del client Amazon.

Messaggio di errore restituito dall' EC2 API Amazon

ID gruppo di sicurezza problematico

Si è verificato un errore durante l'eliminazione di un'interfaccia di rete elastica per un'istanza del piano di controllo

Basato sul codice di errore EC2 del client Amazon.

Messaggio di errore restituito dall' EC2 API Amazon

ID dell'interfaccia di rete elastica problematica

La tabella seguente elenca gli errori di altri AWS servizi presentati nel campo relativo allo stato della describe-cluster risposta.

Codice EC2 di errore Amazon Codice del problema di integrità del cluster Descrizione

AuthFailure

AccessDenied

Questo problema può verificarsi per una serie di motivi. Di solito si verificano se un tag utilizzato dal servizio per definire la policy dei ruoli collegati al servizio viene rimosso accidentalmente dal piano di controllo. In tal caso, Amazon EKS non può più gestire e monitorare queste AWS risorse.

UnauthorizedOperation

AccessDenied

Questo problema può verificarsi per una serie di motivi. Di solito si verificano se un tag utilizzato dal servizio per definire la policy dei ruoli collegati al servizio viene rimosso accidentalmente dal piano di controllo. In tal caso, Amazon EKS non può più gestire e monitorare queste AWS risorse.

InvalidSubnetID.NotFound

ResourceNotFound

Questo errore si verifica quando non è possibile trovare l'ID di sottorete per le regole di ingresso di un gruppo di sicurezza.

InvalidPermission.NotFound

ResourceNotFound

Questo errore si verifica quando le autorizzazioni per le regole di ingresso di un gruppo di sicurezza non sono corrette.

InvalidGroup.NotFound

ResourceNotFound

Questo errore si verifica quando non è possibile trovare il gruppo delle regole di ingresso di un gruppo di sicurezza.

InvalidNetworkInterfaceID.NotFound

ResourceNotFound

Questo errore si verifica quando non è possibile trovare l'ID dell'interfaccia di rete per le regole di ingresso di un gruppo di sicurezza.

InsufficientFreeAddressesInSubnet

ResourceLimitExceeded

Questo errore si verifica quando viene superata la quota di risorse della sottorete.

InsufficientCapacityOnOutpost

ResourceLimitExceeded

Questo errore si verifica quando viene superata la quota di capacità dell'outpost.

NetworkInterfaceLimitExceeded

ResourceLimitExceeded

Questo errore si verifica quando viene superata la quota dell'interfaccia di rete elastica.

SecurityGroupLimitExceeded

ResourceLimitExceeded

Questo errore si verifica quando viene superata la quota del gruppo di sicurezza.

VcpuLimitExceeded

ResourceLimitExceeded

Ciò si verifica quando si crea un' EC2 istanza Amazon in un nuovo account. L'errore potrebbe essere simile al seguente: "You have requested more vCPU capacity than your current vCPU limit of 32 allows for the instance bucket that the specified instance type belongs to. Please visit http://aws.amazon.com/contact-us/ec2-request to request an adjustment to this limit."

InvalidParameterValue

ConfigurationConflict

Amazon EC2 restituisce questo codice di errore se il tipo di istanza specificato non è supportato su Outpost.

Tutti gli altri errori

InternalFailure

Nessuno

I cluster locali richiedono autorizzazioni e policy diverse rispetto ai cluster Amazon EKS ospitati nel cloud. Quando un cluster non riesce a creare e produce un InvalidPermissions errore, ricontrolla che al ruolo del cluster che stai utilizzando sia associata la policy EKSLocal OutpostClusterPolicy gestita da Amazon. Tutte le altre chiamate API richiedono lo stesso set di autorizzazioni dei cluster Amazon EKS sul cloud.

La quantità di tempo necessaria per creare un cluster locale varia a seconda di diversi fattori. Questi fattori includono la configurazione di rete, la configurazione di Outpost e la configurazione del cluster. In generale, viene creato un cluster locale che passa allo stato ACTIVE entro 15-20 minuti. Se un cluster locale rimane nello stato CREATING, puoi richiamare describe-cluster per informazioni sulla causa nel campo di output cluster.health.

I problemi più comuni sono i seguenti:

  • Il cluster non può connettersi all'istanza del piano di controllo dalla AWS regione in cui si trova Systems Manager. Puoi eseguire una verifica chiamando aws ssm start-session --target instance-id da un host bastione nella regione. Se il comando non funziona, controlla se Systems Manager è in esecuzione sull'istanza del piano di controllo. Oppure, un'altra soluzione alternativa consiste nell'eliminare il cluster e quindi ricrearlo.

  • Le istanze del piano di controllo di Systems Manager potrebbero non avere accesso a Internet. Verifica se la sottorete fornita durante la creazione del cluster dispone di un gateway NAT e un VPC con un gateway Internet. Usa VPC Reachability Analyzer per verificare se l'istanza del control plane può raggiungere il gateway Internet. Per ulteriori informazioni, consulta la sezione Getting started with VPC Reachability Analyzer (Nozioni di base su VPC Reachability Analyzer).

  • L'ARN del ruolo fornito è privo di alcune policy. Verifica se la policy AWS gestita: Amazon EKSLocal OutpostClusterPolicy è stata rimossa dal ruolo. Ciò può verificarsi anche se uno AWS CloudFormation stack non è configurato correttamente.

  • Tutte le sottoreti fornite devono essere associate allo stesso Outpost ed essere in grado di raggiungersi tra loro. Quando vengono specificate più sottoreti durante la creazione del cluster, Amazon EKS prova a distribuire le istanze del piano di controllo su più sottoreti.

  • I gruppi di sicurezza gestiti da Amazon EKS vengono applicati all'interfaccia di rete elastica. Tuttavia, altri elementi di configurazione, come le regole del firewall NACL, potrebbero essere in conflitto con le regole per l'interfaccia di rete elastica.

La configurazione del DNS del VPC e della sottorete non è configurata correttamente o è assente

Consulta Creare un VPC e sottoreti per i cluster Amazon EKS su Outposts. AWS

  • Problemi relativi alle AMI:

  • Manca l' AWS IAM AuthenticatorConfigMap: se manca, devi crearlo. Per ulteriori informazioni, consulta Applica la aws-authConfigMap al cluster.

  • È stato utilizzato un gruppo di sicurezza non corretto: assicurati di utilizzare eks-cluster-sg-cluster-name-uniqueid per il gruppo di sicurezza dei nodi worker. Il gruppo di sicurezza selezionato viene modificato AWS CloudFormation per consentire un nuovo gruppo di sicurezza ogni volta che viene utilizzato lo stack.

  • A seguito dei passaggi del VPC di collegamento privato imprevisto: vengono passati dati CA (--b64-cluster-ca) o API Endpoint (--apiserver-endpoint) errati.

  • Configurato male Pod politica di sicurezza:

    • Il CoreDNS e Amazon VPC CNI plugin for Kubernetes I daemonset devono essere eseguiti sui nodi affinché i nodi possano unirsi e comunicare con il cluster.

    • Il Amazon VPC CNI plugin for Kubernetes richiede alcune funzionalità di rete privilegiate per funzionare correttamente. È possibile visualizzare le funzionalità di rete privilegiate con il comando seguente: kubectl describe psp eks.privileged.

    Non è consigliabile modificare la politica di sicurezza predefinita dei pod. Per ulteriori informazioni, consulta Scopri come è stato creato Amazon EKS Pod politiche di sicurezza (PSP).

Quando un Outpost viene disconnesso dalla AWS regione a cui è associato, il Kubernetes il cluster probabilmente continuerà a funzionare normalmente. Tuttavia, se il cluster non funziona correttamente, segui la procedura di risoluzione dei problemi in Preparare i cluster Amazon EKS locali su AWS Outposts per le disconnessioni di rete. Se riscontri altri problemi, contatta l' AWS assistenza. AWS Support può aiutarti a scaricare ed eseguire uno strumento di raccolta dei log. In questo modo, puoi raccogliere i log dal tuo Kubernetes raggruppa le istanze del piano di controllo e inviale all' AWS assistenza Support per ulteriori indagini.

Quando le istanze del piano di controllo di Amazon EKS non sono raggiungibili tramite AWS Systems Manager (Systems Manager), Amazon EKS visualizza il seguente errore per il cluster.

Amazon EKS control plane instances are not reachable through SSM. Please verify your SSM and network configuration, and reference the EKS on Outposts troubleshooting documentation.

Per risolvere questo problema, assicurati che il tuo VPC e le sottoreti soddisfino i requisiti in Creare un VPC e sottoreti per i cluster Amazon EKS su AWS Outposts e di aver completato i passaggi descritti nella Configurazione di Session Manager nella Systems Manager User Guide. AWS