Configuration des systèmes de fichiers Amazon EFS pour Amazon ECS à l'aide de la console - 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.

Configuration des systèmes de fichiers Amazon EFS pour Amazon ECS à l'aide de la console

Découvrez comment utiliser les systèmes de fichiers Amazon Elastic File System (Amazon EFS) avec Amazon ECS.

Étape 1 : Créer un cluster Amazon ECS

Pour créer un cluster Amazon ECS, effectuez les étapes suivantes.

Pour créer un nouveau cluster (console Amazon ECS)

Avant de commencer, attribuez l'autorisation IAM adéquate. Pour plus d’informations, consultez Exemples de clusters Amazon ECS.

  1. Ouvrez la console à partir de l'adresse https://console.aws.amazon.com/ecs/v2.

  2. Dans la barre de navigation, sélectionnez la région à utiliser.

  3. Dans le panneau de navigation, choisissez Clusters.

  4. Sur la page Clusters, choisissez Create Cluster (Créer un cluster).

  5. Sous Cluster configuration (Configuration de cluster), dans Cluster name (Nom du cluster), saisissez EFS-tutorial.

  6. (Facultatif) Pour modifier le VPC et les sous-réseaux d'où vos tâches et services se lancent, sous Networking (Réseaux), effectuez l'une des opérations suivantes :

    • Pour supprimer un sous-réseau, sous Subnets (Sous-réseaux), choisissez X pour chaque sous-réseau que vous souhaitez supprimer.

    • Pour passer à un VPC autre celui par défaut, sous VPC, choisissez un VPC existant, puis sous Subnets (Sous-réseaux), sélectionnez chaque sous-réseau.

  7. Pour ajouter des instances Amazon EC2 à votre cluster, développez Infrastructure, puis sélectionnez Instances Amazon EC2. Ensuite, configurez le groupe Auto Scaling qui agit en tant que fournisseur de capacité :

    1. Pour créer un groupe Auto Scaling, depuis Auto Scaling group (ASG) (Groupe Auto Scaling [ASG]), sélectionnez Create new group (Créer un nouveau groupe), puis fournissez les détails suivants sur le groupe :

      • Pour Operating system/Architecture (Système d'exploitation/Architecture), choisissez Amazon Linux 2.

      • Dans EC2 instance type (Type d'instance EC2), choisissez t2.micro.

        Pour SSH key pair (Paire de clés SSH), choisissez la paire qui prouve votre identité lorsque vous connectez à l'instance.

      • Dans le champ Capacité, entrez 1.

  8. Choisissez Créer.

Étape 2 : créer un groupe de sécurité pour des instances Amazon EC2 et le système de fichiers Amazon EFS

Lors de cette étape, vous créez un groupe de sécurité pour vos instances Amazon EC2 autorisant le trafic réseau entrant sur le port 80 et pour votre système de fichiers Amazon EFS autorisant l'accès entrant depuis vos instances de conteneur.

Créez un groupe de sécurité pour vos instances Amazon EC2 avec les options suivantes :

  • Nom du groupe de sécurité : un nom unique pour votre groupe de sécurité.

  • VPC : le VPC identifié précédemment pour votre cluster.

  • Règle entrante

    • Type : HTTP.

    • Source : 0.0.0.0/0.

Créez un groupe de sécurité pour votre système de fichiers Amazon EFS avec les options suivantes :

  • Nom du groupe de sécurité : un nom unique pour votre groupe de sécurité. Par exemple, EFS-access-for-sg-dc025fa2.

  • VPC : le VPC identifié précédemment pour votre cluster.

  • Règle entrante

    • Type : NFS.

    • Source : personnalisée avec l'ID du groupe de sécurité que vous avez créé pour vos instances.

Pour plus d'informations sur la création d'un groupe de sécurité, consultez la section Créer un groupe de sécurité dans le guide de l'utilisateur Amazon EC2.

Étape 3 : Créer un système de fichiers Amazon EFS

Dans cette étape, vous créez un système de fichiers Amazon EFS.

Pour créer un système de fichiers Amazon EFS pour des tâches Amazon ECS.
  1. Ouvrez la console Amazon Elastic File System à l'adresse https://console.aws.amazon.com/efs/.

  2. Choisissez Create file system (Créer un système de fichiers).

  3. Saisissez un nom pour votre système de fichiers, puis choisissez le VPC dans lequel vos instances de conteneur sont hébergées. Par défaut, chaque sous-réseau du VPC spécifié reçoit une cible de montage qui utilise le groupe de sécurité par défaut de ce VPC. Choisissez ensuite Personnaliser.

    Note

    Ce didacticiel part du principe que votre système de fichiers Amazon EFS, votre cluster Amazon ECS, vos instances de conteneur et vos tâches se trouvent dans le même VPC. Pour plus d'informations sur le montage d'un système de fichiers à partir d'un autre VPC, consultez la section Procédure pas à pas : monter un système de fichiers à partir d'un autre VPC dans le guide de l'utilisateur Amazon EFS.

  4. Sur la page Paramètres du système de fichiers, configurez les paramètres facultatifs, puis sous Paramètres de performance, choisissez le mode de débit Transmission en rafales pour votre système de fichiers. Après avoir configuré les paramètres, sélectionnez Suivant.

    1. (Facultatif) Ajoutez des étiquettes pour votre système de fichiers. Par exemple, vous pouvez spécifier un nom unique pour le système de fichiers en entrant ce nom dans la colonne Valeur en regard de la clé Nom.

    2. (Facultatif) Activez la gestion du cycle de vie pour économiser de l'argent sur un stockage rarement utilisé. Pour en savoir plus, consultez la section Gestion du cycle de vie EFS du Amazon Elastic File System User Guide.

    3. (Facultatif) Activez le chiffrement. Cochez la case pour activer le chiffrement de votre système de fichiers Amazon EFS au repos.

  5. Sur la page Accès réseau, sous Monter les cibles, remplacez la configuration de groupe de sécurité existante de chaque zone de disponibilité par le groupe de sécurité que vous avez créé pour le système de fichiers dans Étape 2 : créer un groupe de sécurité pour des instances Amazon EC2 et le système de fichiers Amazon EFS, puis choisissez Suivant.

  6. Il n'est pas nécessaire de configurer la Stratégie de système de fichiers pour ce didacticiel. Vous pouvez donc ignorer la section en choisissant Suivant.

  7. Vérifiez les options de votre système de fichiers et choisissez Créer pour terminer le processus.

  8. Sur l'écran Systèmes de fichiers, enregistrez l'ID du système de fichiers. À l'étape suivante, vous référencerez cette valeur dans votre définition de tâche Amazon ECS.

Étape 4 : Ajouter du contenu au système de fichiers Amazon EFS

Au cours de cette étape, vous monterez le système de fichiers Amazon EFS sur une instance Amazon EC2 et y ajouterez du contenu. Cette opération servira à tester la nature persistante des données dans ce didacticiel. Lorsque vous utilisez cette fonction, vous avez normalement votre application ou une autre méthode d'écriture de données dans votre système de fichiers Amazon EFS.

Pour créer une instance Amazon EC2 et monter le système de fichiers Amazon EFS
  1. Ouvrez la console Amazon EC2 à l'adresse https://console.aws.amazon.com/ec2/.

  2. Choisissez Launch Instances (Lancer les instances).

  3. Sous Images d'applications et de systèmes d'exploitation (Amazon Machine Image), sélectionnez l'AMI Amazon Linux 2 (HVM).

  4. Sous Type d'instance, conservez le type d'instance par défaut t2.micro.

  5. Sous Paire de clés (connexion), sélectionnez une paire de clés pour l'accès SSH à l'instance.

  6. Sous Paramètres réseau, sélectionnez le VPC que vous avez spécifié pour votre système de fichiers Amazon EFS et votre cluster Amazon ECS. Sélectionnez un sous-réseau et le groupe de sécurité d'instance créé dans Étape 2 : créer un groupe de sécurité pour des instances Amazon EC2 et le système de fichiers Amazon EFS. Configurez le groupe de sécurité de l'instance. Assurez-vous que Attribuer automatiquement l'adresse IP publique est activé.

  7. Sous Configurer le stockage, cliquez sur le bouton Modifier pour les systèmes de fichiers, puis choisissez EFS. Sélectionnez le système de fichiers créé dans Étape 3 : Créer un système de fichiers Amazon EFS. Vous pouvez éventuellement modifier le point du montage ou conserver la valeur par défaut.

    Important

    Vous devez sélectionner un sous-réseau avant de pouvoir ajouter un système de fichiers à l'instance.

  8. Désactivez Créer et associer automatiquement des groupes de sécurité. Laissez l'autre case cochée. Choisissez Add shared file system (Ajouter un système de fichiers partagé).

  9. Sous Advanced Details (Détails avancés), assurez-vous que le script de données utilisateur est renseigné automatiquement avec les étapes de montage du système de fichiers Amazon EFS.

  10. Sous Récapitulatif, assurez-vous que le Nombre d'instances est égal à 1. Choisissez Launch instance (Lancer une instance).

  11. Sur la page Lancer une instance, choisissez Afficher toutes les instances pour afficher l'état de vos instances. Initialement, le statut d'État de l'instance est PENDING. Une fois que l'état est passé à RUNNING et que l'instance a réussi toutes les vérifications de statut, celle-ci est prête à être utilisée.

Maintenant, connectez-vous à l'instance Amazon EC2 et ajoutez du contenu au système de fichiers Amazon EFS.

Pour vous connecter à l'instance Amazon EC2 et ajouter du contenu au système de fichiers Amazon EFS
  1. Envoyez une requête SSH à l'instance Amazon EC2 que vous avez créée. Pour plus d'informations, consultez Connect to your Linux instance dans le guide de l'utilisateur Amazon EC2.

  2. Dans la fenêtre du terminal, exécutez la commande df -T pour vérifier que le système de fichiers Amazon EFS est bien monté. Dans la sortie suivante, nous avons mis en évidence le montage du système de fichiers Amazon EFS.

    $ df -T Filesystem Type 1K-blocks Used Available Use% Mounted on devtmpfs devtmpfs 485468 0 485468 0% /dev tmpfs tmpfs 503480 0 503480 0% /dev/shm tmpfs tmpfs 503480 424 503056 1% /run tmpfs tmpfs 503480 0 503480 0% /sys/fs/cgroup /dev/xvda1 xfs 8376300 1310952 7065348 16% / 127.0.0.1:/ nfs4 9007199254739968 0 9007199254739968 0% /mnt/efs/fs1 tmpfs tmpfs 100700 0 100700 0% /run/user/1000
  3. Accédez au répertoire dans lequel le système de fichiers Amazon EFS est monté. Dans l'exemple ci-dessus, il s'agit de /mnt/efs/fs1.

  4. Créez un fichier nommé index.html avec le contenu suivant:

    <html> <body> <h1>It Works!</h1> <p>You are using an Amazon EFS file system for persistent container storage.</p> </body> </html>

Étape 5 : Créer une définition de tâche

La définition de tâche suivante crée un volume de données nommé efs-html. Le conteneur nginx monte le volume de données de l'hôte à la racine NGINX, /usr/share/nginx/html.

Pour créer une nouvelle définition de tâche à l'aide de la console Amazon ECS
  1. Ouvrez la console à partir de l'adresse https://console.aws.amazon.com/ecs/v2.

  2. Dans le panneau de navigation, choisissez Task definitions (Définition des tâches).

  3. Choisissez Create new task definition (Créer une nouvelle définition de tâche), puis Create new task definition with JSON (Créer une nouvelle définition de tâche avec JSON).

  4. Dans la zone de l'éditeur JSON, copiez et collez le texte JSON suivant, en remplaçant fileSystemId par l'ID de votre système de fichiers Amazon EFS.

    { "containerDefinitions": [ { "memory": 128, "portMappings": [ { "hostPort": 80, "containerPort": 80, "protocol": "tcp" } ], "essential": true, "mountPoints": [ { "containerPath": "/usr/share/nginx/html", "sourceVolume": "efs-html" } ], "name": "nginx", "image": "nginx" } ], "volumes": [ { "name": "efs-html", "efsVolumeConfiguration": { "fileSystemId": "fs-1324abcd", "transitEncryption": "ENABLED" } } ], "family": "efs-tutorial", "executionRoleArn":"arn:aws::iam::111122223333:role/ecsTaskExecutionRole" }
    Note

    Vous pouvez ajouter les autorisations suivantes à votre rôle IAM d'exécution de tâches Amazon ECS afin de permettre à l'agent Amazon ECS de localiser et de monter un système de fichiers Amazon EFS sur une tâche au démarrage.

    • elasticfilesystem:ClientMount

    • elasticfilesystem:ClientWrite

    • elasticfilesystem:DescribeMountTargets

    • elasticfilesystem:DescribeFileSystems

  5. Choisissez Créer.

Étape 6 : Exécuter une tâche et afficher les résultats

Maintenant que votre système de fichiers Amazon EFS est créé et qu'il existe du contenu web pour le conteneur NGINX à diffuser, vous pouvez exécuter une tâche à l'aide de la définition de tâche que vous avez créée. Le serveur web NGINX diffuse votre page HTML simple. Si vous mettez à jour le contenu de votre système de fichiers Amazon EFS, ces changements sont propagés vers tous les conteneurs qui ont également monté ce système de fichiers.

La tâche s'exécute dans le sous-réseau que vous avez défini pour le cluster.

Pour exécuter une tâche et afficher les résultats à l'aide de la console
  1. Ouvrez la console à partir de l'adresse https://console.aws.amazon.com/ecs/v2.

  2. Sur la page Clusters, sélectionnez le cluster dans lequel la tâche autonome doit s'exécuter.

    Déterminez la ressource à partir de laquelle vous lancez le service.

    Pour démarrer un service à partir de Étapes

    Clusters

    1. Sur la page Clusters, sélectionnez le cluster dans lequel créer le service.

    2. Sous l'onglet Tasks (Tâches), choisissez Run new task (Exécuter une nouvelle tâche).

    Type de lancement
    1. Sur la page Task (Tâche), choisissez la définition de tâche.

    2. S'il y a plusieurs révisions, sélectionnez-en une.

    3. Choisissez Create (Créer), Exécuter la tâche (Exécuter la tâche).

  3. (Facultatif) Choisissez comment votre tâche planifiée est distribuée dans votre infrastructure de cluster. Développer Compute configuration (Configuration de calcul), puis procédez comme suit :

    Méthode de distribution Étapes
    Type de lancement
    1. Dans Compute options (Options de calcul), sélectionnez Launch type (Type de lancement).

    2. Pour Launch Type (Type de lancement), choisissez EC2.

  4. Pour Application type (Type d'application), choisissez Task (Tâche).

  5. Pour Task Definition (Définition de tâche), choisissez la définition de tâche efs-tutorial que vous avez créée précédemment.

  6. Pour Desired tasks (Tâches souhaitées), saisissez 1.

  7. Choisissez Créer.

  8. Sur la page Cluster, choisissez Infrastructure.

  9. Sous Instances de conteneur, sélectionnez l'instance de conteneur à laquelle vous connecter.

  10. Sur la page Container Instance (Instance de conteneur), sous Networking (Mise en réseau), enregistrez Public IP (IP publique) pour votre instance.

  11. Ouvrez un navigateur et saisissez l'adresse IP publique. Vous devez voir le message suivant :

    It works! You are using an Amazon EFS file system for persistent container storage.
    Note

    Si le message ne s'affiche pas, assurez-vous que le groupe de sécurité de votre instance de conteneur autorise le trafic réseau entrant sur le port 80 et que le groupe de sécurité de votre système de fichiers autorise l'accès entrant depuis l'instance de conteneur.