Exemple d'application App Mesh pour 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.

Exemple d'application App Mesh pour les clusters Amazon ECS

Pour collecter des métriques à partir d'un exemple d'application Prometheus pour Amazon ECS, vous devez exécuter Container Insights dans le cluster. Pour plus d'informations sur l'installation de Container Insights, consultez Configuration de Container Insights sur Amazon ECS.

Tout d'abord, suivez cette démonstration pour déployer l'exemple d'application de couleur dans votre cluster Amazon ECS. Une fois que vous avez terminé, les métriques App Mesh Prometheus seront exposées sur le port 9901.

Procédez ensuite comme suit pour installer l' CloudWatch agent avec Prometheus monitoring sur le même cluster Amazon ECS où vous avez installé l'application couleur. Les étapes décrites dans cette section permettent d'installer l' CloudWatch agent en mode réseau en mode pont.

Les variables d'environnement ENVIRONMENT_NAME,AWS_PROFILE, et AWS_DEFAULT_REGION que vous définissez dans la démonstration seront également utilisées dans les étapes suivantes.

Pour installer l' CloudWatch agent avec la surveillance Prometheus à des fins de test
  1. Téléchargez le AWS CloudFormation modèle en saisissant la commande suivante.

    curl -O https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/latest/ecs-task-definition-templates/deployment-mode/replica-service/cwagent-prometheus/cloudformation-quickstart/cwagent-ecs-prometheus-metric-for-bridge-host.yaml
  2. Définissez le mode réseau en saisissant les commandes suivantes.

    export ECS_CLUSTER_NAME=${ENVIRONMENT_NAME} export ECS_NETWORK_MODE=bridge
  3. Créez la AWS CloudFormation pile en saisissant les commandes suivantes.

    aws cloudformation create-stack --stack-name CWAgent-Prometheus-ECS-${ECS_CLUSTER_NAME}-EC2-${ECS_NETWORK_MODE} \ --template-body file://cwagent-ecs-prometheus-metric-for-bridge-host.yaml \ --parameters ParameterKey=ECSClusterName,ParameterValue=${ECS_CLUSTER_NAME} \ ParameterKey=CreateIAMRoles,ParameterValue=True \ ParameterKey=ECSNetworkMode,ParameterValue=${ECS_NETWORK_MODE} \ ParameterKey=TaskRoleName,ParameterValue=CWAgent-Prometheus-TaskRole-${ECS_CLUSTER_NAME} \ ParameterKey=ExecutionRoleName,ParameterValue=CWAgent-Prometheus-ExecutionRole-${ECS_CLUSTER_NAME} \ --capabilities CAPABILITY_NAMED_IAM \ --region ${AWS_DEFAULT_REGION} \ --profile ${AWS_PROFILE}
  4. (Facultatif) Lorsque la AWS CloudFormation pile est créée, un CREATE_COMPLETE message s'affiche. Si vous souhaitez vérifier l'état avant d'afficher ce message, saisissez la commande suivante.

    aws cloudformation describe-stacks \ --stack-name CWAgent-Prometheus-ECS-${ECS_CLUSTER_NAME}-EC2-${ECS_NETWORK_MODE} \ --query 'Stacks[0].StackStatus' \ --region ${AWS_DEFAULT_REGION} \ --profile ${AWS_PROFILE}

Dépannage

Les étapes de la démonstration utilisent jq pour analyser le résultat de sortie de la AWS CLI. Pour plus d'informations sur l'installation de jq, consultez jq. Utilisez la commande suivante pour définir le format de sortie par défaut de votre AWS CLI sur JSON afin que jq puisse l'analyser correctement.

$ aws configure

Lorsque la réponse arrive à Default output format, saisissez json.

Désinstallez l' CloudWatch agent avec le système de surveillance Prometheus

Lorsque vous avez terminé le test, entrez la commande suivante pour désinstaller l' CloudWatchagent en supprimant la AWS CloudFormation pile.

aws cloudformation delete-stack \ --stack-name CWAgent-Prometheus-ECS-${ECS_CLUSTER_NAME}-EC2-${ECS_NETWORK_MODE} \ --region ${AWS_DEFAULT_REGION} \ --profile ${AWS_PROFILE}