Substituí as instâncias de contêiner por volumes criptografados no meu Amazon Elastic Container Service (Amazon ECS). Agora minha tarefa tem alta utilização da CPU.
Resolução
Observação: Se você tiver uma alta utilização da CPU no AWS Fargate, consulte Como soluciono problemas de alta utilização da CPU em uma tarefa do Amazon ECS no Fargate?
Veja os logs de eventos de serviço do Amazon ECS
Visualize os logs e métricas de eventos do serviço do Amazon ECS para ver as mensagens relacionadas à CPU.
Veja a utilização da CPU da instância de contêiner
Conclua as etapas a seguir:
- Abra o console do Amazon ECS.
- No painel de navegação, clique em Clusters e selecione seu cluster.
- Selecione a guia Infraestrutura.
- Insira o ID da instância do Amazon Elastic Compute Cloud (Amazon EC2) na barra de pesquisa e selecione sua instância.
Observação: Essa ação abre o console do Amazon EC2.
- Selecione a guia Monitoramento e, em seguida, verifique a placa utilização da CPU (%) para ver as métricas de uso da CPU da instância de contêiner.
Veja a utilização da CPU do serviço Amazon ECS
Use o console do Amazon ECS para verificar as métricas de serviço e a média de CPU e CPU máxima do Amazon ECS.
Observação: Para visualizar as métricas de CPU para tarefas do Amazon ECS, você deve ativar o Container Insights do seu cluster existente do Amazon ECS. Para obter mais informações sobre as métricas disponíveis, consulte as métricas do Amazon ECS Container Insights.
Verifique as métricas do seu balanceador de carga
Verifique as métricas de solicitação do seu balanceador de carga para determinar se a alta utilização da CPU ocorre quando há um pico no tráfego de entrada do usuário. Para um Network Load Balancer, selecione o namespace NetworkELB em Métricas e, em seguida, selecione Por LB para visualizar as métricas ActiveFlowCount e NewFlowCount. Se você usa um Application Load Balancer, verifique a métrica ActiveConnectionCount.
Verifique se há a sobrecarga de criptografia
Se você ativar a criptografia para volumes do Amazon Elastic Block Store (Amazon EBS), o processo de criptografia e descriptografia poderá causar alta utilização da CPU.
Para verificar se a alta utilização da CPU ocorre devido à sobrecarga de criptografia, compare as métricas da CPU e da aplicação antes e depois da alteração na criptografia do volume do EBS.
Certifique-se de que suas tarefas do Amazon ECS tenham a alocação correta de recursos
Verifique os logs da sua aplicação para ver se suas tarefas estão executando operações com uso intensivo de CPU. Para enviar seus logs de aplicação para o CloudWatch, consulte Exemplo de definição de tarefa do Amazon ECS: rotear logs para o CloudWatch.
Certifique-se de ter alocado os recursos corretos de CPU e memória para suas tarefas do Amazon ECS. Se a utilização da CPU for consistentemente alta, escale horizontalmente as tarefas para o serviço do Amazon ECS.
Se a escalabilidade horizontal não resolver o problema, aumente as unidades de CPU alocadas na definição da tarefa para escalar verticalmente as tarefas do serviço do Amazon ECS.
Otimize o código da sua aplicação
Para analisar e depurar aplicações distribuídas, use ferramentas como o AWS X-Ray. Rastreie o caminho da solicitação à medida que ela percorre os serviços, funções e recursos em sua aplicação. Para obter mais informações, consulte Instrumentando seu aplicativo para AWS X-Ray.