View a markdown version of this page

Guida all'installazione (AWS CLI) - Amazon CloudWatch

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Guida all'installazione (AWS CLI)

Questa guida illustra l'installazione di Enhanced Container Insights (Classic) su un cluster Amazon EKS esistente utilizzando il AWS CLI. Il componente aggiuntivo implementa un CloudWatch agente DaemonSet che raccoglie i parametri dell'infrastruttura, i log dei container e i dati sulle prestazioni.

Modalità di manutenzione

Enhanced Container Insights (Classic) è in modalità di manutenzione. Per le nuove implementazioni, consigliamo. Otel Container Insights (consigliato)

Prerequisiti

Prima di iniziare, verifica di soddisfare i seguenti requisiti.

  • Un cluster Amazon EKS esistente che esegue Kubernetes versione 1.25 o successiva

  • Versione della piattaforma o successiva eks.1

  • AWS CLI versione 2.12.0 o successiva

  • kubectlconfigurato per comunicare con il cluster di destinazione

  • Autorizzazioni IAM: eks:CreateAddoneks:DescribeAddon,, iam:CreateServiceLinkedRoleiam:CreateRole, e iam:AttachRolePolicy

  • Il componente aggiuntivo EKS Pod Identity Agent installato sul cluster o IAM Roles for Service Accounts (IRSA) configurato

  • Accesso a Internet in uscita dal cluster agli endpoint CloudWatch

Fase 1: creazione di un ruolo IAM per

Crea un ruolo IAM che consenta all' CloudWatch agente di inviare dati a. CloudWatch

Per creare il ruolo IAM CloudWatch dell'agente
  1. Esegui il comando seguente per creare il ruolo con una politica di fiducia per EKS Pod Identity.

    aws iam create-role \ --role-name EKS-CloudWatch-Agent-Role \ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "pods.eks.amazonaws.com" }, "Action": ["sts:AssumeRole", "sts:TagSession"] }] }'
  2. Collegare la policy gestita CloudWatchAgentServerPolicy al ruolo.

    aws iam attach-role-policy \ --role-name EKS-CloudWatch-Agent-Role \ --policy-arn arn:aws:iam::aws:policy/CloudWatchAgentServerPolicy

Fase 2: Creare l'associazione Pod Identity

Associa il ruolo IAM all'account del servizio CloudWatch agente nel cluster.

Per creare l'associazione Pod Identity
  • Eseguire il seguente comando seguente. Sostituiscilo cluster-name con il nome del tuo cluster Amazon EKS e account-id con l'ID AWS del tuo account.

    aws eks create-pod-identity-association \ --cluster-name cluster-name \ --namespace amazon-cloudwatch \ --service-account cloudwatch-agent \ --role-arn arn:aws:iam::account-id:role/EKS-CloudWatch-Agent-Role

Passaggio 3: installa il componente aggiuntivo Amazon CloudWatch Observability

Installa il amazon-cloudwatch-observability componente aggiuntivo sul tuo cluster.

Per installare il componente aggiuntivo
  • Eseguire il seguente comando seguente. Sostituisci cluster-name con il nome del tuo cluster Amazon EKS.

    aws eks create-addon \ --cluster-name cluster-name \ --addon-name amazon-cloudwatch-observability \ --addon-version v5.x.x-eksbuild.x

    Sostituisci v5.x.x-eksbuild.x con l'ultima versione v5.x disponibile. L'--addon-versioninstallazione senza installare la versione più recente (v6.2.0+), che attiva la pipeline Otel anziché Classic.

Fase 4: Verifica lo stato del componente aggiuntivo

Verifica che il componente aggiuntivo sia stato installato correttamente.

Per verificare lo stato del componente aggiuntivo
  • Eseguire il seguente comando seguente. Sostituisci cluster-name con il nome del tuo cluster Amazon EKS.

    aws eks describe-addon \ --cluster-name cluster-name \ --addon-name amazon-cloudwatch-observability \ --query "addon.status" \ --output text

    L'output previsto èACTIVE.

Fase 5: Conferma che i pod degli agenti siano in funzione

Verificate che i pod degli CloudWatch agenti siano in esecuzione nello spazio dei amazon-cloudwatch nomi.

Per confermare che i pod degli agenti sono in esecuzione
  • Eseguire il seguente comando seguente.

    kubectl get pods -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent

    Tutti i pod degli agenti devono mostrare lo Running stato.

Verifica i dati in CloudWatch

Dopo aver completato la configurazione, i dati di Container Insights vengono visualizzati CloudWatch entro 3-5 minuti.

Per verificare i dati di Container Insights
  1. Apri la CloudWatch console all'indirizzo https://console.aws.amazon.com/cloudwatch/.

  2. Nel riquadro di navigazione, scegli Container Insights.

  3. Verifica che per il tuo cluster pod_memory_utilization vengano visualizzate metriche come node_cpu_utilization e.

Risoluzione dei problemi

Utilizza le seguenti linee guida per risolvere i problemi più comuni durante l'installazione di Enhanced Container Insights (Classic) su Amazon EKS.

Add-on lo stato mostra CREATE_FAILED o DEGRADED

Sintomo: quando corriaws eks describe-addon, lo stato mostra o. CREATE_FAILED DEGRADED

Causa: l'installazione del componente aggiuntivo non è riuscita a causa di autorizzazioni IAM insufficienti o di un'associazione Pod Identity mancante.

Soluzione: completa i seguenti passaggi per risolvere il problema.

  1. Esegui il comando seguente per verificare le informazioni dettagliate sull'errore. Sostituisci cluster-name con il nome del cluster.

    aws eks describe-addon \ --cluster-name cluster-name \ --addon-name amazon-cloudwatch-observability \ --query "addon.health"
  2. Verifica che il ruolo IAM esista e che sia CloudWatchAgentServerPolicy collegato.

  3. Verifica che l'associazione Pod Identity abbia come target lo spazio dei nomi (amazon-cloudwatch) e l'account di servizio () corretti. cloudwatch-agent

  4. Eliminate il componente aggiuntivo non funzionante e reinstallatelo dopo aver risolto il problema.

    aws eks delete-addon \ --cluster-name cluster-name \ --addon-name amazon-cloudwatch-observability

Le metriche non vengono visualizzate dopo 5 minuti CloudWatch

Sintomo: i pod degli agenti mostrano Running lo stato, ma dopo 5 minuti non viene visualizzata alcuna metrica. CloudWatch

Causa: l'agente non può inviare dati a CloudWatch causa di restrizioni di rete o autorizzazioni IAM errate.

Soluzione: completa i seguenti passaggi per risolvere il problema.

  1. Verifica che i gruppi di sicurezza VPC e gli ACL di rete consentano il traffico HTTPS in uscita (porta 443) verso gli endpoint. CloudWatch

  2. Controlla i log degli agenti per eventuali errori di autorizzazione o timeout di connessione.

    kubectl logs -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent --tail=100 | grep -i "error\|timeout\|denied"
  3. Verifica che al ruolo IAM sia associata la CloudWatchAgentServerPolicy policy e che la policy di trust lo consenta. pods.eks.amazonaws.com

I pod degli agenti sono bloccati in Pending o CrashLoopBackOff

Sintomo: quando corrikubectl get pods -n amazon-cloudwatch, uno o più pod vengono visualizzati Pending o hanno uno stato. CrashLoopBackOff

Causa: gli agent pod non possono essere avviati a causa di risorse insufficienti del nodo, errori di acquisizione delle immagini o autorizzazioni mancanti.

Soluzione: completa i seguenti passaggi per risolvere il problema.

  1. Controlla gli eventi del pod per i messaggi di errore dettagliati.

    kubectl describe pod -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent
  2. Verifica che i nodi abbiano CPU e memoria sufficienti per i pod degli agenti.

  3. Verifica che il componente aggiuntivo EKS Pod Identity Agent sia installato e in esecuzione.

    kubectl get pods -n kube-system -l app.kubernetes.io/name=eks-pod-identity-agent

Fasi successive

Pronto per l'aggiornamento? Per istruzioni dettagliate su come passare da Enhanced Container Insights (Classic) a OTel Container Insights, consulta. Migrazione da Enhanced Container Insights (Classic) a OTel Container Insights