Déploiement de la AWS distribution pour collecter des OpenTelemetry métriques au EC2 niveau de l'instance sur les clusters Amazon ECS - Amazon CloudWatch

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éploiement de la AWS distribution pour collecter des OpenTelemetry métriques au EC2 niveau de l'instance sur les clusters Amazon ECS

Suivez les étapes décrites dans cette section pour utiliser AWS Distro pour collecter des métriques OpenTelemetry au EC2 niveau de l'instance sur un cluster Amazon. ECS Pour plus d'informations sur la AWS distribution pour OpenTelemetry, consultez la section AWS Distribution pour. OpenTelemetry

Ces étapes supposent que vous possédez déjà un cluster exécutant AmazonECS. Ce cluster doit être déployé avec le type de EC2 lancement. Pour plus d'informations sur l'utilisation de AWS Distro pour la télémétrie ouverte avec Amazon ECS et sur la configuration d'un ECS cluster Amazon à cette fin, consultez Configuration de AWS Distro pour Collector OpenTelemetry dans Amazon Elastic Container Service pour ECS EC2 les métriques au niveau de l'instance.

Configuration rapide à l'aide de AWS CloudFormation

Téléchargez le fichier AWS CloudFormation modèle pour installer AWS Distro for OpenTelemetry Collector pour Amazon ECS surEC2. Exécutez la commande curl suivante.

curl -O https://raw.githubusercontent.com/aws-observability/aws-otel-collector/main/deployment-template/ecs/aws-otel-ec2-instance-metrics-daemon-deployment-cfn.yaml

Après avoir téléchargé le fichier modèle, ouvrez-le et remplacez-le PATH_TO_CloudFormation_TEMPLATE avec le chemin où vous avez enregistré le fichier modèle. Exportez ensuite les paramètres suivants et exécutez la AWS CloudFormation commande, comme indiqué dans la commande suivante.

  • Cluster_Name — Le nom du cluster Amazon ECS

  • AWS_RRégion — La région où les données seront envoyées

  • PATH_TO_ CloudFormation _ TEMPLATE — Le chemin où vous avez enregistré le AWS CloudFormation fichier modèle.

  • commande — Pour permettre à AWS Distro for OpenTelemetry Collector de collecter les métriques au niveau de l'instance pour Amazon sur ECS AmazonEC2, vous devez spécifier --config=/etc/ecs/otel-instance-metrics-config.yaml ce paramètre.

ClusterName=Cluster_Name Region=AWS_Region command=--config=/etc/ecs/otel-instance-metrics-config.yaml aws cloudformation create-stack --stack-name AOCECS-${ClusterName}-${Region} \ --template-body file://PATH_TO_CloudFormation_TEMPLATE \ --parameters ParameterKey=ClusterName,ParameterValue=${ClusterName} \ ParameterKey=CreateIAMRoles,ParameterValue=True \ ParameterKey=command,ParameterValue=${command} \ --capabilities CAPABILITY_NAMED_IAM \ --region ${Region}

Après avoir exécuté cette commande, utilisez la ECS console Amazon pour vérifier si la tâche est en cours d'exécution.

Dépannage de la configuration rapide

Pour vérifier l'état de la AWS CloudFormation pile, entrez la commande suivante.

ClusterName=cluster-name Region=cluster-region aws cloudformation describe-stack --stack-name AOCECS-$ClusterName-$Region --region $Region

Si la valeur de StackStatus ne correspond pas à CREATE_COMPLETE ou CREATE_IN_PROGRESS, vérifiez les événements de la pile pour trouver l'erreur. Entrez la commande suivante.

ClusterName=cluster-name Region=cluster-region aws cloudformation describe-stack-events --stack-name AOCECS-$ClusterName-$Region --region $Region

Pour vérifier l'état du service de démon AOCECS, saisissez la commande suivante. Dans la sortie, vous devriez voir que runningCount est égal au desiredCount dans la section « deployment » (déploiement). Si ce n'est pas égal, vérifiez la section « failures » (échecs) dans la sortie.

ClusterName=cluster-name Region=cluster-region aws ecs describe-services --services AOCECS-daemon-service --cluster $ClusterName --region $Region

Vous pouvez également utiliser la console CloudWatch Logs pour consulter le journal de l'agent. Recherchez le groupe/aws/ecs/containerinsights/{ClusterName}/performancelog.

Configuration manuelle et personnalisée

Suivez les étapes décrites dans cette section pour déployer manuellement le AWS Distro afin de collecter des métriques OpenTelemetry au niveau de l'instance à partir de vos ECS clusters Amazon hébergés sur des instances Amazon. EC2

Étape 1 : Rôles et politiques nécessaires

Deux rôles IAM sont requis. Vous devez les créer s'ils n'existent pas déjà. Pour plus d'informations sur ces rôles, voir Créer une IAM politique et Créer un IAM rôle.

Étape 2 : Créer la définition de tâche

Créez une définition de tâche et utilisez-la pour lancer la AWS distribution en OpenTelemetry tant que service daemon.

Pour utiliser le modèle de définition de tâche afin de créer la définition de tâche, suivez les instructions de la section Créer une définition de ECS EC2 tâche, EC2 par exemple avec AWS OTel Collector.

Pour utiliser la ECS console Amazon afin de créer la définition de tâche, suivez les instructions de la section Install AWS OTel Collector en créant une définition de tâche via AWS la console pour les métriques d'ECSEC2instance Amazon.

Étape 3 : Lancer le service de démon

Pour lancer la AWS distribution en OpenTelemetry tant que service daemon, suivez les instructions de la section Exécutez votre tâche sur Amazon Elastic Container Service ECS (Amazon) à l'aide du service daemon.

(En option) Configuration avancée

Vous pouvez éventuellement l'utiliser SSM pour spécifier d'autres options de configuration pour la AWS distribution OpenTelemetry dans vos ECS clusters Amazon hébergés sur des EC2 instances Amazon. Pour plus d'informations sur la création d'un fichier de configuration, voir OpenTelemetry Configuration personnalisée. Pour plus d'informations sur les options que vous pouvez utiliser dans le fichier de configuration, consultez Récepteur Container Insights AWS.