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.
Installation de l'agent de conteneur Amazon ECS
Si vous souhaitez enregistrer une EC2 instance Amazon auprès de votre cluster Amazon ECS et que cette instance n'utilise pas d'AMI basée sur l'AMI optimisée pour Amazon ECS, vous pouvez installer l'agent de conteneur Amazon ECS manuellement en suivant la procédure suivante. Pour ce faire, vous pouvez télécharger l’agent à partir d’un des compartiments S3 régionaux ou à partir d’Amazon Elastic Container Registry Public. Si vous téléchargez à partir d’un des compartiments S3 régionaux, vous pouvez éventuellement vérifier la validité du fichier d’agent de conteneur à l’aide de la signature PGP.
Note
Les unités systemd pour les services Amazon ECS et Docker sont soumises à une directive qui demande d'attendre que cloud-init ait terminé avant de démarrer les deux services. Le cloud-init processus n'est pas considéré comme terminé tant que l'exécution de vos données EC2 utilisateur Amazon n'est pas terminée. Par conséquent, le démarrage d'Amazon ECS ou Docker via les données EC2 utilisateur d'Amazon peut provoquer un blocage. Pour démarrer l'agent de conteneur à l'aide des données EC2 utilisateur Amazon, vous pouvez utilisersystemctl enable --now --no-block ecs.service.
Installation de l'agent de conteneur Amazon ECS sur une instance autre que l'Amazon Linux EC2 instance
Pour installer l'agent de conteneur Amazon ECS sur une EC2 instance Amazon, vous pouvez télécharger l'agent depuis l'un des compartiments Amazon S3 régionaux et l'installer.
Note
Lorsque vous utilisez une AMI autre qu'Amazon Linux, votre EC2 instance Amazon a besoin d'une cgroupfs assistance pour le cgroup pilote afin que l'agent Amazon ECS puisse prendre en charge les limites de ressources au niveau des tâches. Pour plus d'informations, consultez la section Agent Amazon ECS sur GitHub
Les fichiers de l'agent de conteneur Amazon ECS le plus récent sont répertoriés par région ci-dessous à des fins de référence pour chaque architecture système.
Pour installer l'agent de conteneur Amazon ECS sur une EC2 instance Amazon à l'aide d'une Amazon Linux non-AMI
-
Lancez une EC2 instance Amazon avec un rôle IAM qui permet d'accéder à Amazon ECS. Pour de plus amples informations, veuillez consulter Rôle IAM d'instance de conteneur Amazon ECS.
-
Connectez-vous à votre instance.
-
Installez la dernière version de Docker sur votre instance.
-
Vérifiez votre version de Docker pour vous assurer que votre système répond à l'exigence de version minimale. Pour plus d’informations sur la prise en charge de Docker, consultez la section Instances de EC2 conteneurs Amazon ECS.
docker --version -
Téléchargez le fichier d'agent Amazon ECS approprié pour votre système d'exploitation et votre architecture système, puis installez-le.
Pour les architectures
deb:ubuntu:~$curl -O https://s3.us-west-2.amazonaws.com/amazon-ecs-agent-us-west-2/amazon-ecs-init-latest.amd64.debubuntu:~$sudo dpkg -i amazon-ecs-init-latest.amd64.debPour les architectures
rpm:fedora:~$curl -O https://s3.us-west-2.amazonaws.com/amazon-ecs-agent-us-west-2/amazon-ecs-init-latest.x86_64.rpmfedora:~$sudo yum localinstall -y amazon-ecs-init-latest.x86_64.rpm -
Modifiez le fichier
/lib/systemd/system/ecs.serviceet ajoutez la ligne suivante à la fin de la section[Unit].After=cloud-final.service -
(Facultatif) Pour enregistrer l'instance auprès d'un cluster autre que le cluster
default, modifiez le fichier/etc/ecs/ecs.configet ajoutez le contenu suivant. L'exemple suivant spécifie le clusterMyCluster:ECS_CLUSTER=MyClusterPour plus d'informations sur ces options ainsi que d'autres options d'exécution d'agents, consultez la page Configuration de l'agent de conteneur Amazon ECS.
Note
Vous pouvez éventuellement stocker les variables d'environnement de votre agent dans Amazon S3 (qui peuvent être téléchargées sur vos instances de conteneur au moment du lancement à l'aide des données EC2 utilisateur Amazon). Ceci est particulièrement conseillé pour les informations sensibles, telles que les informations d'authentification pour les référentiels privés. Pour plus d’informations, consultez Stockage de la configuration d’instance de conteneur Amazon ECS dans Amazon S3 et Utilisation d'images autres que des AWS conteneurs dans Amazon ECS.
-
Lancez le service
ecs.ubuntu:~$sudo systemctl start ecs
Exécution de l'agent Amazon ECS avec le mode réseau hôte
Lorsque vous exécutez l'agent de conteneur Amazon ECS, ecs-init créera le conteneur d'agent de conteneur avec le mode de réseau host. C'est le seul mode de réseau pris en charge pour le conteneur d'agent de conteneur.
Cela vous permet de bloquer l'accès au point de terminaison du service de métadonnées d' EC2 instance Amazon (http://169.254.169.254) pour les conteneurs démarrés par l'agent de conteneur. Cela permet d'assurer que les conteneurs ne sont pas en mesure d'accéder aux informations d'identification du rôle IAM à partir du profil d'instance de conteneur et impose que les tâches utilisent uniquement les informations d'identification de rôle de tâche IAM. Pour de plus amples informations, veuillez consulter rôle IAM de tâche Amazon ECS.
Cela permet également à l'agent de conteneur de ne pas devoir disputer les connexions et le trafic réseau sur la passerelle docker0.