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 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.
Préparer les informations d’identification pour les nœuds hybrides
Les nœuds hybrides Amazon EKS utilisent des informations d'identification IAM temporaires fournies par les activations hybrides AWS SSM ou AWS IAM Roles Anywhere pour s'authentifier auprès du cluster Amazon EKS. Vous devez utiliser les activations hybrides AWS SSM ou AWS IAM Roles Anywhere avec l'interface de ligne de commande Amazon EKS Hybrid Nodes (). nodeadm Vous ne devez pas utiliser à la fois les activations hybrides AWS SSM et AWS IAM Roles Anywhere. Nous vous recommandons d'utiliser les activations hybrides AWS SSM si vous ne disposez pas d'une infrastructure à clé publique (PKI) existante dotée d'une autorité de certification (CA) et de certificats pour vos environnements sur site. Si vous disposez déjà d'une PKI et de certificats sur site, utilisez AWS IAM Roles Anywhere.
Rôle IAM des nœuds hybrides
Avant de pouvoir connecter des nœuds hybrides à votre cluster Amazon EKS, vous devez créer un rôle IAM qui sera utilisé avec les activations hybrides AWS SSM ou AWS IAM Roles Anywhere pour les informations d'identification de vos nœuds hybrides. Après la création du cluster, vous utiliserez ce rôle avec une entrée d'accès Amazon EKS ou une aws-auth ConfigMap entrée pour mapper le rôle IAM au contrôle d' Role-Based accès Kubernetes (RBAC). Pour plus d’informations sur l’association du rôle IAM des nœuds hybrides avec Kubernetes RBAC, consultez Préparation de l’accès au cluster pour les nœuds hybrides.
Le rôle IAM des nœuds hybrides doit disposer des autorisations suivantes.
-
Autorisations
nodeadmpermettant d'utiliser l'eks:DescribeClusteraction pour collecter des informations sur le cluster auquel vous souhaitez connecter des nœuds hybrides. Si vous n'activez pas cetteeks:DescribeClusteraction, vous devez transmettre votre point de terminaison d'API Kubernetes, votre bundle CA de cluster et votre CIDR IPv4 de service dans la configuration de nœud que vous transmettez à la commande.nodeadm init -
Autorisations
nodeadmpermettant d'utiliser l'eks:ListAccessEntriesaction pour répertorier les entrées d'accès sur le cluster auquel vous souhaitez connecter des nœuds hybrides. Si vous n'activez pas l'eks:ListAccessEntriesaction, vous devez passer le--skip cluster-access-validationdrapeau lorsque vous exécutez lanodeadm initcommande. -
Autorisations permettant au kubelet d'utiliser des images de conteneurs provenant d'Amazon Elastic Container Registry (Amazon ECR), comme défini dans la politique. AmazonEC2ContainerRegistryPullOnly
-
Si vous utilisez AWS SSM, autorisations
nodeadm initpour utiliser les activations hybrides AWS SSM telles que définies dans la politique. https://docs.aws.amazon.com/aws-managed-policy/latest/reference/AmazonSSMManagedInstanceCore.html -
Si vous utilisez AWS SSM, autorisations pour utiliser l'
ssm:DeregisterManagedInstanceaction etssm:DescribeInstanceInformationaction pournodeadm uninstalldésenregistrer les instances. -
(Facultatif) Autorisations permettant à l'agent d'identité du pod Amazon EKS d'utiliser l'action
eks-auth:AssumeRoleForPodIdentitypour récupérer les informations d'identification pour les pods.
Configuration AWS Activations hybrides SSM
Version nodeadm requise pour le fournisseur d'informations d'identification SSM
Si vous utilisez AWS Systems Manager (SSM) comme fournisseur d'informations d'identification pour les nœuds hybrides, vous devez utiliser la nodeadm version 1.0.19 ou une version ultérieure pour les nouvelles installations et les mises à niveau. Les versions précédentes de nodeadm contiennent une clé de signature SSM obsolète et échouent pendant nodeadm install et nodeadm upgrade avec l'erreur de vérification de signature suivante :
"msg":"Command failed","error":"failed to install ssm installer: validating ssm-setup-cli signature: Signature Verification Error: No matching signature"
Pour résoudre cette erreur, téléchargez la dernière version de nodeadm Before Running nodeadm install ornodeadm upgrade.
Important
Systems Manager renvoie immédiatement le code d'activation et l'ID à la console ou la fenêtre de commande, selon la méthode de création de l'activation. Copiez ces informations et stockez-les en lieu sûr. Si vous quittez la console ou fermez la fenêtre de commande, vous risquez de perdre ces informations. Si vous les perdez, vous devrez recréer une activation.
Avant de configurer les activations hybrides AWS SSM, vous devez avoir créé et configuré un rôle IAM Hybrid Nodes. Pour de plus amples informations, veuillez consulter Création du rôle IAM des nœuds hybrides. Suivez les instructions de la section Créer une activation hybride pour enregistrer des nœuds auprès de Systems Manager dans le guide de l'utilisateur de AWS Systems Manager afin de créer une activation hybride AWS SSM pour vos nœuds hybrides. Utilisez le code d'activation et l'identifiant nodeadm lorsque vous enregistrez vos hôtes en tant que nœuds hybrides auprès de votre cluster Amazon EKS. Vous pourrez revenir à cette étape ultérieurement après avoir créé et préparé vos clusters Amazon EKS pour les nœuds hybrides.
Par défaut, les activations hybrides AWS SSM sont actives pendant 24 heures. Vous pouvez également spécifier un --expiration-date lorsque vous créez votre activation hybride, par exemple 2024-08-01T00:00:00. Lorsque vous utilisez AWS SSM comme fournisseur d'informations d'identification, le nom de nœud de vos nœuds hybrides n'est pas configurable et est généré automatiquement par SSM. AWS Vous pouvez consulter et gérer les instances gérées par AWS SSM dans la console AWS Systems Manager sous Fleet Manager. Vous pouvez enregistrer jusqu'à 1 000 nœuds standard activés par mode hybride par compte et par AWS région, sans frais supplémentaires. Toutefois, pour enregistrer plus de 1 000 nœuds hybrides, vous avez besoin d'activer le niveau d'instances avancées. L’utilisation du niveau Advanced Instances entraîne des frais qui ne sont pas inclus dans la tarification des nœuds hybrides Amazon EKS
Consultez l'exemple ci-dessous pour savoir comment créer une activation hybride AWS SSM avec votre rôle IAM Hybrid Nodes. Lorsque vous utilisez les activations hybrides AWS SSM pour les informations d'identification de vos nœuds hybrides, les noms de vos nœuds hybrides sont au format mi-012345678abcdefgh et les informations d'identification temporaires fournies par AWS SSM sont valides pendant 1 heure. Vous ne pouvez pas modifier le nom du nœud ni la durée des informations d'identification lorsque vous utilisez AWS SSM comme fournisseur d'informations d'identification. Les informations d'identification temporaires sont automatiquement modifiées par AWS SSM et la rotation n'a aucun impact sur l'état de vos nœuds ou applications.
Nous vous recommandons d'utiliser une activation hybride AWS SSM par cluster EKS pour définir l'ssm:DeregisterManagedInstanceautorisation AWS SSM du rôle IAM des nœuds hybrides afin de ne pouvoir désenregistrer que les instances associées à votre activation hybride SSM. AWS Dans l'exemple de cette page, une balise avec l'ARN du cluster EKS est utilisée, qui peut être utilisée pour mapper votre activation hybride AWS SSM au cluster EKS. Vous pouvez également utiliser la balise et la méthode de votre choix pour définir la portée des autorisations AWS SSM en fonction de vos limites d'autorisation et de vos exigences. L'REGISTRATION_LIMIToption de la commande ci-dessous est un entier utilisé pour limiter le nombre de machines pouvant utiliser l'activation hybride AWS SSM (par exemple10)
aws ssm create-activation \ --region AWS_REGION \ --default-instance-name eks-hybrid-nodes \ --description "Activation for EKS hybrid nodes" \ --iam-role AmazonEKSHybridNodesRole \ --tags Key=EKSClusterARN,Value=arn:aws: eks:AWS_REGION:AWS_ACCOUNT_ID:cluster/CLUSTER_NAME \ --registration-limit REGISTRATION_LIMIT
Consultez les instructions de la section Créer une activation hybride pour enregistrer les nœuds auprès de Systems Manager pour plus d'informations sur les paramètres de configuration disponibles pour les activations hybrides AWS SSM.
Configuration AWS Rôles Anywhere IAM
Suivez les instructions de la section Démarrage avec Rôles Anywhere IAM du guide de l’utilisateur Rôles Anywhere IAM pour configurer l’ancre d’approbation et le profil que vous utiliserez pour les informations d’identification IAM temporaires de votre rôle IAM des nœuds hybrides. Lorsque vous créez votre profil, vous pouvez le créer sans ajouter de rôles. Vous pouvez créer ce profil, revenir à ces étapes pour créer votre rôle IAM des nœuds hybrides, puis ajouter votre rôle à votre profil une fois celui-ci créé. Vous pouvez également AWS CloudFormation suivre les étapes décrites plus loin sur cette page pour terminer la configuration d'IAM Roles Anywhere pour les nœuds hybrides.
Lorsque vous ajoutez le rôle IAM Hybrid Nodes à votre profil, sélectionnez Accepter le nom de session de rôle personnalisé dans le panneau Nom de session de rôle personnalisé en bas de la page Modifier le profil de la console AWS IAM Roles Anywhere. Cela correspond au RoleSessionName champ d'acceptation de l'CreateProfileAPI. Cela vous permet de fournir un nom de nœud personnalisé pour vos nœuds hybrides dans la configuration que vous transmettez à nodeadm au cours du processus d’amorçage. Il est nécessaire de passer un nom de nœud personnalisé pendant le processus nodeadm init. Vous pouvez mettre à jour votre profil pour accepter un nom de session personnalisé après avoir créé votre profil.
Vous pouvez configurer la durée de validité des informations d'identification avec AWS IAM Roles Anywhere via le champ DurationSeconds de votre profil AWS IAM Roles Anywhere. La durée par défaut est de 1 heure avec un maximum de 12 heures. Le MaxSessionDuration paramètre de votre rôle IAM Hybrid Nodes doit être supérieur à celui durationSeconds de votre profil AWS IAM Roles Anywhere. Pour plus d'informationsMaxSessionDuration, consultez la documentation de UpdateRole l'API.
Les certificats et clés par machine que vous générez à partir de votre autorité de certification (CA) doivent être placés dans le répertoire /etc/iam/pki de chaque nœud hybride avec les noms de fichier server.pem correspondant au certificat et server.key pour la clé.
Création du rôle IAM des nœuds hybrides
Pour exécuter les étapes de cette section, le principal IAM utilisant la AWS console ou l' AWS interface de ligne de commande doit disposer des autorisations suivantes.
-
iam:CreatePolicy -
iam:CreateRole -
iam:AttachRolePolicy -
Si vous utilisez AWS IAM Roles Anywhere
-
rolesanywhere:CreateTrustAnchor -
rolesanywhere:CreateProfile -
iam:PassRole
-
AWS CloudFormation
Installez et configurez la AWS CLI, si ce n'est pas déjà fait. Consultez la section Installation ou mise à jour de la dernière version de l' AWS interface de ligne de commande.
Étapes pour les AWS activations hybrides SSM
La CloudFormation pile crée le rôle IAM des nœuds hybrides avec les autorisations décrites ci-dessus. Le CloudFormation modèle ne crée pas l'activation hybride AWS SSM.
-
Téléchargez le CloudFormation modèle AWS SSM pour les nœuds hybrides :
curl -OL 'https://raw.githubusercontent.com/aws/eks-hybrid/refs/heads/main/example/hybrid-ssm-cfn.yaml' -
Créez un
cfn-ssm-parameters.jsonavec les options suivantes :-
Remplacez
ROLE_NAMEpar le nom de votre rôle IAM des nœuds hybrides. Par défaut, le CloudFormation modèle utilise leAmazonEKSHybridNodesRolenom du rôle qu'il crée si vous ne spécifiez aucun nom. -
TAG_KEYRemplacez-la par la clé de balise de ressource AWS SSM que vous avez utilisée lors de la création de votre AWS activation hybride SSM. La combinaison de la clé de balise et de la valeur de balise est utilisée dans la condition d'ssm:DeregisterManagedInstanceautoriser uniquement le rôle IAM des nœuds hybrides à désenregistrer les instances gérées AWS SSM associées à votre AWS activation hybride SSM. Dans le CloudFormation modèle, laTAG_KEYvaleur par défaut est.EKSClusterARN -
TAG_VALUERemplacez-la par la valeur de balise de ressource AWS SSM que vous avez utilisée lors de la création de votre AWS activation hybride SSM. La combinaison de la clé de balise et de la valeur de balise est utilisée dans la condition d'ssm:DeregisterManagedInstanceautoriser uniquement le rôle IAM des nœuds hybrides à désenregistrer les instances gérées AWS SSM associées à votre AWS activation hybride SSM. Si vous utilisez la valeur par défautTAG_KEYouEKSClusterARN, transmettez l’ARN de votre cluster EKS en tant queTAG_VALUE. Les ARN du cluster EKS ont le formatarn:aws: eks:AWS_REGION:AWS_ACCOUNT_ID:cluster/CLUSTER_NAME.{ "Parameters": { "RoleName": "ROLE_NAME", "SSMDeregisterConditionTagKey": "TAG_KEY", "SSMDeregisterConditionTagValue": "TAG_VALUE" } }
-
-
Déployez la CloudFormation pile.
STACK_NAMERemplacez-le par votre nom pour la CloudFormation pile.aws cloudformation deploy \ --stack-name STACK_NAME \ --template-file hybrid-ssm-cfn.yaml \ --parameter-overrides file://cfn-ssm-parameters.json \ --capabilities CAPABILITY_NAMED_IAM
Étapes relatives aux rôles AWS IAM Anywhere
La CloudFormation pile crée l'ancre de confiance AWS IAM Roles Anywhere auprès de l'autorité de certification (CA) que vous configurez, crée le profil AWS IAM Roles Anywhere et crée le rôle IAM Hybrid Nodes avec les autorisations décrites précédemment.
-
Pour configurer une autorité de certification (CA)
-
Pour utiliser une ressource CA AWS privée, ouvrez la console AWS Private Certificate Authority
. Suivez les instructions du Guide de l’utilisateur de l’autorité de certification privée AWS. -
Pour utiliser une autorité de certification externe, suivez les instructions fournies par celle-ci. Vous fournirez le corps du certificat lors d’une étape ultérieure.
-
Les certificats émis par des autorités de certification publiques ne peuvent pas être utilisés comme ancres d’approbation.
-
-
Téléchargez le CloudFormation modèle AWS IAM Roles Anywhere pour les nœuds hybrides
curl -OL 'https://raw.githubusercontent.com/aws/eks-hybrid/refs/heads/main/example/hybrid-ira-cfn.yaml' -
Créez un
cfn-iamra-parameters.jsonavec les options suivantes :-
Remplacez
ROLE_NAMEpar le nom de votre rôle IAM des nœuds hybrides. Par défaut, le CloudFormation modèle utilise leAmazonEKSHybridNodesRolenom du rôle qu'il crée si vous ne spécifiez aucun nom. -
Remplacez
CERT_ATTRIBUTEpar l’attribut de certificat par machine qui identifie de manière unique votre hôte. L’attribut de certificat que vous utilisez doit correspondre au nodeName que vous utilisez pour la configurationnodeadmlorsque vous connectez des nœuds hybrides à votre cluster. Pour de plus amples informations, veuillez consulter Nœuds hybrides (référence nodeadm). Par défaut, le CloudFormation modèle utilise${aws:PrincipalTag/x509Subject/CN}commeCERT_ATTRIBUTE, ce qui correspond au champ CN de vos certificats par machine. Vous pouvez également faire passer$(aws:PrincipalTag/x509SAN/Name/CN}comme votreCERT_ATTRIBUTE. -
Remplacez
CA_CERT_BODYpar le corps du certificat de votre autorité de certification sans sauts de ligne. LeCA_CERT_BODYdoit être au format PEM (Privacy Enhanced Mail). Si vous disposez d’un certificat CA au format PEM, supprimez les sauts de ligne et les lignes BEGIN CERTIFICATE et END CERTIFICATE avant d’insérer le corps du certificat CA dans votre fichiercfn-iamra-parameters.json.{ "Parameters": { "RoleName": "ROLE_NAME", "CertAttributeTrustPolicy": "CERT_ATTRIBUTE", "CABundleCert": "CA_CERT_BODY" } }
-
-
Déployez le CloudFormation modèle.
STACK_NAMERemplacez-le par votre nom pour la CloudFormation pile.aws cloudformation deploy \ --stack-name STACK_NAME \ --template-file hybrid-ira-cfn.yaml \ --parameter-overrides file://cfn-iamra-parameters.json --capabilities CAPABILITY_NAMED_IAM
AWS INTERFACE DE LIGNE DE COMMANDE (CLI)
Installez et configurez la AWS CLI, si ce n'est pas déjà fait. Consultez la section Installation ou mise à jour de la dernière version de l' AWS interface de ligne de commande.
Créer une politique de cluster EKS Describe
-
Créez un fichier nommé
eks-describe-cluster-policy.jsonavec le contenu suivant :{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "eks:DescribeCluster" ], "Resource": "*" } ] } -
Créez la politique à l’aide de la commande suivante :
aws iam create-policy \ --policy-name EKSDescribeClusterPolicy \ --policy-document file://eks-describe-cluster-policy.json
Étapes pour les AWS activations hybrides SSM
-
Créez un fichier nommé
eks-hybrid-ssm-policy.jsonavec les contenus suivants. La politique autorise deux actionsssm:DescribeInstanceInformationetssm:DeregisterManagedInstance. La politique limite l'ssm:DeregisterManagedInstanceautorisation aux instances gérées par AWS SSM associées à votre activation hybride AWS SSM en fonction de la balise de ressource que vous spécifiez dans votre politique de confiance.-
AWS_REGIONRemplacez-la par la AWS région pour votre activation hybride AWS SSM. -
AWS_ACCOUNT_IDRemplacez-le par votre identifiant de AWS compte. -
TAG_KEYRemplacez-la par la clé de balise de ressource AWS SSM que vous avez utilisée lors de la création de votre AWS activation hybride SSM. La combinaison de la clé de balise et de la valeur de balise est utilisée dans la condition d'ssm:DeregisterManagedInstanceautoriser uniquement le rôle IAM des nœuds hybrides à désenregistrer les instances gérées AWS SSM associées à votre AWS activation hybride SSM. Dans le CloudFormation modèle, laTAG_KEYvaleur par défaut est.EKSClusterARN -
TAG_VALUERemplacez-la par la valeur de balise de ressource AWS SSM que vous avez utilisée lors de la création de votre AWS activation hybride SSM. La combinaison de la clé de balise et de la valeur de balise est utilisée dans la condition d'ssm:DeregisterManagedInstanceautoriser uniquement le rôle IAM des nœuds hybrides à désenregistrer les instances gérées AWS SSM associées à votre AWS activation hybride SSM. Si vous utilisez la valeur par défautTAG_KEYouEKSClusterARN, transmettez l’ARN de votre cluster EKS en tant queTAG_VALUE. Les ARN du cluster EKS ont le formatarn:aws: eks:AWS_REGION:AWS_ACCOUNT_ID:cluster/CLUSTER_NAME.{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ssm:DescribeInstanceInformation", "Resource": "*" }, { "Effect": "Allow", "Action": "ssm:DeregisterManagedInstance", "Resource": "arn:aws:ssm:us-east-1:123456789012:managed-instance/*", "Condition": { "StringEquals": { "ssm:resourceTag/TAG_KEY": "TAG_VALUE" } } } ] }
-
-
Créez la politique à l’aide de la commande suivante
aws iam create-policy \ --policy-name EKSHybridSSMPolicy \ --policy-document file://eks-hybrid-ssm-policy.json -
Créez un fichier nommé
eks-hybrid-ssm-trust.json.AWS_REGIONRemplacez-la par la AWS région de votre activation hybride AWS SSM etAWS_ACCOUNT_IDpar votre identifiant de AWS compte.{ "Version":"2012-10-17", "Statement":[ { "Sid":"", "Effect":"Allow", "Principal":{ "Service":"ssm.amazonaws.com" }, "Action":"sts:AssumeRole", "Condition":{ "StringEquals":{ "aws:SourceAccount":"123456789012" }, "ArnEquals":{ "aws:SourceArn":"arn:aws:ssm:us-east-1:123456789012:*" } } } ] } -
Créez le rôle à l’aide de la commande suivante.
aws iam create-role \ --role-name AmazonEKSHybridNodesRole \ --assume-role-policy-document file://eks-hybrid-ssm-trust.json -
Joignez le
EKSDescribeClusterPolicyet leEKSHybridSSMPolicyque vous avez créés lors des étapes précédentes.AWS_ACCOUNT_IDRemplacez-le par votre identifiant de AWS compte.aws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::AWS_ACCOUNT_ID:policy/EKSDescribeClusterPolicyaws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::AWS_ACCOUNT_ID:policy/EKSHybridSSMPolicy -
Joignez les politiques
AmazonEC2ContainerRegistryPullOnlyetAmazonSSMManagedInstanceCoreAWS gérez.aws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::aws:policy/AmazonEC2ContainerRegistryPullOnlyaws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::aws:policy/AmazonSSMManagedInstanceCore
Étapes relatives aux rôles AWS IAM Anywhere
Pour utiliser AWS IAM Roles Anywhere, vous devez configurer votre ancre de confiance AWS IAM Roles Anywhere avant de créer le rôle IAM Hybrid Nodes. Pour obtenir des instructions, consultez Configuration AWS Rôles Anywhere IAM.
-
Créez un fichier nommé
eks-hybrid-iamra-trust.json. RemplacezTRUST_ANCHOR ARNpar l’ARN de l’ancre d’approbation que vous avez créée au cours des étapes Configuration AWS Rôles Anywhere IAM. La condition de cette politique de confiance limite la capacité d' AWS IAM Roles Anywhere à assumer le rôle IAM des nœuds hybrides pour échanger des informations d'identification IAM temporaires uniquement lorsque le nom de session du rôle correspond au CN du certificat x509 installé sur vos nœuds hybrides. Vous pouvez également utiliser d’autres attributs de certificat pour identifier de manière unique votre nœud. L’attribut de certificat que vous utilisez dans la stratégie de confiance doit correspondre aunodeNameque vous avez défini dans votre configurationnodeadm. Pour de plus amples informations, veuillez consulter Nœuds hybrides (référence nodeadm).{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": [ "sts:TagSession", "sts:SetSourceIdentity" ], "Condition": { "StringEquals": { "aws:PrincipalTag/x509Subject/CN": "${aws:PrincipalTag/x509Subject/CN}" }, "ArnEquals": { "aws:SourceArn": "arn:aws:rolesanywhere:us-east-1:123456789012:trust-anchor/TA_ID" } } }, { "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:RoleSessionName": "${aws:PrincipalTag/x509Subject/CN}", "aws:PrincipalTag/x509Subject/CN": "${aws:PrincipalTag/x509Subject/CN}" }, "ArnEquals": { "aws:SourceArn": "arn:aws:rolesanywhere:us-east-1:123456789012:trust-anchor/TA_ID" } } } ] } -
Créez le rôle à l’aide de la commande suivante.
aws iam create-role \ --role-name AmazonEKSHybridNodesRole \ --assume-role-policy-document file://eks-hybrid-iamra-trust.json -
Attachez le
EKSDescribeClusterPolicyque vous avez créé lors des étapes précédentes.AWS_ACCOUNT_IDRemplacez-le par votre identifiant de AWS compte.aws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::AWS_ACCOUNT_ID:policy/EKSDescribeClusterPolicy -
Joindre la politique
AmazonEC2ContainerRegistryPullOnlyAWS géréeaws iam attach-role-policy \ --role-name AmazonEKSHybridNodesRole \ --policy-arn arn:aws: iam::aws:policy/AmazonEC2ContainerRegistryPullOnly
Console de gestion AWS
Créer une politique de cluster EKS Describe
-
Ouvrez la console Amazon IAM
. -
Dans le volet de navigation de gauche, choisissez Politiques.
-
Sur la page Politiques, choisissez Créer une politique.
-
Sur la page Spécifier les autorisations, dans le panneau Sélectionner un service, choisissez EKS.
-
Filtrez les actions pour DescribeCluster et sélectionnez l'action DescribeCluster Lire.
-
Choisissez Suivant.
-
-
Sur la page Réviser et créer
-
Saisissez un nom pour votre politique, par exemple
EKSDescribeClusterPolicy. -
Choisissez Create Policy (Créer une politique).
-
Étapes pour les AWS activations hybrides SSM
-
Ouvrez la console Amazon IAM
. -
Dans le volet de navigation de gauche, choisissez Politiques.
-
Sur la page Politiques, choisissez Créer une politique.
-
Sur la page Spécifier les autorisations, dans le menu de navigation en haut à droite de l’éditeur de stratégie, sélectionnez JSON. Collez l’extrait suivant.
AWS_REGIONRemplacez-la par la AWS région de votre activation hybride AWS SSM et remplacez-laAWS_ACCOUNT_IDpar votre identifiant de AWS compte. RemplacezTAG_KEYetTAG_VALUEpar la clé de balise de ressource AWS SSM que vous avez utilisée lors de la création de votre activation hybride AWS SSM.{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ssm:DescribeInstanceInformation", "Resource": "*" }, { "Effect": "Allow", "Action": "ssm:DeregisterManagedInstance", "Resource": "arn:aws:ssm:us-east-1:123456789012:managed-instance/*", "Condition": { "StringEquals": { "ssm:resourceTag/TAG_KEY": "TAG_VALUE" } } } ] }-
Choisissez Suivant.
-
-
Sur la page Réviser et créer
-
Saisissez un nom pour votre politique, par exemple
EKSHybridSSMPolicy. -
Choisissez Create Policy (Créer une politique).
-
-
Dans le volet de navigation de gauche, choisissez Rôles.
-
Sur la page Rôles, choisissez Créer un rôle.
-
Sur la page Select trusted entity (Sélectionner une entité de confiance), procédez comme suit :
-
Dans la section Type d’entité approuvée, sélectionnez Stratégie d’approbation personnalisée. Collez ce qui suit dans l’éditeur de stratégie de confiance personnalisée.
AWS_REGIONRemplacez-la par la AWS région de votre activation hybride AWS SSM etAWS_ACCOUNT_IDpar votre identifiant de AWS compte.{ "Version":"2012-10-17", "Statement":[ { "Sid":"", "Effect":"Allow", "Principal":{ "Service":"ssm.amazonaws.com" }, "Action":"sts:AssumeRole", "Condition":{ "StringEquals":{ "aws:SourceAccount":"123456789012" }, "ArnEquals":{ "aws:SourceArn":"arn:aws:ssm:us-east-1:123456789012:*" } } } ] } -
Choisissez Suivant.
-
-
Sur la page Ajouter des autorisations, associez une stratégie personnalisée ou procédez comme suit :
-
Dans la zone Stratégies de filtre, saisissez
EKSDescribeClusterPolicy, ou le nom de la stratégie que vous avez créée ci-dessus. Cochez la case située à gauche du nom de votre police dans les résultats de recherche. -
Dans la zone Stratégies de filtre, saisissez
EKSHybridSSMPolicy, ou le nom de la stratégie que vous avez créée ci-dessus. Cochez la case située à gauche du nom de votre police dans les résultats de recherche. -
Dans la zone Filter policies (Politiques de filtre), saisissez
AmazonEC2ContainerRegistryPullOnly. Cochez la case à gauche deAmazonEC2ContainerRegistryPullOnlydans les résultats de recherche. -
Dans la zone Filter policies (Politiques de filtre), saisissez
AmazonSSMManagedInstanceCore. Cochez la case à gauche deAmazonSSMManagedInstanceCoredans les résultats de recherche. -
Choisissez Suivant.
-
-
Sur la page Name, review, and create (Nommer, vérifier et créer), procédez comme suit :
-
Pour Role name (Nom de rôle), saisissez un nom unique pour votre rôle, par exemple,
AmazonEKSHybridNodesRole. -
Pour Description, remplacez le texte actuel par un texte descriptif tel que
Amazon EKS - Hybrid Nodes role. -
Choisissez Créer un rôle.
-
Étapes relatives aux rôles AWS IAM, où que vous soyez
Pour utiliser AWS IAM Roles Anywhere, vous devez configurer votre ancre de confiance AWS IAM Roles Anywhere avant de créer le rôle IAM Hybrid Nodes. Pour obtenir des instructions, consultez Configuration AWS Rôles Anywhere IAM.
-
Ouvrez la console Amazon IAM
. -
Dans le volet de navigation de gauche, choisissez Rôles.
-
Sur la page Rôles, choisissez Créer un rôle.
-
Sur la page Select trusted entity (Sélectionner une entité de confiance), procédez comme suit :
-
Dans la section Type d’entité approuvée, sélectionnez Stratégie d’approbation personnalisée. Collez ce qui suit dans l’éditeur de stratégie de confiance personnalisée. Remplacez
TRUST_ANCHOR ARNpar l’ARN de l’ancre d’approbation que vous avez créée au cours des étapes Configuration AWS Rôles Anywhere IAM. La condition de cette politique de confiance limite la capacité d' AWS IAM Roles Anywhere à assumer le rôle IAM des nœuds hybrides pour échanger des informations d'identification IAM temporaires uniquement lorsque le nom de session du rôle correspond au CN du certificat x509 installé sur vos nœuds hybrides. Vous pouvez également utiliser d’autres attributs de certificat pour identifier de manière unique votre nœud. L’attribut de certificat que vous utilisez dans la stratégie de confiance doit correspondre au nom de nœud que vous avez défini dans votre configuration nodeadm. Pour de plus amples informations, veuillez consulter Nœuds hybrides (référence nodeadm).{ "Version":"2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": [ "sts:TagSession", "sts:SetSourceIdentity" ], "Condition": { "StringEquals": { "aws:PrincipalTag/x509Subject/CN": "${aws:PrincipalTag/x509Subject/CN}" }, "ArnEquals": { "aws:SourceArn": "arn:aws:rolesanywhere:us-east-1:123456789012:trust-anchor/TA_ID" } } }, { "Effect": "Allow", "Principal": { "Service": "rolesanywhere.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:RoleSessionName": "${aws:PrincipalTag/x509Subject/CN}", "aws:PrincipalTag/x509Subject/CN": "${aws:PrincipalTag/x509Subject/CN}" }, "ArnEquals": { "aws:SourceArn": "arn:aws:rolesanywhere:us-east-1:123456789012:trust-anchor/TA_ID" } } } ] } -
Choisissez Suivant.
-
-
Sur la page Ajouter des autorisations, associez une stratégie personnalisée ou procédez comme suit :
-
Dans la zone Stratégies de filtre, saisissez
EKSDescribeClusterPolicy, ou le nom de la stratégie que vous avez créée ci-dessus. Cochez la case située à gauche du nom de votre police dans les résultats de recherche. -
Dans la zone Filter policies (Politiques de filtre), saisissez
AmazonEC2ContainerRegistryPullOnly. Cochez la case à gauche deAmazonEC2ContainerRegistryPullOnlydans les résultats de recherche. -
Choisissez Suivant.
-
-
Sur la page Name, review, and create (Nommer, vérifier et créer), procédez comme suit :
-
Pour Role name (Nom de rôle), saisissez un nom unique pour votre rôle, par exemple,
AmazonEKSHybridNodesRole. -
Pour Description, remplacez le texte actuel par un texte descriptif tel que
Amazon EKS - Hybrid Nodes role. -
Choisissez Créer un rôle.
-