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.
Cette rubrique décrit comment connecter des nœuds hybrides à un cluster Amazon EKS. Une fois que vos nœuds hybrides ont rejoint le cluster, ils apparaîtront avec le statut Non prêt dans la console Amazon EKS et dans les outils compatibles avec Kubernetes tels que kubectl. Après avoir effectué les étapes de cette page, procédez Configuration d'un CNI pour les nœuds hybrides à la préparation de vos nœuds hybrides pour exécuter des applications.
Prérequis
Avant de connecter des nœuds hybrides à votre cluster Amazon EKS, assurez-vous d'avoir effectué les étapes préalables.
-
Vous disposez d'une connectivité réseau entre votre environnement sur site et la AWS région hébergeant votre cluster Amazon EKS. Pour plus d’informations, consultez Préparer le réseau pour les nœuds hybrides.
-
Vous disposez d'un système d'exploitation compatible pour les nœuds hybrides installés sur vos hôtes locaux. Pour plus d’informations, consultez Préparer le système d'exploitation pour les nœuds hybrides.
-
Vous avez créé votre rôle Hybrid Nodes IAM et configuré votre fournisseur d'informations d'identification sur site (activations hybrides de AWS Systems Manager ou AWS IAM Roles Anywhere). Pour plus d’informations, consultez Préparer les informations d'identification pour les nœuds hybrides.
-
Vous avez créé votre cluster Amazon EKS compatible avec les nœuds hybrides. Pour plus d’informations, consultez Création d'un cluster Amazon EKS avec des nœuds hybrides.
-
Vous avez associé votre rôle IAM Hybrid Nodes aux autorisations de contrôle d'accès basé sur les rôles (RBAC) Kubernetes. Pour plus d’informations, consultez Préparer l'accès au cluster pour les nœuds hybrides.
Étape 1 : Installation des nœuds hybrides CLI (nodeadm
) sur chaque hôte local
Si vous incluez la CLI Amazon EKS Hybrid Nodes (nodeadm
) dans les images de votre système d'exploitation prédéfinies, vous pouvez ignorer cette étape. Pour plus d'informations sur la version des nœuds hybrides denodeadm
, consulteznodeadmRéférence des nœuds hybrides.
La version des nœuds hybrides de nodeadm
est hébergée sur Amazon S3, géré par Amazon CloudFront. Pour effectuer l'installation nodeadm
sur chaque hôte local, vous pouvez exécuter la commande suivante à partir de vos hôtes locaux.
Pour les hôtes x86_64 :
curl -OL 'https://hybrid-assets.eks.amazonaws.com/releases/latest/bin/linux/amd64/nodeadm'
Pour les hôtes ARM
curl -OL 'https://hybrid-assets.eks.amazonaws.com/releases/latest/bin/linux/arm64/nodeadm'
Ajoutez une autorisation de fichier exécutable au fichier binaire téléchargé sur chaque hôte.
chmod +x nodeadm
Étape 2 : installer les dépendances des nœuds hybrides avec nodeadm
Si vous installez les dépendances des nœuds hybrides dans des images de système d'exploitation prédéfinies, vous pouvez ignorer cette étape. La nodeadm install
commande peut être utilisée pour installer toutes les dépendances requises pour les nœuds hybrides. Les dépendances des nœuds hybrides incluent les composants containerd, kubelet, kubectl et AWS SSM ou IAM Roles Anywhere. AWS nodeadmRéférence des nœuds hybridesPour plus d'informations sur les composants et les emplacements de fichiers installés parnodeadm install
. Consultez Préparer le réseau pour les nœuds hybrides la section dédiée aux nœuds hybrides pour plus d'informations sur les domaines qui doivent être autorisés dans votre pare-feu local pour le nodeadm install
processus.
Exécutez la commande ci-dessous pour installer les dépendances des nœuds hybrides sur votre hôte local. La commande ci-dessous doit être exécutée avec un utilisateur disposant d'un accès sudo/root sur votre hôte.
Important
La CLI (nodeadm
) des nœuds hybrides doit être exécutée avec un utilisateur disposant d'un accès sudo/root sur votre hôte.
-
K8S_VERSION
Remplacez-le par la version mineure Kubernetes de votre cluster Amazon EKS, par exemple.1.31
Consultez Comprendre le cycle de vie des versions de Kubernetes sur EKS la liste des versions de Kubernetes prises en charge. -
CREDS_PROVIDER
Remplacez-le par le fournisseur d'informations d'identification local que vous utilisez. Les valeurs valides concernentssm
AWS SSM et AWS IAMiam-ra
Roles Anywhere.
nodeadm install
K8S_VERSION
--credential-providerCREDS_PROVIDER
Étape 3 : Connectez des nœuds hybrides à votre cluster
Avant de connecter vos nœuds hybrides à votre cluster, assurez-vous d'avoir autorisé l'accès requis dans votre pare-feu sur site et dans le groupe de sécurité de votre cluster pour la communication entre le plan de contrôle Amazon EKS et le nœud hybride. La plupart des problèmes rencontrés à cette étape sont liés à la configuration du pare-feu, à la configuration du groupe de sécurité ou à la configuration du rôle IAM des nœuds hybrides.
Important
La CLI (nodeadm
) des nœuds hybrides doit être exécutée avec un utilisateur disposant d'un accès sudo/root sur votre hôte.
-
Créez un
nodeConfig.yaml
fichier sur chaque hôte contenant les valeurs de votre déploiement. Pour une description complète des paramètres de configuration disponibles, consulteznodeadmRéférence des nœuds hybrides. Si votre rôle IAM Hybrid Nodes n'est pas autorisé à effectuer cetteeks:DescribeCluster
action, vous devez transmettre le point de terminaison de l'API Kubernetes, le bundle CA du cluster et le IPv4 CIDR du service Kubernetes dans la section cluster de votre.nodeConfig.yaml
-
Utilisez l'
nodeConfig.yaml
exemple ci-dessous si vous utilisez des activations hybrides AWS SSM pour votre fournisseur d'informations d'identification sur site.-
Remplacez
CLUSTER_NAME
par le nom de votre cluster. -
Remplacez
AWS_REGION
par la AWS région hébergeant votre cluster. Par exemple,us-west-2
. -
ACTIVATION_CODE
Remplacez-le par le code d'activation que vous avez reçu lors de la création de votre activation hybride AWS SSM. Pour plus d’informations, consultez Préparer les informations d'identification pour les nœuds hybrides. -
ACTIVATION_ID
Remplacez-le par l'ID d'activation que vous avez reçu lors de la création de votre activation hybride AWS SSM. Vous pouvez récupérer ces informations depuis la console AWS Systems Manager ou depuis laaws ssm describe-activations
commande AWS CLI.apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: cluster: name: CLUSTER_NAME region: AWS_REGION hybrid: ssm: activationCode: ACTIVATION_CODE activationId: ACTIVATION_ID
-
-
Utilisez l'
nodeConfig.yaml
exemple ci-dessous si vous utilisez AWS IAM Roles Anywhere comme fournisseur d'informations d'identification sur site.-
Remplacez
CLUSTER_NAME
par le nom de votre cluster. -
Remplacez
AWS_REGION
par la AWS région hébergeant votre cluster. Par exemple,us-west-2
. -
Remplacez
NODE_NAME
par le nom de votre nœud. Le nom du nœud doit correspondre au CN du certificat sur l'hôte si vous avez configuré la politique de confiance de votre rôle IAM de nœuds hybrides avec la condition de"sts:RoleSessionName": "${aws:PrincipalTag/x509Subject/CN}"
ressource. LenodeName
texte que vous utilisez ne doit pas comporter plus de 64 caractères. -
TRUST_ANCHOR_ARN
Remplacez-le par l'ARN de l'ancre de confiance que vous avez configurée dans les étapes de la section Préparer les informations d'identification pour les nœuds hybrides. -
PROFILE_ARN
Remplacez-le par l'ARN de l'ancre de confiance que vous avez configurée dans les étapes pourPréparer les informations d'identification pour les nœuds hybrides. -
ROLE_ARN
Remplacez-le par l'ARN de votre rôle IAM Hybrid Nodes. -
CERTIFICATE_PATH
Remplacez-le par le chemin sur le disque vers le certificat de votre nœud. Si vous ne le spécifiez pas, la valeur par défaut est/etc/iam/pki/server.pem
. -
KEY_PATH
Remplacez-le par le chemin sur le disque vers la clé privée de votre certificat. Si vous ne le spécifiez pas, la valeur par défaut est/etc/iam/pki/server.key
.apiVersion: node.eks.aws/v1alpha1 kind: NodeConfig spec: cluster: name: CLUSTER_NAME region: AWS_REGION hybrid: iamRolesAnywhere: nodeName: NODE_NAME trustAnchorArn: TRUST_ANCHOR_ARN profileArn: PROFILE_ARN roleArn: ROLE_ARN certificatePath: CERTIFICATE_PATH privateKeyPath: KEY_PATH
-
-
-
Exécutez la
nodeadm init
commande avec vousnodeConfig.yaml
pour connecter vos nœuds hybrides à votre cluster Amazon EKS.nodeadm init -c file://nodeConfig.yaml
Si la commande ci-dessus s'exécute correctement, votre nœud hybride a rejoint votre cluster Amazon EKS. Vous pouvez le vérifier dans la console Amazon EKS en accédant à l'onglet Compute de votre cluster (assurez-vous que le principal IAM est autorisé à le consulter) ou avec. kubectl get nodes
Important
Vos nœuds auront un statutNot Ready
, ce qui est attendu et est dû à l'absence de CNI exécuté sur vos nœuds hybrides. Si vos nœuds n'ont pas rejoint le cluster, consultezRésolution des problèmes liés aux nœuds hybrides.
Étape 4 : Configuration d'un CNI pour les nœuds hybrides
Pour que vos nœuds hybrides soient prêts à exécuter des applications, suivez les étapes ci-dessousConfiguration d'un CNI pour les nœuds hybrides.