2017-10-12 1 views
0

Nous pouvons ajouter des balises aux instances EC2 pour nous aider à mieux suivre les utilisations de facturation et gérer les instances.Meilleures pratiques pour étiqueter une tâche ECS?

Existe-t-il un moyen de réaliser le déploiement de conteneurs dans ECS? Je voudrais que le conteneur en cours d'exécution ait la capacité de savoir quelle étiquette il a actuellement attaché.

Répondre

1

Cela dépend vraiment de ce que vous essayez de visualiser après coup. Je vais vous faire part de quelques réflexions improvisées ci-dessous, et peut-être que vous pouvez extrapoler sur celles-ci pour construire quelque chose qui répond à vos besoins.


Comme vous le savez probablement, les tâches ECS eux-mêmes ne prennent pas en charge la notion de balises, mais il y a des solutions de contournement que vous pourriez envisager. Par exemple, en fonction de la manière dont vous consignez le comportement de votre application (par exemple, les journaux de lots dans CloudWatch Logs), vous pouvez créer un nom de flux de journal, pour chaque tâche ECS, contenant un tableau délimité de balises.

Dans le cadre d'un POC que je construisais récemment, j'ai utilisé le nom d'ordinateur généré automatiquement pour créer des noms de flux de CloudWatch. Vous pouvez facilement ajouter ou ajouter en préfixe les données de tag que vous intégrez dans vos images de conteneur, puis interroger les informations de tag à partir des flux de journaux CloudWatch plus tard.


Une autre option serait d'ouvrir une session simplement une mesure à CloudWatch métriques, en fonction du nombre de tâches en cours d'exécution ECS hors de chaque définition de tâche unique ECR.

Vous pouvez créer une fonction Lambda très simple qui interroge vos tâches ECS, sur chaque cluster, et écrit le nombre de tâches, pour chaque définition de tâche unique, dans CloudWatch Metrics par minute. Les règles d'événements CloudWatch vous permettent de déclencher des fonctions Lambda sur une planification cron, ce qui vous permet de personnaliser la période à votre convenance.

Vous pouvez utiliser ces données de mesure pour aider à prendre des décisions de mise à l'échelle sur le cluster ECS, les services et tâches qui y sont exécutés et les instances de calcul EC2 sous-jacentes prenant en charge ECS Cluster.

Espérons que cela aide.

+0

Merci pour l'info @Trevor c'est utile. J'essaie d'autoriser les utilisateurs à étiqueter des tâches ECS d'une manière que le conteneur en cours d'exécution peut interroger par programmation ses propres "balises". Je suppose que passer dans les variables d'environnement est un moyen d'y parvenir, mais je trouve que l'approche des variables d'environnement n'est pas aussi conviviale que je le souhaiterais. :) Merci pour l'information Trevor! J'apprécie vraiment cela. – cyc115