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.
Connexion de kubectl à un cluster EKS en créant un fichier kubeconfig
Astuce
Inscrivez-vous
Dans cette rubrique, vous allez créer un fichier kubeconfig pour votre cluster (ou mettre à jour un fichier existant).
L'outil de ligne de commande kubectl utilise les informations de configuration dans les fichiers kubeconfig pour communiquer avec le serveur API d'un cluster. Pour plus d’informations, consultez Organisation de l’accès au cluster à l’aide des fichiers kubeconfig
Amazon EKS utilise la commande aws eks get-token avec kubectl pour l'authentification du cluster. Par défaut, la AWS CLI utilise les mêmes informations d'identification que celles renvoyées par la commande suivante :
aws sts get-caller-identity
-
Un cluster Amazon EKS existant. Pour en déployer un, consultez Mise en route avec Amazon EKS.
-
L'outil de ligne de commande
kubectlest installé sur votre appareil ou AWS CloudShell. La version peut correspondre à celle utilisée par votre cluster Kubernetes, ou différer d’au plus une version mineure, qu’elle soit antérieure ou plus récente. Par exemple, si la version de votre cluster est1.29, vous pouvez utiliser la versionkubectl1.28,1.29ou1.30. Pour installer ou mettre à niveaukubectl, veuillez consulter Configuration de kubectl et eksctl. -
Version
2.12.3ou version ultérieure1.27.160ou version ultérieure de l'interface de ligne de AWS commande (AWS CLI) installée et configurée sur votre appareil ou AWS CloudShell. Pour vérifier votre version actuelle, utilisezaws --version | cut -d / -f2 | cut -d ' ' -f1. Les gestionnaires de packages tels queyumHomebrew pour macOS ont souvent plusieurs versions de retard sur la dernière version de la AWS CLI.apt-getPour installer la dernière version, consultez la section Installation et configuration rapide avec aws configure dans le Guide de l'utilisateur de l'interface de ligne de AWS commande. La version de la AWS CLI installée AWS CloudShell peut également avoir plusieurs versions de retard par rapport à la dernière version. Pour le mettre à jour, consultez la section Installation de la AWS CLI dans votre répertoire de base dans le guide de AWS CloudShell l'utilisateur. -
Un utilisateur IAM ou un rôle IAM avec l'autorisation d'utiliser l'action d'API
eks:DescribeClusterpour le cluster que vous spécifiez. Pour de plus amples informations, veuillez consulter Exemples de politiques basées sur l'identité d'Amazon EKS. Si vous utilisez une identité provenant de votre propre fournisseur OpenID Connect pour accéder à votre cluster, consultez Utilisation de kubectldans la documentation Kubernetes afin de créer ou de mettre à jour votre fichier kube config.
Créer le fichier kubeconfig automatiquement
-
Version
2.12.3ou version ultérieure1.27.160ou version ultérieure de l'interface de ligne de AWS commande (AWS CLI) installée et configurée sur votre appareil ou AWS CloudShell. Pour vérifier votre version actuelle, utilisezaws --version | cut -d / -f2 | cut -d ' ' -f1. Les gestionnaires de packages tels queyumHomebrew pour macOS ont souvent plusieurs versions de retard sur la dernière version de la AWS CLI.apt-getPour installer la dernière version, consultez la section Installation et configuration rapide avec aws configure dans le Guide de l'utilisateur de l'interface de ligne de AWS commande. La version de la AWS CLI installée AWS CloudShell peut également avoir plusieurs versions de retard par rapport à la dernière version. Pour le mettre à jour, consultez la section Installation de la AWS CLI dans votre répertoire de base dans le guide de AWS CloudShell l'utilisateur. -
Autorisation d'utiliser l'action d'API
eks:DescribeClusterpour le cluster que vous spécifiez. Pour de plus amples informations, veuillez consulter Exemples de politiques basées sur l'identité d'Amazon EKS.-
Créez ou mettez à jour un fichier
kubeconfigpour votre cluster. Remplacezregion-codepar la AWS région dans laquelle se trouve votre cluster et remplacezmy-clusterpar le nom de votre cluster.aws eks update-kubeconfig --region region-code --name my-clusterPar défaut, le fichier de configuration résultant est créé dans le chemin
kubeconfigpar défaut (.kube) dans votre répertoire de base ou fusionné avec un fichierconfigexistant à cet emplacement. Vous pouvez spécifier un autre chemin avec l'option--kubeconfig.Vous pouvez spécifier un ARN de rôle IAM avec l'option
--role-arnà utiliser pour l'authentification lorsque vous émettez des commandeskubectl. Dans le cas contraire, le principal IAM de votre chaîne d'identification par défaut de la AWS CLI ou du SDK est utilisé. Vous pouvez consulter l'identité de votre AWS CLI ou de votre SDK par défaut en exécutant laaws sts get-caller-identitycommande.Pour connaître toutes les options disponibles, exécutez la
aws eks update-kubeconfig helpcommande ou consultez update-kubeconfig dans le manuel de référence des commandes de la CLI AWS . -
Testez votre configuration.
kubectl get svcL'exemple qui suit illustre un résultat.
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE svc/kubernetes ClusterIP 10.100.0.1 <none> 443/TCP 1mSi vous recevez d'autres erreurs concernant les types d'autorisations ou de ressources, consultez Accès non autorisé ou refusé (kubectl) dans la rubrique relative à la résolution des problèmes.
-