

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Démarrage rapide : OTel Container Insights sur Amazon EKS
<a name="container-insights-eks-otel-quickstart"></a>

Ce guide explique comment activer OTel Container Insights sur un cluster Amazon EKS existant. À la fin de cette procédure, votre cluster envoie des métriques d'infrastructure et des journaux de conteneurs à Amazon CloudWatch avec l'option Enhanced Observability activée.

Vous pouvez activer OTel Container Insights de deux manières : en utilisant le AWS Management Console (le plus rapide) ou en utilisant le AWS CLI. Les deux approches installent le même module complémentaire `amazon-cloudwatch-observability` EKS avec la configuration OTel Container Insights. Vous n'avez pas besoin de déploiement manuel d'agents, de diagrammes Helm ou de pipelines de collecteurs personnalisés. L'ensemble du processus prend moins de 5 minutes.

## Conditions préalables
<a name="container-insights-eks-otel-quickstart-prereqs"></a>

Avant d'activer OTel Container Insights, vérifiez que vous répondez aux exigences suivantes.
+ Un cluster Amazon EKS existant exécutant Kubernetes version 1.28 ou ultérieure
+ Version de plateforme `eks.1` ou ultérieure
+ Version 6.2.0 ou ultérieure du module complémentaire `amazon-cloudwatch-observability`
+ AWS CLI version 2.15.0 ou ultérieure (pour CLI-based l'installation)
+ `kubectl`configuré pour communiquer avec votre cluster cible
+ Autorisations IAM : `eks:CreateAddon``eks:DescribeAddon`, et `iam:CreateServiceLinkedRole`
+ Le module complémentaire EKS Pod Identity Agent installé sur votre cluster ou configuré les rôles IAM pour les comptes de service (IRSA)
+ Accès Internet sortant du cluster vers les points de terminaison CloudWatch 

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

 AWS Management Console Il fournit le chemin le plus rapide pour activer OTel Container Insights.

**Pour activer OTel Container Insights à l'aide de la console**

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

1. Choisissez **Clusters**, puis choisissez le nom de votre cluster.

1. Sélectionnez l’onglet **Observabilité**.

1. Choisissez **Enable Container Insights** et suivez les instructions affichées à l'écran.

Pour une présentation détaillée de la console, voir[Activez OTel Container Insights depuis la console](container-insights-eks-otel-console.md).

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

Procédez comme suit pour activer OTel Container Insights à l'aide du AWS CLI.

### Étape 1 : création du rôle IAM
<a name="container-insights-eks-otel-quickstart-cli-step1"></a>

Créez un rôle IAM qui permet au module complémentaire CloudWatch Observability d'envoyer des données à. CloudWatch

**Pour créer le rôle IAM du module complémentaire CloudWatch Observability**

1. Exécutez la commande suivante pour créer le rôle avec une politique de confiance pour 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. Attachez la stratégie gérée par `CloudWatchAgentServerPolicy` au rôle.

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

### Étape 2 : Création de l'association Pod Identity
<a name="container-insights-eks-otel-quickstart-cli-step2"></a>

Associez le rôle IAM au compte de service de l' CloudWatch agent de votre cluster.

**Pour créer l'association Pod Identity**
+ Exécutez la commande suivante. {{cluster-name}}Remplacez-le par le nom de votre cluster Amazon EKS et {{account-id}} par votre identifiant de AWS compte.

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

### Étape 3 : Installation du module complémentaire Amazon CloudWatch Observability
<a name="container-insights-eks-otel-quickstart-cli-step3"></a>

Installez le `amazon-cloudwatch-observability` module complémentaire avec OTel Container Insights activé.

**Pour installer le module complémentaire**
+ Exécutez la commande suivante. {{cluster-name}}Remplacez-le par le nom de votre cluster Amazon EKS.

  ```
  aws eks create-addon \
    --cluster-name {{cluster-name}} \
    --addon-name amazon-cloudwatch-observability \
    --configuration-values '{"otelContainerInsights":{"enabled":true}}'
  ```
**Important**  
La `otelContainerInsights.enabled` configuration est obligatoire. OTel Container Insights n'est pas activé par défaut.

### Étape 4 : vérifier l'état de l'extension
<a name="container-insights-eks-otel-quickstart-cli-step4"></a>

Vérifiez que le module complémentaire a été correctement installé.

**Pour vérifier l'état du module complémentaire**
+ Exécutez la commande suivante. {{cluster-name}}Remplacez-le par le nom de votre cluster Amazon EKS.

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

  Le résultat attendu est`ACTIVE`.

### Étape 5 : vérifier que les modules d'agent sont en cours d'exécution
<a name="container-insights-eks-otel-quickstart-cli-step5"></a>

Vérifiez que les modules d' CloudWatch agent s'exécutent dans l'espace de `amazon-cloudwatch` noms.

**Pour confirmer que les modules d'agent sont en cours d'exécution**
+ Exécutez la commande suivante.

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

  Tous les modules d'agent doivent indiquer `Running` leur statut.

## Vérifiez les données dans CloudWatch
<a name="container-insights-eks-otel-quickstart-verify"></a>

Une fois la configuration terminée, les données de Container Insights apparaissent dans CloudWatch un délai de 3 à 5 minutes.

### Vérifiez les métriques
<a name="container-insights-eks-otel-quickstart-verify-metrics"></a>

**Pour vérifier les métriques dans CloudWatch**

1. Ouvrez la CloudWatch console à l'adresse [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. Dans le volet de navigation, choisissez **Query Studio**.

1. Recherchez des métriques, par exemple en `container_cpu_usage_seconds_total` utilisant ProMQL.

### Vérifiez les journaux
<a name="container-insights-eks-otel-quickstart-verify-logs"></a>

Pour vérifier que des groupes de journaux existent pour votre cluster, exécutez la commande suivante. {{cluster-name}}Remplacez-le par le nom de votre cluster Amazon EKS.

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

### Délai de transmission des données prévu
<a name="container-insights-eks-otel-quickstart-verify-latency"></a>

Le tableau suivant indique la latence attendue pour chaque type de signal une fois que vous avez activé OTel Container Insights.


| Signal | Latence attendue | 
| --- | --- | 
| Indicateurs d'infrastructure | 2 à 3 minutes | 
| Journaux de conteneurs | 2 à 3 minutes | 
| Événements du journal des performances | 3 à 5 minutes | 

## Résolution des problèmes
<a name="container-insights-eks-otel-quickstart-troubleshoot"></a>

Suivez les instructions suivantes pour résoudre les problèmes courants liés à l'activation d'OTel Container Insights sur Amazon EKS.

### Add-on le statut indique CREATE\_FAILED ou DEGRADED
<a name="container-insights-eks-otel-quickstart-ts-create-failed"></a>

**Symptôme :** Lorsque vous exécutez`aws eks describe-addon`, l'état indique `CREATE_FAILED` ou`DEGRADED`.

**Cause :** L'installation du module complémentaire a échoué, généralement en raison d'autorisations IAM insuffisantes ou d'une association Pod Identity manquante.

**Solution :** Procédez comme suit pour résoudre ce problème.

1. Exécutez la commande suivante pour vérifier les informations d'erreur détaillées. Remplacez {{cluster-name}} par le nom de votre cluster.

   ```
   aws eks describe-addon \
     --cluster-name {{cluster-name}} \
     --addon-name amazon-cloudwatch-observability \
     --query "addon.health"
   ```

1. Vérifiez que le rôle IAM existe et qu'il est `CloudWatchAgentServerPolicy` associé.

1. Vérifiez que l'association Pod Identity cible le bon espace de noms (`amazon-cloudwatch`) et le compte de service (`cloudwatch-agent`).

1. Supprimez le module complémentaire défaillant et réinstallez-le une fois le problème résolu.

   ```
   aws eks delete-addon \
     --cluster-name {{cluster-name}} \
     --addon-name amazon-cloudwatch-observability
   ```

### Les pods d'agent sont CrashLoopBackOff actifs ou en attente
<a name="container-insights-eks-otel-quickstart-ts-crashloop"></a>

**Symptôme :** Lorsque vous exécutez`kubectl get pods -n amazon-cloudwatch`, un ou plusieurs modules s'affichent `CrashLoopBackOff` ou affichent `Pending` leur état.

**Cause :** Les modules d'agent ne peuvent pas démarrer en raison de ressources de nœud insuffisantes, d'autorisations manquantes ou de problèmes de connectivité réseau.

**Solution :** Procédez comme suit pour résoudre ce problème.

1. Consultez les événements du pod pour obtenir des messages d'erreur détaillés.

   ```
   kubectl describe pod -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent
   ```

1. Vérifiez les journaux du conteneur de l'agent pour détecter les erreurs de démarrage.

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

1. Vérifiez que vos nœuds disposent de suffisamment de processeur et de mémoire pour les modules d'agent.

1. Vérifiez que le module complémentaire EKS Pod Identity Agent est installé et en cours d'exécution.

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

### Les métriques n'apparaissent pas CloudWatch après 5 minutes
<a name="container-insights-eks-otel-quickstart-ts-no-metrics"></a>

**Symptôme :** les modules de l'agent affichent l'`Running`état, mais aucune métrique n'apparaît CloudWatch après 5 minutes.

**Cause :** L'agent ne peut pas envoyer de données à CloudWatch, généralement en raison de restrictions réseau ou d'autorisations IAM incorrectes.

**Solution :** Procédez comme suit pour résoudre ce problème.

1. Vérifiez que les modules d'agent peuvent atteindre les CloudWatch points de terminaison. Vérifiez que les groupes de sécurité VPC et les ACL réseau autorisent le trafic HTTPS sortant (port 443) vers les points de terminaison. CloudWatch

1. Vérifiez les journaux de l'agent pour détecter les erreurs d'autorisation ou les délais de connexion.

   ```
   kubectl logs -n amazon-cloudwatch -l app.kubernetes.io/name=cloudwatch-agent --tail=100 | grep -i "error\|timeout\|denied"
   ```

1. Vérifiez que la politique est attachée au rôle IAM et que la `CloudWatchAgentServerPolicy` politique de confiance le permet`pods.eks.amazonaws.com`.

1. Si vous utilisez un point de terminaison VPC pour CloudWatch, vérifiez que la politique de point de terminaison autorise les actions requises.