Configuração de início rápido para o Container Insights no Amazon EKS e no Kubernetes - Amazon CloudWatch

Configuração de início rápido para o Container Insights no Amazon EKS e no Kubernetes

Importante

Se estiver instalando o Container Insights em um cluster do Amazon EKS, recomendamos que use o complemento de observabilidade do EKS do Amazon CloudWatch para a instalação em vez de usar as instruções desta seção. Além disso, para recuperar redes com computação acelerada, use o complemento Amazon CloudWatch Observability EKS. Para mais informações e instruções, consulte Instalar o complemento Amazon CloudWatch Observability do EKS.

Para concluir a configuração do Container Insights, siga as instruções de início rápido nesta seção. Se estiver instalando em um cluster do Amazon EKS e usar as instruções desta seção em ou após 6 de novembro de 2023, você instalará o Container Insights com observabilidade aprimorada para o Amazon EKS no cluster.

Importante

Antes de executar as etapas desta seção, você deve ter verificado os pré-requisitos, inclusive as permissões do IAM. Para ter mais informações, consulte Verifique os pré-requisitos do .

Como alternativa, você pode seguir as instruções nas duas seções a seguir, Configurar o atendente do CloudWatch para coletar métricas do cluster e Enviar logs ao CloudWatch Logs. Essas seções fornecem mais detalhes sobre como o atendente do CloudWatch funciona com o Amazon EKS e o Kubernetes, mas necessitam que você execute mais etapas de instalação.

Com a versão original do Container Insights, as métricas coletadas e os registros ingeridos são cobrados como métricas personalizadas. Com o Container Insights com observabilidade aprimorada para o Amazon EKS, as métricas e os logs do Container Insights são cobrados por observação em vez de serem cobrados por métrica armazenada ou log ingerido. Para obter mais informações sobre os preços do CloudWatch, consulte Preço do Amazon CloudWatch.

nota

A Amazon agora lançou o Fluent Bit como a solução de log padrão para o Container Insights com ganhos consideráveis de performance. Recomendamos usar o Fluent Bit em vez do Fluentd.

Início rápido ao usar o operador do agente do CloudWatch e o Fluent Bit

Existem duas configurações para Fluent Bit: uma versão otimizada e uma versão que fornece uma experiência mais semelhante ao Fluentd. A configuração de início rápido usa a versão otimizada. Para obter mais detalhes sobre a configuração compatível com o Fluentd, consulte Configurar o Fluent Bit como um DaemonSet para enviar logs ao CloudWatch Logs.

O operador do agente do CloudWatch corresponde a um contêiner adicional instalado em um cluster do Amazon EKS. Ele é modelado de acordo com o Operador do OpenTelemetry para Kubernetes. O operador gerencia o ciclo de vida útil dos recursos do Kubernetes em um cluster. Ele instala o agente do CloudWatch, a ferramenta DCGM Exporter (NVIDIA) e o monitor do AWS Neuron em um cluster do Amazon EKS e os gerencia. O Fluent Bit e o agente do CloudWatch para Windows são instalados diretamente em um cluster do Amazon EKS sem a necessidade de que o operador os gerencie.

Para obter uma solução de autoridade de certificação mais segura e repleta de funcionalidades, o operador do agente do CloudWatch requer o cert-manager, uma solução amplamente adotada para o gerenciamento de certificados TLS no Kubernetes. Usar o cert-manager simplifica o processo de obtenção, renovação, gerenciamento e uso desses certificados. Ele garante que os certificados sejam válidos e atualizados, bem como tenta renovar os certificados em um momento configurado antes da expiração. O cert-manager também facilita a emissão de certificados de diversas fontes com suporte, incluindo o AWS Certificate Manager Private Certificate Authority.

Como implantar o Container Insights usando o início rápido
  1. Instale o cert-manager se ele ainda não estiver instalado no cluster. Para obter mais informações, consulte cert-manager Installation.

  2. Instale as definições de recursos personalizados (CRD) ao inserir o comando apresentado a seguir.

    curl https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/main/k8s-quickstart/cwagent-custom-resource-definitions.yaml | kubectl apply --server-side -f -
  3. Instale o operador ao inserir o comando apresentado a seguir. Substitua my-cluster-name pelo nome do cluster do Amazon EKS ou do Kubernetes e my-cluster-region pelo nome da região em que os logs são publicados. Recomendamos usar a mesma região em que o cluster está implantado para reduzir os custos de transferência de dados de saída da AWS.

    ClusterName=my-cluster-name RegionName=my-cluster-region curl https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/main/k8s-quickstart/cwagent-operator-rendered.yaml | sed 's/{{cluster_name}}/'${ClusterName}'/g;s/{{region_name}}/'${RegionName}'/g' | kubectl apply -f -

    Por exemplo, para implantar o Container Insights no cluster chamado MyCluster e publicar os logs e as métricas em Oeste dos EUA (Oregon), insira o comando a seguir.

    ClusterName='MyCluster' RegionName='us-west-2' curl https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/main/k8s-quickstart/cwagent-operator-rendered.yaml | sed 's/{{cluster_name}}/'${ClusterName}'/g;s/{{region_name}}/'${RegionName}'/g' | kubectl apply -f -

Migrar do Container Insights

Se você já tiver o Container Insights configurado em um cluster do Amazon EKS e desejar realizar a migração para o Container Insights com observabilidade aprimorada para o Amazon EKS, consulte Como atualizar para o Container Insights com observabilidade aprimorada para o Amazon EKS.

Excluir o Container Insights

Se você quiser remover o Container Insights depois de usar a configuração de início rápido, insira os comandos apresentados a seguir.

ClusterName=my-cluster-name RegionName=my-cluster-region curl https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/main/k8s-quickstart/cwagent-operator-rendered.yaml | sed 's/{{cluster_name}}/'${ClusterName}'/g;s/{{region_name}}/'${RegionName}'/g' | kubectl delete -f - curl https://raw.githubusercontent.com/aws-samples/amazon-cloudwatch-container-insights/main/k8s-quickstart/cwagent-custom-resource-definitions.yaml | kubectl delete -f -