Estou solucionando problemas em uma instância do Amazon Elastic Kubernetes Service (Amazon EKS). Preciso coletar todos os logs relevantes do Amazon EKS associados a essa instância.
Breve descrição
Use o runbook AWSSupport-CollecteksInstanceLogs para coletar seus logs do Amazon EKS.
Importante: para que a automação funcione, você deve instalar e executar o AWS Systems Manager Agent (SSM Agent) na sua instância do Amazon EKS.
Resolução
Observação: a resolução a seguir funciona somente para nós de processamento no Amazon EKS para Linux.
Para gerar um pacote de logs para instâncias do Amazon EKS, conclua as seguintes etapas:
- Abra o console do AWS Systems Manager.
- No painel de navegação, escolha Automação.
- Selecione Executar automação.
- Na guia De propriedade da Amazon, na caixa de pesquisa Documento de automação, insira EKSInstanceLogs. Em seguida, selecione AWS Support-CollecteksInstanceLogs.
- Escolha Avançar.
- Na página Entradas de automação, para EKSInstanceId, insira seu ID de instância Amazon EKS de destino.
- Defina os parâmetros LogDestination e AutomationAssumeRole.
Observação: o pacote de logs é carregado no bucket do Amazon Simple Storage Service (Amazon S3) especificado no campo LogDestination. Se você não tiver especificado um bucket, poderá recuperar o pacote de logs da instância. O pacote de logs é salvo localmente no caminho /var/log/.
- Selecione Executar automação.
Ao executar o AWSSupport-CollecteksInstanceLogs, use as seguintes melhores práticas e requisitos:
- É uma prática recomendada associar a política AmazonSSMManagedInstanceCore gerenciada pela Amazon ao perfil do AWS Identity and Access Management (IAM) relevante. O perfil do IAM é para a instância do Amazon Elastic Compute Cloud (Amazon EC2) direcionada para automação.
- Se você fornecer o nome do bucket do S3 no campo LogDestination antes da execução da automação, o perfil da instância poderá gravar no bucket.
- Para executar a automação e enviar o comando à instância, você deve ter pelo menos as permissões ssm:ExecuteAutomation e ssm:SendCommand.
- Para ler a saída da automação, você deve ter a permissão ssm:GetAutomationExecution.
- Para o Amazon Linux 2, os endpoints do IMDS oferecem suporte ao IMDSv2 e ao IMDSv1 por padrão. Se você optar por configurar o IMDSv2, a outra versão não funcionará mais. Como o AWSSupport-CollecteksInstanceLogs usa IMDSv1, você pode notar uma etapa Pendente quando os logs coletados forem carregados.
Informações relacionadas
Configurar permissões de instância obrigatórias para o Systems Manager
EKS Logs Collector no site do GitHub