Implantar o AWS Distro for OpenTelemetry para coletar métricas no nível de instância do EC2 em clusters do Amazon ECS
Realize as etapas desta seção para usar o AWS Distro for OpenTelemetry para coletar métricas no nível de instância do EC2 em clusters do Amazon ECS. Para obter mais informações sobre o AWS Distro for OpenTelemetry, consulte AWS Distro for OpenTelemetry
Estas etapas presumem que você já tenha um cluster executando o Amazon ECS. Esse cluster deve ser implantado com o tipo de inicialização EC2. Para obter mais informações sobre como usar o AWS Distro for Open Telemetry com o Amazon ECS e configurar um cluster do Amazon ECS para essa finalidade, consulte Configurar o AWS Distro for Open Telemetry Collector no Amazon Elastic Container Service para métricas no nível da instância do EC2 no ECS
Configuração rápida usando o AWS CloudFormation
Baixe o arquivo de modelo do AWS CloudFormation para instalar o AWS Distro for OpenTelemetry Colector para o Amazon ECS no EC2. Execute o comando curl a seguir.
curl -O https://raw.githubusercontent.com/aws-observability/aws-otel-collector/main/deployment-template/ecs/aws-otel-ec2-instance-metrics-daemon-deployment-cfn.yaml
Depois de baixar o arquivo de modelo, abra-o e substitua PATH_TO_CloudFormation_TEMPLATE
pelo caminho onde você salvou o arquivo de modelo. Em seguida, exporte os seguintes parâmetros e execute o comando AWS CloudFormation, conforme mostrado no comando a seguir.
-
Cluster_Name: o nome do cluster do Amazon ECS
-
AWS_Region: a região para onde os dados serão enviados
-
PATH_TO_CloudFormation_TEMPLATE: o caminho onde você salvou o arquivo de modelo do AWS CloudFormation.
-
command: para habilitar o AWS Distro for OpenTelemetry Collector para coletar as métricas no nível de instância do Amazon ECS no Amazon EC2, é necessário especificar
--config=/etc/ecs/otel-instance-metrics-config.yaml
para este parâmetro.
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}
Depois de executar este comando, use o console do Amazon ECS para ver se a tarefa está em execução.
Solucionar problemas da configuração rápida
Para verificar o status da pilha do AWS CloudFormation, insira o comando a seguir.
ClusterName=
cluster-name
Region=cluster-region
aws cloudformation describe-stack --stack-name AOCECS-$ClusterName-$Region --region $Region
Se o valor de StackStatus
for diferente de CREATE_COMPLETE
ou de CREATE_IN_PROGRESS
, verifique os eventos da pilha para localizar o erro. Insira o comando da a seguir.
ClusterName=
cluster-name
Region=cluster-region
aws cloudformation describe-stack-events --stack-name AOCECS-$ClusterName-$Region --region $Region
Para conferir o status do serviço daemon AOCECS
, insira o comando a seguir. Na saída, é necessário verificar se runningCount
é igual a desiredCount
na seção de implantação. Se não for igual, confira a seção de falhas na saída.
ClusterName=
cluster-name
Region=cluster-region
aws ecs describe-services --services AOCECS-daemon-service --cluster $ClusterName --region $Region
Também é possível usar o console do CloudWatch Logs para conferir o log do atendente. Procure o grupo de logs /aws/ecs/containerinsights/{ClusterName}/performance.
Configuração manual e personalizada
Siga as etapas desta seção para implantar manualmente o AWS Distro for OpenTelemetry a fim de coletar métricas no nível de instância dos clusters do Amazon ECS hospedados em instâncias do Amazon EC2.
Etapa 1: Funções e políticas do IAM necessárias
São necessárias duas funções do IAM. É necessário criá-las, caso ainda não existam. Para obter mais informações sobre essas funções, consulte Criar política do IAM
Etapa 2: Criar uma definição de tarefa
Crie uma definição de tarefa e use-a para iniciar o atendente do AWS Distro for OpenTelemetry como um serviço daemon.
Para usar o modelo de definição de tarefa para criar a definição de tarefa, siga as instruções em Criar definição de tarefa do ECS EC2 para instância do EC2 com AWS OTel Collector
Para usar o console do Amazon ECS para criar a definição de tarefa, siga as instruções em Instalar AWS OTel Collector criando definição de rarefas pelo Console AWS para métricas de instância do EC2 no Amazon ECS
Etapa 3: Iniciar o serviço daemon
Para iniciar o AWS Distro para OpenTeemetry como um serviço daemon, siga as instruções em Executar tarefa no Amazon Elastic Container Service (Amazon ECS) usando o serviço daemon
(Opcional) Configuração avançada
Se preferir, você poderá usar o SSM para especificar outras opções de configuração para o AWS Distro for OpenTelemetry nos clusters do Amazon ECS hospedados nas instâncias do Amazon EC2. Para obter mais informações sobre como criar um arquivo de configuração, consulte Configuração personalizada do OpenTelemetry