Accorder aux utilisateurs l'accès à Amazon EMR sur EKS - Amazon EMR

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.

Accorder aux utilisateurs l'accès à Amazon EMR sur EKS

Pour toute action que vous effectuez EMR sur AmazonEKS, vous avez besoin d'une IAM autorisation correspondante pour cette action. Vous devez créer une IAM politique qui vous permet d'exécuter des EKS actions Amazon EMR et d'associer la politique à l'IAMutilisateur ou au rôle que vous utilisez.

Cette rubrique décrit les étapes à suivre pour créer une nouvelle politique et l'associer à un utilisateur. Il couvre également les autorisations de base dont vous avez besoin pour configurer votre EKS environnement Amazon EMR on. Nous vous recommandons d'affiner les autorisations relatives à des ressources spécifiques dans la mesure du possible en fonction des besoins de votre entreprise.

Création d'une nouvelle IAM politique et association de celle-ci à un utilisateur dans la IAM console

Création d'une nouvelle IAM politique
  1. Connectez-vous à la IAM console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/iam/.

  2. Dans le volet de navigation gauche de la IAM console, sélectionnez Policies.

  3. Sur la page Politiques, choisissez Créer une politique.

  4. Dans la fenêtre Créer une politique, accédez à l'JSONonglet Modifier. Créez un document de politique avec une ou plusieurs JSON déclarations, comme indiqué dans les exemples suivant cette procédure. Ensuite, choisissez Examiner la politique.

  5. Sur l'écran Review policy (Examiner la politique), saisissez votre Policy Name (Nom de politique), par exemple, AmazonEMROnEKSPolicy. Saisissez une description facultative, puis sélectionnez Créer une politique.

Attacher la politique à un utilisateur ou à un rôle
  1. Connectez-vous à la IAM console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/iam/

  2. Dans le panneau de navigation, choisissez Politiques.

  3. Dans la liste des politiques, cochez la case en regard de la politique créée dans la section précédente. Vous pouvez utiliser le menu Filtre et la zone de recherche pour filtrer la liste de politiques.

  4. Sélectionnez Policy Actions (Actions de politique), puis sélectionnez Attach (Attacher).

  5. Choisissez l'utilisateur ou le rôle auquel attacher la politique. Vous pouvez utiliser le menu Filtre et la zone de recherche pour filtrer la liste des entités du principal. Après avoir choisi l'utilisateur auquel attacher la politique, sélectionnez Attacher la politique.

Autorisations pour la gestion des clusters virtuels

Pour gérer les clusters virtuels dans votre AWS compte, créez une IAM politique avec les autorisations suivantes. Ces autorisations vous permettent de créer, de répertorier, de décrire et de supprimer des clusters virtuels dans votre AWS compte.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "*", "Condition": { "StringLike": { "iam:AWSServiceName": "emr-containers.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "emr-containers:CreateVirtualCluster", "emr-containers:ListVirtualClusters", "emr-containers:DescribeVirtualCluster", "emr-containers:DeleteVirtualCluster" ], "Resource": "*" } ] }

Amazon EMR est intégré à Amazon EKS Cluster Access Management (CAM), ce qui vous permet d'automatiser la configuration des politiques AuthN et AuthZ nécessaires pour exécuter des tâches Amazon EMR Spark dans les espaces de noms des clusters Amazon. EKS Pour ce faire, vous devez disposer des autorisations suivantes :

{ "Effect": "Allow", "Action": [ "eks:CreateAccessEntry" ], "Resource": "arn:<AWS_PARTITION>:eks:<AWS_REGION>:<AWS_ACCOUNT_ID>:cluster/<EKS_CLUSTER_NAME>" }, { "Effect": "Allow", "Action": [ "eks:DescribeAccessEntry", "eks:DeleteAccessEntry", "eks:ListAssociatedAccessPolicies", "eks:AssociateAccessPolicy", "eks:DisassociateAccessPolicy" ], "Resource": "arn:<AWS_PARTITION>:eks:<AWS_REGION>:<AWS_ACCOUNT_ID>:access-entry/<EKS_CLUSTER_NAME>/role/<AWS_ACCOUNT_ID>/AWSServiceRoleForAmazonEMRContainers/*" }

Pour plus d'informations, consultez Automatiser l'activation de l'accès aux clusters pour Amazon EMR sur EKS.

Lorsque l'CreateVirtualClusteropération est invoquée pour la première fois depuis un AWS compte, vous devez également disposer des CreateServiceLinkedRole autorisations nécessaires pour créer le rôle lié à un service pour Amazon EMR sur. EKS Pour de plus amples informations, veuillez consulter Utilisation des rôles liés à un service pour Amazon EMR on EKS.

Autorisations pour la soumission de tâches

Pour soumettre des tâches sur les clusters virtuels de votre AWS compte, créez une IAM politique avec les autorisations suivantes. Ces autorisations vous permettent de démarrer, de répertorier, de décrire et d'annuler des exécutions de tâches pour tous les clusters virtuels de votre compte. Vous devriez envisager d'ajouter des autorisations pour répertorier ou décrire les clusters virtuels, ce qui vous permet de vérifier l'état du cluster virtuel avant de soumettre des tâches.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-containers:StartJobRun", "emr-containers:ListJobRuns", "emr-containers:DescribeJobRun", "emr-containers:CancelJobRun" ], "Resource": "*" } ] }

Autorisations pour le débogage et la surveillance

Pour accéder aux journaux transmis à Amazon S3 et/ou pour consulter les CloudWatch journaux des événements des applications dans la EMR console Amazon, créez une IAM politique avec les autorisations suivantes. Nous vous recommandons d'affiner les autorisations relatives à des ressources spécifiques dans la mesure du possible en fonction des besoins de votre entreprise.

Important

Si vous n'avez pas créé de compartiment Amazon S3, vous devez ajouter une autorisation s3:CreateBucket à la déclaration de politique. Si vous n'avez pas créé de groupe de journaux, vous devez ajouter logs:CreateLogGroup à la déclaration de politique.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "emr-containers:DescribeJobRun", "elasticmapreduce:CreatePersistentAppUI", "elasticmapreduce:DescribePersistentAppUI", "elasticmapreduce:GetPersistentAppUIPresignedURL" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "logs:Get*", "logs:DescribeLogGroups", "logs:DescribeLogStreams" ], "Resource": "*" } ] }

Pour plus d'informations sur la façon de configurer l'exécution d'une tâche pour envoyer des journaux vers Amazon S3 CloudWatch, consultez Configurer une exécution de tâche pour utiliser les journaux S3 et Configurer une exécution de tâche pour utiliser CloudWatch les journaux.