Implementazione di AWS Distro for OpenTelemetry per raccogliere parametri a livello di istanza EC2 sui cluster Amazon ECS
Procedi come descritto in questa sezione per utilizzare AWS Distro for OpenTelemetry per raccogliere parametri a livello di istanza EC2 su un cluster Amazon ECS. Per ulteriori informazioni su AWS Distro for OpenTelemetry, consulta AWS Distro for OpenTelemetry
In queste fasi si presuppone che tu disponga già di un cluster su Amazon ECS. Questo cluster deve essere implementato con il tipo di avvio EC2. Per ulteriori informazioni sull'utilizzo di AWS Distro for Open Telemetry con Amazon ECS e sull'impostazione di un cluster Amazon ECS a questo scopo, consulta Configurazione di AWS Distro for OpenTelemetry Collector in Amazon Elastic Container Service per parametri a livello di istanza EC2 ECS
Configurazione rapida utilizzando CloudFormation
Scarica il file modello CloudFormation per installare AWS Distro for OpenTelemetry Collector per Amazon ECS su EC2. Esegui il seguente comando curl.
curl -O https://raw.githubusercontent.com/aws-observability/aws-otel-collector/main/deployment-template/ecs/aws-otel-ec2-instance-metrics-daemon-deployment-cfn.yaml
Dopo aver scaricato il file modello, aprirlo e sostituisci PATH_TO_CloudFormation_Template con il percorso in cui è stato salvato il file modello. Quindi esporta i seguenti parametri ed esegui il comando CloudFormation, come mostrato nel comando seguente.
-
Cluster_Name: il nome del cluster Amazon ECS
-
AWS_Region: la regione in cui verranno inviati i dati
-
PATH_TO_CloudFormation_TEMPLATE: il percorso in cui è stato salvato il file modello CloudFormation.
-
command: per abilitare AWS Distro for OpenTelemetry Collector per raccogliere i parametri a livello di istanza per Amazon ECS su Amazon EC2, devi specificare
--config=/etc/ecs/otel-instance-metrics-config.yamlper questo parametro.
ClusterName=Cluster_NameRegion=AWS_Regioncommand=--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}
Dopo aver eseguito questo comando, utilizza la console Amazon ECS per verificare se l'attività è in esecuzione.
Risoluzione dei problemi relativi alla configurazione rapida
Per verificare lo stato dello stack CloudFormation, immetti il seguente comando.
ClusterName=cluster-nameRegion=cluster-regionaws cloudformation describe-stack --stack-name AOCECS-$ClusterName-$Region --region $Region
Se il valore di StackStatus è diverso da CREATE_COMPLETE o CREATE_IN_PROGRESS, controlla gli eventi di stack per trovare l'errore. Inserire il seguente comando.
ClusterName=cluster-nameRegion=cluster-regionaws cloudformation describe-stack-events --stack-name AOCECS-$ClusterName-$Region --region $Region
Per verificare lo stato del servizio daemon AOCECS, immetti il seguente comando. Nell'output, deve essere mostrato che runningCount è uguale a desiredCount nella sezione di implementazione. In caso contrario, controlla la sezione degli errori nell'output.
ClusterName=cluster-nameRegion=cluster-regionaws ecs describe-services --services AOCECS-daemon-service --cluster $ClusterName --region $Region
Puoi inoltre utilizzare la console CloudWatch Logs per controllare il log dell'agente. Cerca il gruppo di log /aws/ecs/containerinsights/{ClusterName}/performance.
Configurazione manuale e personalizzata
Segui la procedura descritta in questa sezione per implementare manualmente AWS Distro for OpenTelemetry per raccogliere parametri a livello di istanza dai cluster Amazon ECS ospitati su istanze Amazon EC2.
Fase 1: ruoli e policy necessari
Sono richiesti due ruoli IAM. Se non esistono già è necessario crearli. Per ulteriori informazioni su questi ruoli, consulta Creazione della policy IAM
Fase 2: creazione di una definizione dell'attività
Crea una definizione di attività e utilizzala per avviare AWS Distro for OpenTelemetry come un servizio daemon.
Per utilizzare il modello di definizione dell'attività per creare la definizione dell'attività, segui le istruzioni riportate in Creazione della definizione dell'attività EC2 ECS per l'istanza EC2 con AWS OTel Collector
Per utilizzare la console Amazon ECS per creare la definizione dell'attività, segui le istruzioni in Installazione di AWSOTel Collector creando la definizione di attività tramite la console AWS per i parametri dell'istanza EC2 di Amazon ECS
Fase 3: avvio del servizio daemon
Per avviare AWS Distro for OpenTelemetry come servizio daemon, segui le istruzioni in Esecuzione dell'attività su Amazon Elastic Container Service (Amazon ECS) tramite il servizio daemon
(Facoltativo) Configurazione avanzata
Facoltativamente, puoi utilizzare SSM per specificare altre opzioni di configurazione per AWS Distro for OpenTelemetry nei cluster Amazon ECS ospitati su istanze Amazon EC2. Per ulteriori informazioni sulla creazione di un file di configurazione, consulta Configurazione personalizzata di OpenTelemetry