J'essaie de mettre en place un ECS mais jusqu'à présent, j'ai rencontré quelques problèmes d'autorisation pour lesquels j'ai déjà créé quelques questions sur ce forum.
Je pense que je suis coincé jusqu'à présent car honnêtement, je ne peux pas trouver toutes ces exigences de rôle en un seul endroit de manière concise.
Il semble que je doive définir au moins deux rôles:
1) Conteneur ECS http://docs.aws.amazon.com/AmazonECS/latest/developerguide/instance_IAM_role.html
2) Tâche ECS http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html#enable_task_iam_roles
Est-ce correct?
Ai-je oublié quelque chose? Existe-t-il une exigence IAM spéciale?
amazon-iam
amazon-ecs
Anthony Kong
la source
la source
Réponses:
Le seul rôle nécessaire est le rôle IAM de l'instance de conteneur . Ce rôle permet à l'agent ECS (exécuté sur votre instance EC2) de communiquer avec Amazon ECS.
Il existe cinq autres rôles qui peuvent également vous être utiles à différentes fins:
FARGATE
type de lancement. Ce rôle permet à AWS Fargate d'extraire vos images de conteneur d' Amazon ECR et de transférer vos journaux vers Amazon CloudWatch Logs . Ce rôle est également utilisé (sur les types de lancement Fargate et EC2) pour activer l'authentification du registre privé et les secrets d'AWS Secrets Manager et d'AWS Systems Manager Parameter Store .la source
En plus de cette très bonne explication de @ samuel-karp, j'ai rencontré aujourd'hui un problème lors de la migration de l'ELB classique vers l'ALB en combinaison avec des
task_role_arn
services personnalisés pour ECS.Bien que j'aie suivi les instructions décrites derrière le lien
Task IAM role
, l'erreur étaitLe fait est que le service semble s'enregistrer sur l'équilibreur de charge. Il ne fonctionnait que quand je le principal de échangeai
ecs.amazonaws.com
à"Principal": { "Service": "ecs-tasks.amazonaws.com" }
la source