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à.
AWSSupport-TroubleshootEbsCsiDriversForEks
Descrizione
Il AWSSupport-TroubleshootEbsCsiDriversForEks runbook aiuta a risolvere i problemi relativi ai driver relativi ai driver Amazon Elastic Block Store su Amazon Elastic Kubernetes Service (Amazon EKS) e Amazon EBS Container Storage Interface (CSI)
Importante
Attualmente il driver Amazon EBS CSI in esecuzione su non è supportato. AWS Fargate
Come funziona?
Il runbook AWSSupport-TroubleshootEbsCsiDriversForEks esegue i seguenti passaggi di alto livello:
-
Verifica se il cluster Amazon EKS di destinazione esiste ed è attivo.
-
Distribuisce le risorse di autenticazione necessarie per effettuare chiamate API Kubernetes in base al fatto che l'addon sia Amazon o autogestito. EKS-managed
-
Esegue i controlli e la diagnostica dello stato del controller Amazon EBS CSI.
-
Esegue i controlli delle autorizzazioni IAM sui ruoli dei nodi e sui ruoli degli account di servizio.
-
Diagnostica i problemi persistenti di creazione di volumi per il pod applicativo specificato.
-
Controlla la pianificazione da nodo a pod ed esamina gli eventi del pod.
-
Raccoglie i log di Kubernetes e delle applicazioni pertinenti, caricandoli nel bucket Amazon S3 specificato.
-
Esegue controlli sullo stato dei nodi e verifica la connettività con gli endpoint Amazon EC2.
-
Esamina gli allegati persistenti dei dispositivi a blocchi di volume e lo stato di montaggio.
-
Pulisce l'infrastruttura di autenticazione creata durante la risoluzione dei problemi.
-
Genera un rapporto completo sulla risoluzione dei problemi che combina tutti i risultati diagnostici.
Nota
-
La modalità di autenticazione del cluster Amazon EKS deve essere impostata su
APIoAPI_AND_CONFIG_MAP. Ti consigliamo di utilizzare la voce Amazon EKS Access. Il runbook richiede le autorizzazioni Kubernetes Role-based Access Control (RBAC) per eseguire le chiamate API necessarie. -
Se non specifichi un ruolo IAM per la funzione Lambda (
LambdaRoleArnparametro), l'automazione crea un ruolo denominato nel tuo account.Automation-K8sProxy-Role-<ExecutionId>Questo ruolo include le politiche gestiteAWSLambdaBasicExecutionRoleeAWSLambdaVPCAccessExecutionRole. -
Alcuni passaggi diagnostici richiedono che i nodi di lavoro di Amazon EKS siano istanze gestite da Systems Manager. Se i nodi non sono istanze gestite da Systems Manager, i passaggi che richiedono l'accesso a Systems Manager vengono saltati, ma gli altri controlli continuano.
-
L'automazione include una fase di pulizia che rimuove le risorse dell'infrastruttura di autenticazione. Questa fase di pulizia viene eseguita anche quando i passaggi precedenti falliscono, il che aiuta a prevenire le risorse orfane nel tuo account. AWS
Esegui questa automazione (console)
Tipo di documento
Automazione
Proprietario
Amazon
Piattaforme
/
Autorizzazioni IAM richieste
Il AutomationAssumeRole parametro richiede le seguenti azioni per utilizzare correttamente il runbook.
-
ec2:DescribeIamInstanceProfileAssociations -
ec2:DescribeInstanceStatus -
ec2:GetEbsEncryptionByDefault -
eks:DescribeAddon -
eks:DescribeAddonVersions -
eks:DescribeCluster -
iam:GetInstanceProfile -
iam:GetOpenIDConnectProvider -
iam:GetRole -
iam:ListOpenIDConnectProviders -
iam:SimulatePrincipalPolicy -
s3:GetBucketLocation -
s3:GetBucketPolicyStatus -
s3:GetBucketPublicAccessBlock -
s3:GetBucketVersioning -
s3:ListBucket -
s3:ListBucketVersions -
ssm:DescribeInstanceInformation -
ssm:GetAutomationExecution -
ssm:GetDocument -
ssm:ListCommandInvocations -
ssm:ListCommands -
ssm:SendCommand -
ssm:StartAutomationExecution
Istruzioni
Segui questi passaggi per configurare l'automazione:
-
Crea un ruolo di automazione SSM
TroubleshootEbsCsiDriversForEks-SSM-Rolenel tuo account. Verifica che la relazione di trust includa la policy seguente. -
Allega la seguente policy al ruolo IAM per concedere le autorizzazioni necessarie per eseguire le azioni specificate sulle risorse specificate.
-
Se prevedi di caricare i log di esecuzione e delle risorse nel bucket Amazon S3 nella stessa AWS regione,
arn:{partition}:s3:::BUCKET_NAME/*sostituiscili con i tuoi in.OptionalRestrictPutObjects-
Il bucket Amazon S3 dovrebbe puntare al bucket Amazon S3 corretto se lo selezioni in esecuzione SSM.
S3BucketName -
Questa autorizzazione è facoltativa se non specifichi
S3BucketName -
Il bucket Amazon S3 deve essere privato e nella stessa AWS regione in cui si esegue l'automazione SSM.
-
-
-
Concedi le autorizzazioni richieste per il cluster Amazon EKS RBAC (Access Control). Role-Based L'approccio consigliato è creare un Access Entry nel tuo cluster Amazon EKS.
Nella console Amazon EKS, accedi al tuo cluster. Per le voci di accesso di Amazon EKS, verifica che la configurazione di accesso sia impostata su
API_AND_CONFIG_MAPoAPI. Per i passaggi per configurare la modalità di autenticazione per le voci di accesso, consulta Configurazione delle voci di accesso.Seleziona Crea voce di accesso.
-
Per l'ARN principale di IAM, seleziona il ruolo IAM che hai creato per l'automazione SSM nel passaggio precedente.
-
In Tipo, seleziona
Standard.
-
-
Aggiungi una policy di accesso:
-
Per Ambito di accesso, seleziona
Cluster. -
Per Nome della policy, selezionare
AmazonEKSAdminViewPolicy.
Scegli Aggiungi policy.
Se non utilizzi le voci di accesso per gestire le autorizzazioni dell'API Kubernetes, devi aggiornare
aws-authConfigMap e creare un'associazione di ruolo tra il tuo utente o ruolo IAM. Assicurati che la tua entità IAM disponga delle seguenti autorizzazioni API Kubernetes di sola lettura:-
GET
/apis/apps/v1/namespaces/{namespace}/deployments/{name} -
GET
/apis/apps/v1/namespaces/{namespace}/replicasets/{name} -
GET
/apis/apps/v1/namespaces/{namespace}/daemonsets/{name} -
GET
/api/v1/nodes/{name} -
GET
/api/v1/namespaces/{namespace}/serviceaccounts/{name} -
GET
/api/v1/namespaces/{namespace}/persistentvolumeclaims/{name} -
GET
/api/v1/persistentvolumes/{name} -
GET
/apis/storage.k8s.io/v1/storageclasses/{name} -
GET
/api/v1/namespaces/{namespace}/pods/{name} -
GET
/api/v1/namespaces/{namespace}/pods -
GET
/api/v1/namespaces/{namespace}/pods/{name}/log -
GET
/api/v1/events
-
-
Esegui l'automazione (console) AWSSupport-TroubleshootEbsCsiDriversForEks
-
Seleziona Execute automation (Esegui automazione).
-
Per i parametri di input, inserisci quanto segue:
-
AutomationAssumeRole (Facoltativo):
-
Descrizione: (Facoltativo) L'Amazon Resource Name (ARN) del ruolo AWS Identity and Access Management (IAM) che consente a SSM Automation di eseguire le azioni per tuo conto. Il ruolo deve essere aggiunto alla voce di accesso al cluster Amazon EKS o all'autorizzazione RBAC per consentire le chiamate API Kubernetes.
-
Tipo:
AWS::IAM::Role::Arn -
Ad esempio:
TroubleshootEbsCsiDriversForEks-SSM-Role
-
-
EksClusterName:
-
Descrizione: il nome del cluster Amazon Elastic Kubernetes Service (Amazon EKS) di destinazione.
-
Tipo:
String
-
-
ApplicationPodName:
-
Descrizione: il nome del pod applicativo Kubernetes che presenta problemi con il driver CSI Amazon EBS.
-
Tipo:
String
-
-
ApplicationNamespace:
-
Descrizione: lo spazio dei nomi Kubernetes per il pod dell'applicazione presenta problemi con il driver CSI Amazon EBS.
-
Tipo:
String
-
-
EbsCsiControllerDeploymentName(Facoltativo):
-
Descrizione: (Facoltativo) Il nome di distribuzione per il pod del controller CSI di Amazon EBS.
-
Tipo:
String -
Impostazione predefinita:
ebs-csi-controller
-
-
EbsCsiControllerNamespace(Opzionale):
-
Descrizione: (Facoltativo) Lo spazio dei nomi Kubernetes per il pod controller CSI di Amazon EBS.
-
Tipo:
String -
Impostazione predefinita:
kube-system
-
-
S3BucketName (Opzionale):
-
Descrizione: (Facoltativo) Il nome del bucket Amazon S3 di destinazione in cui verranno caricati i log per la risoluzione dei problemi.
-
Tipo:
AWS::S3::Bucket::Name
-
-
LambdaRoleArn (Facoltativo):
-
Descrizione: (Facoltativo) L'ARN del ruolo IAM che consente alla AWS Lambda funzione di accedere ai AWS servizi e alle risorse richiesti.
-
Tipo:
AWS::IAM::Role::Arn
-
Seleziona Esegui.
-
-
Al termine, consulta la sezione Output per i risultati dettagliati dell'esecuzione.
Riferimenti
Systems Manager Automation
Per ulteriori informazioni su Amazon EBS CSI Driver, consulta Amazon EBS CSI Driver.