Stockage de la configuration de l'instance de ECS conteneur Amazon dans Amazon S3 - Amazon Elastic Container Service

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.

Stockage de la configuration de l'instance de ECS conteneur Amazon dans Amazon S3

La configuration de l'agent de ECS conteneur Amazon est contrôlée à l'aide de la variable d'environnement. Les variantes Linux de l'outil ECS optimisé pour Amazon AMI recherchent ces variables au /etc/ecs/ecs.config démarrage de l'agent de conteneur et configurent l'agent en conséquence. Certaines variables d'environnement inoffensives, telles queECS_CLUSTER, peuvent être transmises à l'instance de conteneur lors du lancement via les données EC2 utilisateur d'Amazon et écrites dans ce fichier sans conséquence. Cependant, d'autres informations sensibles, telles que vos AWS informations d'identification ou la ECS_ENGINE_AUTH_DATA variable, ne doivent jamais être transmises à une instance /etc/ecs/ecs.config dans les données utilisateur ou écrites de manière à ce qu'elles apparaissent dans un .bash_history fichier.

Le stockage des informations de configuration dans un compartiment privé dans Amazon S3 et l'octroi d'un accès en lecture seule à votre IAM rôle d'instance de conteneur constituent un moyen sûr et pratique d'autoriser la configuration de l'instance de conteneur au lancement. Vous pouvez stocker une copie de votre fichier ecs.config dans un compartiment privé. Vous pouvez ensuite utiliser les données EC2 utilisateur Amazon pour installer AWS CLI et copier vos informations de configuration au /etc/ecs/ecs.config moment du lancement de l'instance.

Pour stocker un fichier ecs.config dans Amazon S3
  1. Vous devez accorder au rôle d'instance de conteneur (ecsInstanceRole) des autorisations pour avoir un accès en lecture seule à Amazon S3. Vous pouvez le faire en assignant l'AmazonS3 ReadOnlyAccess au rôle. ecsInstanceRole Pour plus d'informations sur la façon d'associer une politique à un rôle, voir Modifier la politique d'autorisations d'un rôle (console) dans le guide de AWS Identity and Access Management l'utilisateur

  2. Créez un ecs.config fichier contenant des variables de configuration d'ECSagent Amazon valides en utilisant le format suivant. Cet exemple configure l'authentification de registre privé. Pour de plus amples informations, veuillez consulter Utilisation d'images ne AWS provenant pas de conteneurs sur Amazon ECS.

    ECS_ENGINE_AUTH_TYPE=dockercfg ECS_ENGINE_AUTH_DATA={"https://index.docker.io/v1/":{"auth":"zq212MzEXAMPLE7o6T25Dk0i","email":"email@example.com"}}
    Note

    Pour une liste complète des variables de configuration d'ECSagent Amazon disponibles, consultez Amazon ECS Container Agent on GitHub.

  3. Pour stocker votre fichier de configuration, créez un compartiment privé dans Amazon S3. Pour plus d'informations, consultez Création d'un compartiment dans le Guide de l'utilisateur d'Amazon Simple Storage Service.

  4. Chargez le fichier ecs.config dans votre compartiment S3. Pour plus d'informations, consultez Ajouter un objet à un compartiment dans le Guide de l'utilisateur Amazon Simple Storage Service.

Pour charger un fichier ecs.config à partir d'Amazon S3 lors du lancement
  1. Exécutez les précédentes procédures de la présente section pour autoriser l'accès en lecture seule d'Amazon S3 à vos instances de conteneur et stocker un fichier ecs.config dans un compartiment S3 privé.

  2. Lancez de nouvelles instances de conteneur et utilisez l'exemple de script suivant dans les données EC2 utilisateur. Le script installe AWS CLI et copie votre fichier de configuration dans. /etc/ecs/ecs.config Pour de plus amples informations, veuillez consulter Lancement d'une instance de conteneur Amazon ECS Linux.

    #!/bin/bash yum install -y aws-cli aws s3 cp s3://your_bucket_name/ecs.config /etc/ecs/ecs.config