Comment puis-je modifier mon type d'instance de conteneur dans Amazon ECS ?

Lecture de 7 minute(s)
0

Je souhaite modifier le type d'instance de conteneur dans mon cluster Amazon Elastic Container Service (Amazon ECS) ? Cependant, j'ignore comment procéder.

Brève description

Pour modifier votre type d'instance de conteneur, suivez les étapes de l'une des sections suivantes :

  • Mettre à jour les instances de conteneur lancées dans un cluster ECS via la pile AWS CloudFormation
  • Mettre à jour les instances de conteneur lancées manuellement dans un cluster ECS
  • Mettre à jour des instances de conteneur dans un cluster associé à un fournisseur de capacité

Solution

Mettre à jour les instances de conteneur lancées dans un cluster ECS via la pile CloudFormation

Important : les étapes suivantes s'appliquent uniquement aux clusters ECS créés avec des ressources qui créent en interne une pile CloudFormation. Le format du nom de la pile est le suivant : ServiceDeConteneurEC2-votreNomDeCluster. Ces étapes ne s'appliquent pas aux clusters ECS vides ou aux approches personnalisées pour la mise en service d'instances de conteneur.

Mettre à jour la valeur du paramètre EcsInstanceType dans la pile CloudFormation

  1. Ouvrez la console AWS CloudFormation.
  2. Sélectionnez la pile qui contient votre cluster ECS.
    Remarque : le nom du cluster est ajouté à la fin de votre nom de pile (par exemple, ServiceDeConteneurEC2-votreNomDeCluster).
  3. Sélectionnez Actions, puis Update Stack (Mettre à jour la pile).
  4. Sélectionnez Use current template (Utiliser le modèle actuel), puis cliquez sur Next (Suivant).
  5. Pour EcsInstanceType, définissez une valeur appropriée pour le type d'instance de votre instance de conteneur, puis sélectionnez Next (Suivant).
  6. Ignorez la section Options, sélectionnez Next (Suivant), puis Update (Mettre à jour).

Remplacez les anciennes instances de conteneur dans le cluster

  1. Pour mettre à jour la pile CloudFormation, complétez les étapes 1 à 4 de la section précédente.
  2. Pour AsgMaxSize, saisissez une valeur de paramètre qui correspond au double de la taille actuelle.
    Remarque : par exemple, si la valeur actuelle est 2, définissez la nouvelle valeur sur 4. Cela vous aide à éviter les temps d'arrêt lorsque vous modifiez le type d'instance.
  3. Ouvrez la console Amazon ECS.
  4. Dans le panneau de navigation, sélectionnez Clusters, puis votre cluster.
  5. Sélectionnez l'onglet ECS Instances (Instances ECS), puis les ID d'instance de conteneur pour les anciennes instances de conteneur que vous souhaitez remplacer.
    Remarque : si DeploymentConfiguration autorise le placement de tâches de remplacement sur les instances de conteneur, Amazon ECS place automatiquement les tâches de remplacement.
  6. Sélectionnez le menu Actions, puis Drain instances (Drainer les instances) pour drainer les instances.
  7. Sous l'onglet ECS Instances (Instances ECS), vérifiez que le paramètre Running tasks count (Nombre de tâches en cours d'exécution) indique 0 pour vos anciennes instances de conteneur.
  8. Dans le volet de navigation, sélectionnez Clusters, puis votre cluster.
  9. Sélectionnez l'onglet ECS Instances (Instances ECS), les ID d'instance de conteneur de vos anciennes instances de conteneur, puis Deregister (Annuler l'enregistrement).
    Remarque : l'annulation de l'enregistrement d'une instance a pour effet de la supprimer d'Amazon ECS.
  10. Dans votre modèle CloudFormation, définissez AsgMaxSize sur la valeur d'origine pour résilier les anciennes instances de conteneur.
    Important : cette étape suppose que votre groupe AutoScaling dispose de la Default Termination Policy (Stratégie de mise hors service par défaut).

Mettre à jour les instances de conteneur lancées manuellement dans un cluster ECS

  1. Copiez la configuration de lancement de votre groupe AutoScaling, puis nommez votre nouvelle configuration de lancement.
  2. Modifiez votre type d'instance.
  3. Dans la console Amazon EC2, dans la section Auto Scaling (AutoScaling) du volet de navigation, sélectionnez Auto Scaling Groups (Groupes AutoScaling). Ensuite, sélectionnez le groupe AutoScaling pour votre instance de conteneur.
  4. Sélectionnez Actions, puis Edit (Modifier).
  5. Dans la fenêtre contextuelle, pour Launch Configuration (Configuration de lancement), sélectionnez la configuration de lancement que vous avez créée à l'étape 1 de cette section.
  6. Pour Desired Capacity (Capacité souhaitée), saisissez une valeur qui correspond au double de la valeur actuelle, puis mettez à jour la valeur Max selon vos besoins.
    Remarque :la capacité souhaitée doit être comprise entre la taille minimale et la taille maximale du groupe (incluses).
  7. Dans le volet de navigation de la console Amazon ECS, sélectionnez Clusters, puis votre cluster.
  8. Sélectionnez l'onglet ECS Instances (Instances ECS), puis les ID d'instance de conteneur pour les anciennes instances de conteneur que vous souhaitez remplacer.
  9. Sélectionnez le menu Actions, puis Drain instances (Drainer les instances) pour drainer les instances.
  10. Sous l'onglet ECS Instances (Instances ECS), vérifiez que le paramètre Running tasks count (Nombre de tâches en cours d'exécution) indique 0 pour vos anciennes instances de conteneur.
  11. Sélectionnez l'onglet ECS Instances (Instances ECS), les ID d'instance de conteneur de vos anciennes instances de conteneur, puis Deregister (Annuler l'enregistrement).
    Remarque : l'annulation de l'enregistrement d'une instance a pour effet de la supprimer d'Amazon ECS.
  12. Dans la console Amazon EC2, dans la section Auto Scaling (AutoScaling) du volet de navigation, sélectionnez Auto Scaling Groups (Groupes AutoScaling).
  13. Sélectionnez Actions, puis Edit (Modifier).
  14. Dans la configuration de votre groupe AutoScaling, définissez Desired Capacity (Capacité souhaitée) et Max sur leurs valeurs d'origine, puis enregistrez vos modifications.
    Remarque : cette opération résilie les anciennes instances de conteneur du cluster ECS.

Mettre à jour des instances de conteneur dans un cluster associé à un fournisseur de capacité

Remarque : Cette section suppose que vous avez des fournisseurs de capacité associés à votre cluster et des services associés à la stratégie des fournisseurs de capacité.

Si le cluster a été créé à l'aide de CloudFormation, procédez comme suit :

  1. Suivez les étapes 1 à 6 de la section précédente :
    Mettre à jour la valeur du paramètre EcsInstanceType dans la pile CloudFormation
  2. Dans le volet de navigation de la console Amazon ECS, sélectionnez Clusters, puis votre cluster.
  3. Sélectionnez l'onglet ECS Instances (Instances ECS), puis les ID d'instance de conteneur pour les anciennes instances de conteneur que vous souhaitez remplacer.
  4. Sélectionnez le menu Actions, puis Drain instances (Drainer les instances) pour drainer les instances.
    Remarque : Lorsque vous vidangez les instances, le fournisseur de capacité lance de nouvelles instances de conteneur en fonction de la DeploymentConfiguration des services.
  5. Sous l'onglet ECS Instances (Instances ECS), vérifiez que le paramètre Running tasks count (Nombre de tâches en cours d'exécution) indique 0 pour vos anciennes instances de conteneur.

Si le cluster a été créé manuellement, procédez comme suit :

  1. Suivez les étapes 1 à 5 de la section précédente :
    Mettre à jour les instances de conteneur lancées manuellement dans un cluster ECS
  2. Dans le volet de navigation de la console Amazon ECS, sélectionnez Clusters, puis votre cluster.
  3. Sélectionnez l'onglet ECS Instances (Instances ECS), puis les ID d'instance de conteneur pour les anciennes instances de conteneur que vous souhaitez remplacer.
  4. Sélectionnez le menu Actions, puis Drain instances (Drainer les instances) pour drainer les instances.
    Remarque : Lorsque vous vidangez les instances, le fournisseur de capacité lance de nouvelles instances de conteneur en fonction de la DeploymentConfiguration des services.
  5. Sous l'onglet ECS Instances (Instances ECS), vérifiez que le paramètre Running tasks count (Nombre de tâches en cours d'exécution) indique 0 pour vos anciennes instances de conteneur.

Remarque : Le fournisseur de capacité met automatiquement fin aux instances épuisées après une période définie.


AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an