Aidez à améliorer cette page
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Pour contribuer à ce guide de l'utilisateur, cliquez sur le GitHub lien Modifier cette page sur qui se trouve dans le volet droit de chaque page.
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Dépannage des fonctionnalités EKS
Cette rubrique fournit des conseils de dépannage généraux pour les fonctionnalités EKS, notamment des vérifications de l'état des fonctionnalités, des problèmes courants et des liens vers des solutions de dépannage spécifiques aux fonctionnalités.
Note
Les fonctionnalités EKS sont entièrement gérées et exécutées en dehors de votre cluster. Vous n'avez pas accès aux journaux ni aux espaces de noms des contrôleurs. Le dépannage se concentre sur l'état des capacités, l'état des ressources et la configuration.
Approche générale du dépannage
Pour résoudre les problèmes liés aux fonctionnalités EKS, suivez cette approche générale :
-
Vérifier l'état des capacités :
aws eks describe-capabilityà utiliser pour consulter l'état des capacités et les problèmes de santé -
Vérifier le statut des ressources : vérifiez les ressources Kubernetes (CRDs) que vous avez créées pour connaître les conditions de statut et les événements
-
Vérifiez les autorisations IAM : assurez-vous que le rôle de capacité dispose des autorisations nécessaires
-
Vérifier la configuration : vérifier que la configuration spécifique à la capacité est correcte
Vérifier l'état des capacités
Toutes les fonctionnalités EKS fournissent des informations sur l'état de santé via la console EKS et l'describe-capabilityAPI.
Console :
-
Ouvrez la console Amazon EKS à l'adresse https://console.aws.amazon.com/eks/home#/clusters
. -
Sélectionnez le nom de votre cluster.
-
Sélectionnez l’onglet Observabilité.
-
Sélectionnez Surveiller le cluster.
-
Choisissez l'onglet Fonctionnalités pour afficher l'état et l'état de toutes les fonctionnalités.
L'onglet Fonctionnalités indique :
-
Nom et type de capacité
-
État actuel
-
Problèmes de santé, avec description
AWS CLI :
aws eks describe-capability \ --region region-code \ --cluster-name my-cluster \ --capability-name my-capability-name
La réponse inclut :
-
statut : État actuel des capacités (
CREATINGACTIVE,UPDATING,DELETING,CREATE_FAILED,UPDATE_FAILED) -
santé : informations relatives à l'état de santé, y compris les éventuels problèmes détectés par la fonctionnalité
Statuts de capacité communs
CRÉATION : La capacité est en cours de configuration.
ACTIF : La fonctionnalité fonctionne et est prête à être utilisée. Si les ressources ne fonctionnent pas comme prévu, vérifiez l'état des ressources et les autorisations IAM.
MISE À JOUR : Les modifications de configuration sont en cours d'application. Attendez que le statut revienne àACTIVE.
CREATE_FAILED ou UPDATE_FAILED : le programme d'installation ou de mise à jour a rencontré une erreur. Consultez la section santé pour plus de détails. Causes courantes :
-
Politique de confiance des rôles IAM incorrecte ou manquante
-
Le rôle IAM n'existe pas ou n'est pas accessible
-
Problèmes d'accès au cluster
-
Paramètres de configuration non valides
Vérifier l'état des ressources Kubernetes
Les fonctionnalités EKS créent et gèrent des définitions de ressources personnalisées Kubernetes (CRDs) dans votre cluster. Lors du dépannage, vérifiez l'état des ressources que vous avez créées :
# List resources of a specific type kubectl getresource-kind-A # Describe a specific resource to see conditions and events kubectl describeresource-kindresource-name-nnamespace# View resource status conditions kubectl getresource-kindresource-name-nnamespace-o jsonpath='{.status.conditions}' # View events related to the resource kubectl get events --field-selector involvedObject.name=resource-name-nnamespace
Les conditions d'état des ressources fournissent des informations sur :
-
Si la ressource est prête
-
Toute erreur rencontrée
-
État actuel du rapprochement
Vérifiez les autorisations IAM et l'accès au cluster
De nombreux problèmes de capacité sont dus à des problèmes d'autorisation IAM ou à une configuration d'accès au cluster manquante. Vérifiez à la fois les autorisations du rôle de capacité et les entrées d'accès au cluster.
Vérifier les autorisations des rôles IAM
Vérifiez que le rôle de capacité dispose des autorisations nécessaires :
# List attached managed policies aws iam list-attached-role-policies --role-namemy-capability-role# List inline policies aws iam list-role-policies --role-namemy-capability-role# Get specific policy details aws iam get-role-policy --role-namemy-capability-role--policy-namepolicy-name# View the role's trust policy aws iam get-role --role-namemy-capability-role--query 'Role.AssumeRolePolicyDocument'
La politique de confiance doit permettre au principal du capabilities.eks.amazonaws.com service :
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "capabilities.eks.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Vérifiez les entrées d'accès et les politiques d'accès d'EKS
Toutes les fonctionnalités nécessitent des entrées d'accès et des politiques d'accès EKS appropriées sur le cluster sur lequel elles fonctionnent.
Vérifiez que l'entrée d'accès existe :
aws eks list-access-entries \ --cluster-namemy-cluster\ --regionregion-code
Recherchez l'ARN du rôle de capacité dans la liste. Si elle est absente, la fonctionnalité ne peut pas accéder au cluster.
Vérifiez les politiques d'accès jointes à l'entrée :
aws eks list-associated-access-policies \ --cluster-namemy-cluster\ --principal-arnarn:aws:iam::111122223333:role/my-capability-role\ --regionregion-code
Toutes les fonctionnalités nécessitent des politiques d'accès appropriées :
-
ACK : nécessite des autorisations pour créer et gérer des ressources Kubernetes
-
kro : nécessite des autorisations pour créer et gérer des ressources Kubernetes
-
Argo CD : nécessite des autorisations pour créer et gérer des applications, et nécessite des entrées d'accès sur les clusters cibles distants pour les déploiements multi-clusters
Pour les déploiements multi-clusters Argo CD :
En cas de déploiement sur des clusters distants, vérifiez que le rôle de capacité possède une entrée d'accès sur chaque cluster cible :
# Check Access Entry on target cluster aws eks describe-access-entry \ --cluster-nametarget-cluster\ --principal-arnarn:aws:iam::111122223333:role/argocd-capability-role\ --regionregion-code
Si l'entrée d'accès est absente sur un cluster cible, Argo CD ne peut pas y déployer d'applications. Voir Enregistrer les clusters cibles pour les détails de configuration.
Résolution des problèmes spécifiques aux capacités
Pour obtenir des conseils de dépannage détaillés spécifiques à chaque type de fonctionnalité :
-
Résoudre les problèmes liés aux fonctionnalités ACK- Résoudre les problèmes liés à la création de ressources ACK, aux autorisations IAM et à l'accès entre comptes
-
Résoudre les problèmes liés aux fonctionnalités d'Argo CD- Résoudre les problèmes de synchronisation des applications, d'authentification des référentiels et de déploiements multiclusters
-
Résoudre les problèmes liés aux fonctionnalités Kro- Résolution des problèmes ResourceGraphDefinitions, expressions CEL et autorisations RBAC
Problèmes courants liés à toutes les fonctionnalités
Capacité bloquée dans l'état CREATING
Si une capacité reste CREATING active plus longtemps que prévu :
-
Vérifiez l'état des fonctionnalités pour détecter des problèmes spécifiques dans la console (Observabilité > Surveiller le cluster > onglet Fonctionnalités) ou à l'aide de la AWS CLI :
aws eks describe-capability \ --region region-code \ --cluster-name my-cluster \ --capability-name my-capability-name \ --query 'capability.health' -
Vérifiez que le rôle IAM existe et que la politique de confiance est correcte
-
Assurez-vous que votre cluster est accessible et sain
-
Vérifiez s'il existe des problèmes au niveau du cluster susceptibles d'empêcher la configuration des fonctionnalités
Ressources non créées ou mises à jour
Si la fonctionnalité existe ACTIVE mais que les ressources ne sont pas créées ou mises à jour :
-
Vérifiez l'état de la ressource pour détecter les conditions d'erreur
-
Vérifiez les autorisations IAM pour les AWS services (ACK) ou les référentiels spécifiques (Argo CD)
-
Vérifiez les autorisations RBAC pour créer des ressources sous-jacentes (kro)
-
Vérifiez les spécifications des ressources pour détecter les erreurs de validation
L'état des capacités montre des problèmes
Il describe-capability présente des problèmes de santé :
-
Lisez attentivement les descriptions du problème : elles indiquent souvent le problème spécifique
-
Corriger la cause première (autorisations IAM, erreurs de configuration, etc.)
-
La fonctionnalité sera automatiquement rétablie une fois le problème résolu
Étapes suivantes
-
Utilisation des ressources en matière de capacités- Gérer les ressources en matière de capacités
-
Résoudre les problèmes liés aux fonctionnalités ACK- Dépannage spécifique à ACK
-
Résoudre les problèmes liés aux fonctionnalités d'Argo CD- Résolution des problèmes spécifiques à Argo CD
-
Résoudre les problèmes liés aux fonctionnalités Kro- résolution des problèmes spécifiques à Kro
-
Considérations relatives à la sécurité relatives aux fonctionnalités EKS- Meilleures pratiques en matière de sécurité en matière de fonctionnalités