

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.

# Intégrez Amazon MSK
<a name="managed-prometheus-collectors-msk-setup"></a>

Avec un collecteur Prometheus CloudWatch géré par Amazon, vous pouvez automatiquement découvrir et collecter des Prometheus métriques à partir de vos clusters Amazon MSK. Lorsque vous activez Open Monitoring sur votre cluster Amazon MSK, les Prometheus métriques sont exposées via l'exportateur Java Management Extensions (JMX) et l'exportateur de nœuds. Le collecteur géré se connecte à votre VPC et extrait ces métriques auprès de tous les courtiers à l'aide de la découverte des DNS-based services et les transmet directement à. CloudWatch Grâce à cette intégration, vous pouvez surveiller les métriques au niveau de l'hôte, JVM-level les métriques et les métriques du courtier Kafka CloudWatch sans déployer d'agent.

**Note**  
Lorsqu'un collecteur Prometheus CloudWatch géré par Amazon transmet vos métriques Amazon MSK à CloudWatch, il enrichit automatiquement chaque métrique avec des attributs qui identifient son origine. Chaque métrique comporte l'étendue de l'instrumentation du collecteur, des attributs de cloud qui enregistrent le AWS compte et la région, et une unité que le collecteur déduit à partir du nom de la métrique. Vous pouvez filtrer et regrouper ces attributs lorsque vous interrogez vos métriques avec ProMQL.

## Conditions préalables
<a name="managed-prometheus-collectors-msk-prerequisites"></a>

Cette procédure suppose une familiarité avec l'administration du cluster Amazon MSK et les concepts de mise en réseau Amazon VPC.
+ Cluster Amazon MSK en mode provisionné, avec des courtiers standard ou express. Les collecteurs gérés ne prennent pas en charge Amazon MSK Serverless.
+ La surveillance ouverte est activée sur le cluster. Pour plus d'informations, consultez [ Open Monitoring with Prometheus ](https://docs.aws.amazon.com/msk/latest/developerguide/open-monitoring.html) dans le guide du développeur * Amazon MSK. *
+ Au moins deux sous-réseaux dans des zones de disponibilité différentes
+ Groupe de sécurité permettant au collecteur d'accéder aux ports de courtage 11001 et 11002

## Étape 1 : activer la surveillance ouverte
<a name="managed-prometheus-collectors-msk-enable-monitoring"></a>

Activez la surveillance ouverte sur votre cluster Amazon MSK pour exposer Prometheus les métriques. Pour obtenir des instructions sur l'activation de la surveillance ouverte, consultez la section Surveillance [ ouverte avec Prometheus ](https://docs.aws.amazon.com/msk/latest/developerguide/open-monitoring.html) dans le guide du développeur * Amazon MSK. *

```
aws kafka update-monitoring \
  --cluster-arn "arn:aws:kafka:{{us-west-2}}:{{123456789012}}:cluster/{{my-cluster}}/{{abc123-def456}}" \
  --current-version "{{K1A2B3C4D5}}" \
  --open-monitoring '{
    "Prometheus": {
      "JmxExporter": {"EnabledInBroker": true},
      "NodeExporter": {"EnabledInBroker": true}
    }
  }'
```

**Note**  
Le `--open-monitoring` paramètre à lui seul expose les Prometheus points de terminaison sur les ports 11001 et 11002. Les niveaux de surveillance améliorés, tels que `PER_TOPIC_PER_PARTITION` ceux qui sont distincts de l'Open Monitoring, peuvent entraîner des frais supplémentaires. Ne les définissez donc que si vous avez besoin de ce niveau de métriques Amazon MSK.

## Étape 2 : obtenir le nom DNS de votre cluster
<a name="managed-prometheus-collectors-msk-dns"></a>

Amazon MSK fournit un nom DNS au niveau du cluster qui renvoie à toutes les adresses IP des courtiers. Son utilisation pour la découverte des services rend votre surveillance résiliente aux remplacements de courtiers et à la mise à l'échelle des clusters.

Obtenez le nom DNS de votre cluster (supprimez le préfixe spécifique au courtier, comme ou) : `b-1.` `b-2.`

```
aws kafka get-bootstrap-brokers --cluster-arn "arn:aws:kafka:{{us-west-2}}:{{123456789012}}:cluster/{{my-cluster}}/{{abc123-def456}}"
```

Par exemple, si le broker Bootstrap revient`b-1.my-cluster.abc123.c4.kafka.us-west-2.amazonaws.com`, utilisez-le `my-cluster.abc123.c4.kafka.us-west-2.amazonaws.com` comme nom DNS de cluster.

## Étape 3 : Configuration de la configuration de scrape
<a name="managed-prometheus-collectors-msk-scrape-config"></a>

Voici un exemple de configuration de scrape pour Amazon MSK. Vous ferez référence à cette configuration lorsque vous créerez le scraper à l'étape suivante. Pour plus d'informations sur les options de configuration, consultez[Configuration du scraper](managed-prometheus-collectors-scraper-configuration.md).

```
global:
  scrape_interval: 60s
  external_labels:
    cluster_name: {{my-msk-cluster}}

scrape_configs:
  - job_name: 'msk-jmx'
    dns_sd_configs:
      - names:
          - {{my-cluster.abc123.c4.kafka.us-west-2.amazonaws.com}}
        type: A
        port: 11001
    relabel_configs:
      - source_labels: [__meta_dns_name]
        target_label: broker_dns
      - source_labels: [__address__]
        target_label: instance
      - target_label: compute_platform
        replacement: 'msk'

  - job_name: 'msk-node'
    dns_sd_configs:
      - names:
          - {{my-cluster.abc123.c4.kafka.us-west-2.amazonaws.com}}
        type: A
        port: 11002
    relabel_configs:
      - source_labels: [__meta_dns_name]
        target_label: broker_dns
      - source_labels: [__address__]
        target_label: instance
      - target_label: compute_platform
        replacement: 'msk'
```

## Étape 4 : Création du grattoir
<a name="managed-prometheus-collectors-msk-create-scraper"></a>

Créez le scraper avec une CloudWatch destination, en utilisant la configuration de scrape pour vos courtiers Amazon MSK de l'étape précédente.

------
#### [ AWS API ]

Utilisez l'opération `CreateScraper` API pour créer un scraper avec une CloudWatch destination. Remplacez les informations relatives au sous-réseau, au groupe de sécurité et à l'ensemble de données par vos propres valeurs.

```
POST /scrapers HTTP/1.1

{
  "alias": "msk-metrics-scraper",
  "source": {
    "vpcConfiguration": {
      "subnetIds": ["{{subnet-subnet-id-1}}", "{{subnet-subnet-id-2}}"],
      "securityGroupIds": ["{{sg-security-group-id}}"]
    }
  },
  "destination": {
    "cloudWatchConfiguration": {
      "datasetArn": "arn:aws:cloudwatch:{{us-west-2}}:{{123456789012}}:dataset/default"
    }
  },
  "scrapeConfiguration": {
    "configurationBlob": "{{base64-encoded-blob}}"
  }
}
```

------
#### [ AWS CLI ]

Utilisez la `create-scraper` commande pour créer un scraper avec une CloudWatch destination. Remplacez les informations relatives au sous-réseau, au groupe de sécurité et à l'ensemble de données par vos propres valeurs.

```
aws amp create-scraper \
  --alias "msk-metrics-scraper" \
  --source '{
    "vpcConfiguration": {
      "subnetIds": ["{{subnet-subnet-id-1}}", "{{subnet-subnet-id-2}}"],
      "securityGroupIds": ["{{sg-security-group-id}}"]
    }
  }' \
  --scrape-configuration configurationBlob=$(cat {{msk-config.yaml}} | base64 -w 0) \
  --destination '{
    "cloudWatchConfiguration": {
      "datasetArn": "arn:aws:cloudwatch:{{us-west-2}}:{{123456789012}}:dataset/default"
    }
  }'
```

------

## Métriques disponibles
<a name="managed-prometheus-collectors-msk-available-metrics"></a>
+ **Exportateur JMX (port 11001) ** : composants internes du courtier Kafka, y compris les métriques thématiques, les métriques de partition, les taux de requêtes, les délais de consommation et les partitions sous-répliquées.
+ **Exportateur de nœuds (port 11002) ** : Host-level mesures telles que le débit du processeur, de la mémoire I/O, du disque et du réseau.

Pour obtenir la liste complète des métriques disponibles, consultez les métriques [ MSK collectées par les collecteurs gérés ](https://docs.aws.amazon.com/prometheus/latest/userguide/prom-msk-integration.html#prom-msk-metrics) dans le guide de l'utilisateur d'*Amazon Managed Service for Prometheus. *

## Valider la collecte de métriques
<a name="managed-prometheus-collectors-msk-validate"></a>

Pour vérifier que le collecteur fournit à la fois les métriques JMX et Node Exporter, exécutez les requêtes suivantes dans CloudWatch [ Query Studio](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-PromQL-QueryStudio.html). Si chaque requête renvoie des points de données, le collecteur extrait correctement l'exportateur correspondant.

La requête suivante renvoie une métrique Kafka de niveau courtier provenant de l'exportateur JMX (port 11001). Il indique le taux moyen d'activité des courtiers sur des sujets, tels que les messages et les octets qui transitent par les courtiers. Les points de données confirment que le collecteur extrait les métriques du courtier Kafka.

```
kafka_server_BrokerTopicMetrics_MeanRate
```

La requête suivante renvoie l'utilisation du processeur au niveau de l'hôte à partir de l'exportateur de nœuds (port 11002). Il soustrait de 100 le taux de processeur inactif moyen sur une fenêtre de cinq minutes pour obtenir le pourcentage de processeur utilisé par les courtiers. Les points de données confirment que le collecteur extrait les métriques au niveau de l'hôte.

```
100 - (avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[5m])) * 100)
```

## Afficher le tableau de bord automatique
<a name="managed-prometheus-collectors-msk-dashboards"></a>

Une fois que le collecteur commence à transmettre vos métriques Amazon MSK à CloudWatch, la CloudWatch console fournit un tableau de bord automatique nommé ** MSK OTel. ** Pour l'ouvrir, consultez [ MSK OTel](https://console.aws.amazon.com/cloudwatch/home?#dashboards/templates/msk-otel), ou connectez-vous à la console de AWS gestion, ouvrez la CloudWatch console, choisissez ** Tableaux de bord ** dans le volet de navigation, choisissez Tableaux de bord ** automatiques**, puis choisissez ** MSK OTel. ** Vous pouvez commencer à surveiller vos clusters sans créer vous-même de widgets ou de tableaux de bord.

Si le tableau de bord automatique répond à vos besoins, vous pouvez l'utiliser tel quel. Pour créer une expérience de surveillance personnalisée, vous pouvez ajouter n'importe lequel de ses widgets à un tableau de bord personnalisé. Pour plus d'informations sur les tableaux de bord personnalisés, consultez la section [ Utilisation des CloudWatch tableaux ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html) de bord.

## Cross-account observabilité
<a name="managed-prometheus-collectors-msk-cross-account"></a>

Pour la surveillance multicompte d'Amazon MSK, nous vous recommandons d'utiliser la centralisation des CloudWatch métriques Amazon. Pour plus d'informations, consultez la section Centralisation [ CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Unified-Cross-Account.html) des métriques.

Pour d'autres configurations de scraper inter-comptes utilisant le chaînage de rôles, consultez l'intégration d'[Cross-accountAmazon MSK ](https://docs.aws.amazon.com/prometheus/latest/userguide/prom-msk-cross-account.html) dans le guide de l'utilisateur d'*Amazon Managed Service for Prometheus. *

## Limitations actuelles
<a name="managed-prometheus-collectors-msk-limitations"></a>
+ Les collecteurs gérés ne prennent pas en charge les clusters Amazon MSK Serverless.
+ Les collecteurs gérés ne prennent pas en charge l'accès public combiné au mode de métadonnées Kraft.
+ Chaque combinaison de clusters et de jeux de CloudWatch données Amazon MSK nécessite un collecteur.