

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à.

# Avvio rapido: Otel Container Insights su Amazon EKS
<a name="container-insights-eks-otel-quickstart"></a>

Questa guida illustra come abilitare OTel Container Insights su un cluster Amazon EKS esistente. Al termine di questa procedura, il cluster invia i parametri dell'infrastruttura e i log dei container ad Amazon CloudWatch con Enhanced Observability abilitata.

Puoi abilitare OTel Container Insights in due modi: utilizzando il Console di gestione AWS (più veloce) o utilizzando il. AWS CLI Entrambi gli approcci installano lo stesso componente aggiuntivo `amazon-cloudwatch-observability` EKS con la configurazione di Otel Container Insights. Non è necessaria l'implementazione manuale degli agenti, i grafici Helm o le pipeline di raccolta personalizzate. L'intero processo richiede meno di 5 minuti.

## Prerequisiti
<a name="container-insights-eks-otel-quickstart-prereqs"></a>

Prima di abilitare Otel Container Insights, verificate di soddisfare i seguenti requisiti.
+ Un cluster Amazon EKS esistente che esegue Kubernetes versione 1.28 o successiva
+ Versione della piattaforma o successiva `eks.1`
+ Versione 6.2.0 o successiva del componente aggiuntivo `amazon-cloudwatch-observability`
+ AWS CLI versione 2.15.0 o successiva (per la configurazione) CLI-based 
+ `kubectl`configurato per comunicare con il cluster di destinazione
+ Autorizzazioni IAM: `eks:CreateAddon``eks:DescribeAddon`, e `iam:CreateServiceLinkedRole`
+ 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 

## Abilita OTel Container Insights (console)
<a name="container-insights-eks-otel-quickstart-console"></a>

 Console di gestione AWS Fornisce il percorso più veloce per abilitare Otel Container Insights.

**Per abilitare OTel Container Insights utilizzando la console**

1. Apri la Console Amazon EKS su [https://console.aws.amazon.com/eks/](https://console.aws.amazon.com/eks/).

1. Scegli **Clusters**, quindi scegli il nome del cluster.

1. Scegli la scheda **Osservabilità**.

1. Scegli **Enable Container Insights** e segui le istruzioni sullo schermo.

Per una guida dettagliata sulla console, consulta. [Abilita OTel Container Insights dalla console](container-insights-eks-otel-console.md)

## Abilitare Otel Container Insights (AWS CLI)
<a name="container-insights-eks-otel-quickstart-cli"></a>

Utilizza i seguenti passaggi per abilitare OTel Container Insights utilizzando il AWS CLI.

### Fase 1: creazione di un ruolo IAM per
<a name="container-insights-eks-otel-quickstart-cli-step1"></a>

Crea un ruolo IAM che consenta al componente aggiuntivo CloudWatch Observability di inviare dati a. CloudWatch

**Per creare il ruolo IAM del componente CloudWatch aggiuntivo Observability**

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-Observability-Role \
     --assume-role-policy-document '{
       "Version": "2012-10-17",
       "Statement": [{
         "Effect": "Allow",
         "Principal": { "Service": "pods.eks.amazonaws.com" },
         "Action": ["sts:AssumeRole", "sts:TagSession"]
       }]
     }'
   ```

1. Collegare la policy gestita `CloudWatchAgentServerPolicy` al ruolo.

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

### Fase 2: Creare l'associazione Pod Identity
<a name="container-insights-eks-otel-quickstart-cli-step2"></a>

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-Observability-Role
  ```

### Passaggio 3: installa il componente aggiuntivo Amazon CloudWatch Observability
<a name="container-insights-eks-otel-quickstart-cli-step3"></a>

Installa il `amazon-cloudwatch-observability` componente aggiuntivo con Otel Container Insights abilitato.

**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 \
    --configuration-values '{"otelContainerInsights":{"enabled":true}}'
  ```
**Importante**  
La `otelContainerInsights.enabled` configurazione è obbligatoria. OTel Container Insights non è abilitato per impostazione predefinita.

### Fase 4: Verificare lo stato del componente aggiuntivo
<a name="container-insights-eks-otel-quickstart-cli-step4"></a>

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
<a name="container-insights-eks-otel-quickstart-cli-step5"></a>

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
<a name="container-insights-eks-otel-quickstart-verify"></a>

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

### Controlla le metriche
<a name="container-insights-eks-otel-quickstart-verify-metrics"></a>

**Per controllare le metriche in CloudWatch**

1. Apri la CloudWatch console all'indirizzo [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Nel riquadro di navigazione, scegli **Query Studio**.

1. Cerca metriche, ad esempio `container_cpu_usage_seconds_total` utilizzando ProMQL.

### Controlla i log di
<a name="container-insights-eks-otel-quickstart-verify-logs"></a>

Per verificare che esistano gruppi di log per il cluster, esegui il comando seguente. Sostituisci {{cluster-name}} con il nome del tuo cluster Amazon EKS.

```
aws logs describe-log-groups \
  --log-group-name-prefix "/aws/containerinsights/{{cluster-name}}" \
  --query "logGroups[].logGroupName" \
  --output table
```

### Tempo di trasmissione dei dati previsto
<a name="container-insights-eks-otel-quickstart-verify-latency"></a>

La tabella seguente mostra la latenza prevista per ogni tipo di segnale dopo l'attivazione di Otel Container Insights.


| Signal | Latenza prevista | 
| --- | --- | 
| Metriche dell'infrastruttura | 2—3 minuti | 
| Registri di container | 2—3 minuti | 
| Eventi del registro delle prestazioni | 3-5 minuti | 

## Risoluzione dei problemi
<a name="container-insights-eks-otel-quickstart-troubleshoot"></a>

Utilizza le seguenti linee guida per risolvere i problemi più comuni quando abiliti Otel Container Insights su Amazon EKS.

### Add-on lo stato mostra CREATE\_FAILED o DEGRADED
<a name="container-insights-eks-otel-quickstart-ts-create-failed"></a>

**Sintomo:** quando corri`aws eks describe-addon`, lo stato mostra o. `CREATE_FAILED` `DEGRADED`

**Causa:** l'installazione del componente aggiuntivo non è riuscita, in genere 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"
   ```

1. Verifica che il ruolo IAM esista e che sia `CloudWatchAgentServerPolicy` collegato.

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

1. 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
   ```

### I pod degli agenti sono nello stato o In sospeso CrashLoopBackOff
<a name="container-insights-eks-otel-quickstart-ts-crashloop"></a>

**Sintomo:** quando corri`kubectl get pods -n amazon-cloudwatch`, uno o più pod vengono visualizzati `CrashLoopBackOff` o hanno lo stato. `Pending`

**Causa:** i pod degli agenti non possono essere avviati a causa di risorse di nodo insufficienti, autorizzazioni mancanti o problemi di connettività di rete.

**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
   ```

1. Controlla i registri del contenitore dell'agente per eventuali errori di avvio.

   ```
   kubectl logs -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent --tail=50
   ```

1. Verifica che i nodi abbiano CPU e memoria sufficienti per i pod degli agenti.

1. 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
   ```

### Le metriche non vengono visualizzate dopo 5 minuti CloudWatch
<a name="container-insights-eks-otel-quickstart-ts-no-metrics"></a>

**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, in genere a causa di restrizioni di rete o autorizzazioni IAM errate.

**Soluzione:** completa i seguenti passaggi per risolvere il problema.

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

1. 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"
   ```

1. Verifica che al ruolo IAM sia associata la `CloudWatchAgentServerPolicy` policy e che la policy di trust lo consenta. `pods.eks.amazonaws.com`

1. Se utilizzi un endpoint VPC per CloudWatch, conferma che la policy dell'endpoint consenta le azioni richieste.