Découvrez comment créer une tâche Amazon ECS Windows pour le type de lancement Fargate - 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.

Découvrez comment créer une tâche Amazon ECS Windows pour le type de lancement Fargate

Commencez à utiliser Amazon AWS Fargate en utilisant ECS le type de lancement Fargate pour vos tâches dans les régions où Amazon ECS prend en charge Fargate. AWS

Suivez les étapes ci-dessous pour commencer à utiliser Amazon ECS sur AWS Fargate.

Prérequis

Avant de commencer, suivez les étapes ci-dessous Configurer pour utiliser Amazon ECS et vérifiez que votre AWS utilisateur dispose des autorisations spécifiées dans l'exemple AdministratorAccess IAM de politique.

La console tente de créer automatiquement le IAM rôle d'exécution des tâches, qui est requis pour les tâches Fargate. Pour que la console puisse créer ce IAM rôle, l'une des conditions suivantes doit être vraie :

Important

Le groupe de sécurité que vous sélectionnez lors de la création d'un service avec votre définition de tâche doit avoir le port 80 ouvert pour le trafic entrant. Ajoutez les règles entrantes suivantes à votre groupe de sécurité. Pour plus d'informations sur la création d'un groupe de sécurité, consultez la section Ajouter des règles à votre groupe de sécurité dans le guide de EC2 l'utilisateur Amazon.

  • Type : HTTP

  • Protocole : TCP

  • Plage de ports : 80

  • Source : n'importe où (0.0.0.0/0)

Étape 1 : créer un cluster

Vous pouvez créer un nouveau cluster appelé Windows qui utilise la valeur par défautVPC.

Pour créer un cluster avec AWS Management Console
  1. Ouvrez la console à la https://console.aws.amazon.com/ecs/version 2.

  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), pour Cluster name (Nom du cluster), saisissez windows.

  6. (Facultatif) Pour activer Container Insights, développez Monitoring (Surveillance), puis activez Use Container Insights (Utiliser Container Insights).

  7. (Facultatif) Pour vous aider à identifier votre cluster, développez Tags (balises), puis configurez vos balises.

    [Add a tag] Choisissez Add tag (Ajouter une balise) et procédez comme suit :

    • Pour Key (Clé), saisissez le nom de la clé.

    • Pour Value (Valeur), saisissez la valeur de clé.

    [Remove a tag] Choisissez Remove (Supprimer) à la droite de la clé et de la valeur de l'étiquette.

  8. Sélectionnez Create (Créer).

Étape 2 : Enregistrer une définition de tâche Windows

Avant de pouvoir exécuter des conteneurs Windows dans votre ECS cluster Amazon, vous devez enregistrer une définition de tâche. L'exemple de définition de tâche suivant affiche une page web simple sur le port 8080 d'une instance de conteneur avec l'image de conteneur mcr.microsoft.com/windows/servercore/iis.

Pour enregistrer l'exemple de définition de tâche auprès du AWS Management Console
  1. Dans le panneau de navigation, choisissez Task definitions (Définition des tâches).

  2. Choisissez Créer une nouvelle définition de tâche, Créer une nouvelle définition de tâche avec JSON.

  3. Copiez et collez l'exemple de définition de tâche suivant dans la zone, puis choisissez Save (Enregistrer).

    { "containerDefinitions": [ { "command": ["New-Item -Path C:\\inetpub\\wwwroot\\index.html -Type file -Value '<html> <head> <title>Amazon ECS Sample App</title> <style>body {margin-top: 40px; background-color: #333;} </style> </head><body> <div style=color:white;text-align:center> <h1>Amazon ECS Sample App</h1> <h2>Congratulations!</h2> <p>Your application is now running on a container in Amazon ECS.</p>'; C:\\ServiceMonitor.exe w3svc"], "entryPoint": [ "powershell", "-Command" ], "essential": true, "cpu": 2048, "memory": 4096, "image": "mcr.microsoft.com/windows/servercore/iis:windowsservercore-ltsc2019", "name": "sample_windows_app", "portMappings": [ { "hostPort": 80, "containerPort": 80, "protocol": "tcp" } ] } ], "memory": "4096", "cpu": "2048", "networkMode": "awsvpc", "family": "windows-simple-iis-2019-core", "executionRoleArn": "arn:aws:iam::012345678910:role/ecsTaskExecutionRole", "runtimePlatform": {"operatingSystemFamily": "WINDOWS_SERVER_2019_CORE"}, "requiresCompatibilities": ["FARGATE"] }
  4. Vérifiez vos informations et choisissez Create (Créer).

Étape 3 : Créer un service avec votre définition de tâche

Après avoir enregistré votre définition de tâche, vous pouvez placer des tâches dans votre cluster avec elle. La procédure suivante crée un service avec votre définition de tâche et place une tâche dans votre cluster.

Pour créer un service à partir de votre définition de tâche avec la console
  1. Dans le volet de navigation, choisissez Clusters, puis sélectionnez le cluster que vous avez créé dans Étape 1 : créer un cluster.

  2. Sous l'onglet Services choisissez Create (Créer).

  3. Sous Deployment configuration (Configuration du déploiement), spécifiez la manière dont votre application est déployée.

    1. Pour Task Definition (Définition de tâche), choisissez la définition de tâche que vous avez créé dans Étape 2 : Enregistrer une définition de tâche Windows.

    2. Pour Service name (Nom du service), saisissez un nom pour votre service.

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

  4. Sous Mise en réseau, vous pouvez créer un groupe de sécurité ou sélectionner un groupe de sécurité existant. Assurez-vous que le groupe de sécurité que vous utilisez possède la règle entrante répertoriée sous Prérequis.

  5. Sélectionnez Create (Créer).

Étape 4 : Afficher votre service

Une fois que votre service a lancé une tâche dans votre cluster, vous pouvez afficher le service et ouvrir la page de IIS test dans un navigateur pour vérifier que le conteneur est en cours d'exécution.

Note

Cette opération peut prendre jusqu'à 15 minutes pour que votre instance de conteneur télécharge et extrait les couches de base du conteneur Windows.

Pour afficher votre service
  1. Ouvrez la console à la https://console.aws.amazon.com/ecs/version 2.

  2. Dans le panneau de navigation, choisissez Clusters.

  3. Choisissez le cluster sur lequel vous avez exécuté le service.

  4. Dans l'onglet Services, sous Nom du service, choisissez le service que vous avez créé dans Étape 3 : Créer un service avec votre définition de tâche.

  5. Cliquez sur l'onglet Tâches, puis sélectionnez la tâche dans votre service.

  6. Sur la page des tâches, dans la section Configuration, sous IP publique, choisissez Adresse ouverte.

Étape 5 : Nettoyer

Lorsque vous avez fini d'utiliser un ECS cluster Amazon, vous devez nettoyer les ressources qui y sont associées afin d'éviter d'avoir à payer des frais pour des ressources que vous n'utilisez pas.

Certaines ECS ressources Amazon, telles que les tâches, les services, les clusters et les instances de conteneur, sont nettoyées à l'aide de la ECS console Amazon. Les autres ressources, telles que les EC2 instances Amazon, les équilibreurs de charge Elastic Load Balancing et les groupes Auto Scaling, doivent être nettoyées manuellement dans la EC2 console Amazon ou en supprimant la AWS CloudFormation pile qui les a créées.

  1. Dans le panneau de navigation, choisissez Clusters.

  2. Sur la page Clusters, sélectionnez le cluster que vous avez créé pour ce didacticiel.

  3. Choisissez l'onglet Services.

  4. Sélectionnez le service, puis choisissez Supprimer.

  5. À l'invite de confirmation, saisissez delete (supprimer) puis choisissez Delete (Supprimer).

    Attendez que le service soit supprimé.

  6. Choisissez Delete Cluster (Supprimer le cluster). À l'invite de confirmation, entrez delete cluster-name, puis choisissez Supprimer. La suppression du cluster nettoie les ressources associées créées avec le cluster, notamment les groupes Auto Scaling ou les VPCs équilibreurs de charge.