As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Registro em log para Amazon EKS
O registro em log do Kubernetes pode ser dividido em log do plano de controle, log de nós e registro de aplicativos. OPlano de controle do Kubernetes
O Kubernetes também executa componentes do sistema, comokubelet
ekube-proxy
em cada nó do Kubernetes que executa seus pods. Esses componentes gravam logs em cada nó e você pode configurar CloudWatch e Container Insights para capturar esses logs para cada nó do Amazon EKS.
Os contêineres são agrupados comovagens/var/log/pods
diretório em um nó. Você pode configurar o CloudWatch e Container Insights para capturar esses logs para cada um dos pods do Amazon EKS.
Registro em log do plano de controle do Amazon EKS
Um cluster do Amazon EKS consiste em um plano de controle de locatário único de alta disponibilidade para o cluster do Kubernetes e os nós do Amazon EKS que executam seus contêineres. Os nós do plano de controle são executados em uma conta gerenciada porAWS. Os nós de plano de controle de cluster do Amazon EKS são integrados com CloudWatch e você pode ativar o registro em log para componentes específicos do plano de controle.
Os registros são fornecidos para cada instância do componente do plano de controle do Kubernetes.AWSgerencia a integridade de seus nós de plano de controle e fornece umSLA (contrato de nível de serviço) para o endpoint Kubernetes
Registro em log em nós e aplicativos do Amazon EKS
Recomendamos usar oCloudWatch Container Insightspara capturar registros e métricas para o Amazon EKS. O Container Insights implementa métricas em nível de cluster, nó e pod com o CloudWatch agente e Fluent Bit ou Fluentd para captura de log no CloudWatch. O Container Insights também fornece painéis automáticos com visualizações em camadas do seu capturado CloudWatch Métricas do . O Container Insights é implantado como CloudWatch DaemonSet e Fluent Bit DaemonSet que é executado em todos os nós do Amazon EKS. Os nós do Fargate não são suportados pelo Container Insights porque os nós são gerenciados porAWSe não oferece suporte a DaemonSets. O registro do Fargate para Amazon EKS é abordado separadamente neste guia.
A tabela a seguir mostra a CloudWatch grupos de log e logs capturados peloConfiguração padrão de captura de log Fluentd ou Fluent Bitpara o Amazon EKS.
/aws/containerinsights/Cluster_Name/application |
Todos os arquivos de log em/var/log/containers . Este diretório fornece links simbólicos para todos os logs de contêiner do Kubernetes na/var/log/pods Estrutura de diretório do. Isso captura os registros do contêiner do aplicativo gravando emstdout oustderr . Ele também inclui registros para contêineres do sistema Kubernetes, comoaws-vpc-cni-init ,kube-proxy , ecoreDNS . |
/aws/containerinsights/Cluster_Name/host |
Logs de/var/log/dmesg ,/var/log/secure , e/var/log/messages . |
/aws/containerinsights/Cluster_Name/dataplane |
Os logs no /var/log/journal para kubelet.service , kubeproxy.service e docker.service . |
Se você não quiser usar o Container Insights com Fluent Bit ou Fluentd para registro em log, você pode capturar logs de nós e contêineres com o CloudWatch Agente instalado nos nós do Amazon EKS. Os nós do Amazon EKS são instâncias do EC2, o que significa que você deve incluí-las em sua abordagem de log padrão no nível do sistema para o Amazon EC2. Se você instalar o CloudWatch agente usando o Distribuidor e o State Manager, então os nós do Amazon EKS também estão incluídos no CloudWatch instalação, configuração e atualização do agente.
A tabela a seguir mostra logs específicos do Kubernetes e que você deve capturar se não estiver usando o Container Insights com Fluent Bit ou Fluentd para registro em log.
/var/log/containers |
Este diretório fornece links simbólicos para todos os logs de contêiner do Kubernetes sob a/var/log/pods Estrutura de diretório do. Isso captura efetivamente os registros do contêiner do aplicativo gravando emstdout oustderr . Isso inclui registros para contêineres do sistema Kubernetes, comoaws-vpc-cni-init ,kube-proxy , ecoreDNS . Importante: Isso não é necessário se você estiver usando o Container Insights. |
var/log/aws-routed-eni/ipamd.log /var/log/aws-routed-eni/plugin.log |
Os logs do daemon L-IPAM podem ser encontrados aqui |
Você deve certificar-se de que os nós do Amazon EKS instalem e configurem o CloudWatch agente para enviar registros e métricas apropriadas no nível do sistema. No entanto, o AMI otimizado do Amazon EKS não inclui o agente do Systems Manager. Usar oModelos de execução, você pode automatizar a instalação do agente do Systems Manager e um padrão CloudWatch configuração que captura logs específicos importantes do Amazon EKS com um script de inicialização implementado por meio da seção de dados do usuário. Os nós do Amazon EKS são implantados usando um grupo Auto Scaling como umGrupo de nós gerenciadosou comoNós autogerenciados.
Com grupos de nós gerenciados, você fornece umModelo de execuçãoque inclui a seção de dados do usuário para automatizar a instalação do agente do Systems Manager e CloudWatch Configuração do . Você pode personalizar e usar oamazon_eks_managed_node_group_launch_config.yamlCloudWatchAgentServerPolicy
eAmazonSSMManagedInstanceCore
AWSpolíticas gerenciadas.
Com nós autogerenciados, você provisiona e gerencia diretamente o ciclo de vida e a estratégia de atualização para seus nós do Amazon EKS. Nós autogerenciados permitem executar nós do Windows em seu cluster do Amazon EKS eBottlerocket
Logging para Amazon EKS no Fargate
Com o Amazon EKS no Fargate, você pode implantar pods sem alocar ou gerenciar seus nós do Kubernetes. Isso elimina a necessidade de capturar logs no nível do sistema para os nós do Kubernetes. Para capturar os logs dos pods do Fargate, você pode usar o Fluent Bit para encaminhar os logs diretamente para o CloudWatch. Isso permite que você encaminhe registros automaticamente para CloudWatch sem configuração adicional ou um contêiner sidecar para seus pods do Amazon EKS no Fargate. Para obter mais informações sobre isso, consulteRegistro em log do Fargatena documentação do Amazon EKS eBit fluente para Amazon EKSSTDOUT
eSTDERR
Streams de entrada/saída (E/S) do contêiner e os envia para CloudWatch por meio do Fluent Bit, com base na configuração Fluent Bit estabelecida para o cluster do Amazon EKS no Fargate.