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.
Oui, c'est possible.
Les types d'instance de votre cluster sont déterminés par le paramètre 'Type d'instance' de votre configuration de lancement. Pour mettre à jour le type d'instance sans avoir à recréer le cluster:
Vous pouvez également ajouter des types d'instance multiples à un cluster nique en créant plusieurs groupes Auto Scaling liés à différentes configurations de lancement. Notez toutefois que vous ne pouvez pas copier facilement les groupes Auto Scaling dans la console.
Oui, vous pouvez y parvenir dans CloudFormation.
Update Stack
current template
, Next
Next
, Next
, Update
2*n
instancesn
nouvelles instances du nouveau type en cours de créationn
Voici comment procéder sans temps d'arrêt:
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".
Voici les étapes exactes que j'ai prises pour mettre à jour le type d'instance sur mon cluster:
Allez au service de cluster, mettez à jour Nombre de tâches à 0
Allez dans EC2 -> Configurations de lancement -> Liste déroulante Actions -> Copier la configuration de lancement et définissez le nouveau type d'instance.
Allez à EC2 -> Groupes Auto Scaling -> Éditer -> définir Configuration de lancement à la configuration de lancement nouvellement créée
Allez dans EC2 -> Groupes Auto Scaling -> Instances -> Detach instance
Allez dans EC2 -> Configurations de lancement -> Supprimer l'ancienne configuration de lancement
Accédez au service de cluster, mettez à jour Nombre de tâches au nombre souhaité.
Maintenant, lorsque les tâches démarrent, elles s'exécutent sur le type d'instance EC2 mis à jour.
Il existe certainement plusieurs façons de modifier le type d'instance, comme suggéré pour l'utilisation des configurations de lancement.
Attention, il est difficile d'utiliser une configuration à plusieurs lancements pour se connecter à un cluster ECS doté de stratégies de mise à l'échelle des instances de conteneur.
Par exemple, si l'un d'entre eux exécute un cluster avec le type d'instances t2.medium à l'aide d'une configuration de lancement et qu'une stratégie de redimensionnement automatique est associée au cluster ECS, il ne peut signaler que le groupe de redimensionnement automatique et pas plus de 1.
Oui, vous pouvez modifier le type d'instance dans le cluster ECS. Je pense que vous avez créé le cluster ECS manuellement à partir de l'interface graphique AWS. En coulisse, il crée un modèle de formation pour le cloud aws selon vos entrées à partir de la console AWS (ECS) telle que VPC, le type d'instance et la taille, etc. Veuillez suivre les étapes ci-dessous pour la même chose.
Comment modifier le type d'instance de conteneur dans Amazon ECS?
Pour changer le type d'instance de conteneur, suivez la procédure décrite dans l'une des sections suivantes:
Résolution
Important: Les étapes suivantes s'appliquent uniquement aux clusters ECS créés avec des ressources créant en interne une pile AWS CloudFormation sous-jacente . La pile a un nom au format suivant: EC2ContainerService-yourClusterName . Ces étapes ne s'appliquent pas aux clusters ECS vides ni aux approches personnalisées pour le provisionnement d'instances de conteneur.
Mettez à jour la valeur du paramètre EcsInstanceType dans la pile AWS CloudFormation:
1. Ouvrez la console AWS CloudFormation.
Remarque: le nom du cluster est ajouté à la fin du nom de votre pile (par exemple, EC2ContainerService-yourClusterName).
Choisissez Actions, puis choisissez Mettre à jour la pile.
Choisissez Utiliser le modèle actuel, puis choisissez Suivant.
Pour EcsInstanceType, définissez une valeur appropriée pour le type d'instance dans votre instance de conteneur, puis choisissez Suivant.
Ignorez la section Options, choisissez Suivant, puis choisissez Mettre à jour.
Remplacez les anciennes instances de conteneur du cluster:
Pour mettre à jour la pile AWS CloudFormation, suivez les étapes 1 à 4 de la section précédente.
Pour AsgMaxSize, entrez une valeur de paramètre égale à deux fois la taille actuelle. Remarque: Par exemple, si la valeur actuelle est 2, définissez la nouvelle valeur sur 4. Cela permet d'éviter les temps d'arrêt lorsque vous modifiez le type d'instance.