49 votes

Comment changer le type d'instance dans un cluster AWS ECS?

J'ai un cluster dans AWS EC2 Container Service. Lorsque je l’ai configuré, j’ai utilisé des instances t2.micro car celles-ci étaient suffisantes pour le développement. Maintenant, j'aimerais utiliser des instances plus puissantes, comme m4.large.

J'aimerais savoir s'il est possible de changer les types d'instances uniquement, de sorte que je n'ai pas besoin de recréer l'intégralité du cluster. Je ne pouvais pas trouver comment faire cela.

65voto

revau.lt Points 1540

Oui, vous pouvez atteindre cet objectif dans CloudFormation.

  • Cliquez sur la Pile correspondant à votre ECS-Cluster.
  • Cliquez sur Update Stack
  • Utilisation de la radiocurrent template, Next
  • changement EcsInstanceType
  • Next, Next, Update
  • Haut de gamme de votre cluster d' 2*n cas
  • Attendez que l' n de nouvelles instances de ce nouveau type d'être créé
  • De réduire la résolution de votre cluster d' n
  • Ou vous pouvez simplement les égoutter et mettre fin à la cas 1 par 1

48voto

Luke Peterson Points 1639

Oui, c'est possible.

Les types d'instance de votre cluster sont déterminées par le Type d'Instance paramètre au sein de votre Configuration de Lancement. Pour mettre à jour le type d'instance, sans avoir à recréer le cluster:

  1. Faire une copie du cluster Configuration de Lancement et de mise à jour de l 'Instance de Type".
  2. Ajuster le cluster Groupe Auto Scaling pour pointer vers votre nouvelle Configuration de Lancement.
  3. Attendre de vos nouvelles instances à vous inscrire dans votre cluster et vos services à démarrer.

Vous pouvez également ajouter plusieurs types d'instances à un seul cluster par la création de plusieurs Groupes de dimensionnement Automatique lié à différentes Configurations de Lancement. Notez toutefois que vous ne pouvez pas copier des Groupes de dimensionnement Automatique facilement à l'intérieur de la console.

12voto

Greg Sansom Points 9059

C'est la façon de le faire sans aucun temps d'arrêt:

  1. Créer une copie de la Configuration de Lancement utilisé par votre mise à l'Échelle Automatique Groupe, y compris toutes les modifications que vous souhaitez apporter.
  2. Modifier le Groupe Auto Scaling pour:
    • Utiliser la nouvelle Configuration de Lancement
    • Capacité Souhaitée = Capacité Souhaitée * 2
    • Min = Capacité Souhaitée
  3. Attendez que toutes les nouvelles instances de devenir "ACTIF" et l'ECS onglet Instances de l'ECS Cluster
  4. Sélectionnez les anciennes instances et cliquez sur Actions -> Vidange Instances
  5. Attendez jusqu'à ce que toutes les anciennes instances sont en cours d'exécution 0 tâches
  6. Modifier le Groupe Auto Scaling et changement Min et Souhaité revenir à leurs valeurs d'origine

6voto

Miguel Mota Points 14005

Voici les étapes exactes que j'ai pris pour mettre à jour le type d'instance sur mon cluster:

  • Aller pour le service de cluster, mise à jour Nombre de tâches à 0

  • Aller à l'EC2 -> Configurations de Lancement -> Actions déroulant -> Copie de la configuration de lancement et de définir le nouveau type d'instance

  • Aller à l'EC2 -> mise à l'Échelle Automatique des Groupes -> Modifier -> définir la Configuration de Lancement nouvellement créé de la configuration de lancement

  • Aller à l'EC2 -> mise à l'Échelle Automatique des Groupes -> Cas -> Detach exemple

  • Aller à l'EC2 -> Configurations de Lancement -> Supprimer les anciens de la configuration de lancement

  • Aller pour le service de cluster, mise à jour Nombre de tâches de votre choix comte.

Maintenant, quand les tâches de commencer, il va courir sur la mise à jour instance EC2 type.

4voto

Disco Mike Points 51

Cela peut être réalisé en modifiant EcsInstanceType dans la pile CloudFormation pour l'instance ECS. Toute modification manuelle du groupe de mise à l'échelle automatique sera écrasée par la prochaine opération "Echelle des instances ECS".

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X