• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

Monitorer IBM MQ sur Kubernetes avec OpenTelemetry

|View as Markdown (English)

Lorsque vos gestionnaires de files d’attente IBM MQ s’exécutent en tant que pods dans Kubernetes, vous avez besoin d’une solution de monitoring capable de les découvrir et de les suivre automatiquement à mesure que votre cluster évolue. Ce guide vous montre comment déployer un collecteur qui trouve automatiquement vos gestionnaires de files d’attente et envoie leurs métriques à New Relic sans aucune modification manuelle de configuration.

Vous pouvez utiliser soit la distribution d’OpenTelemetry de New Relic (NRDOT), soit l’OpenTelemetry Collector Contrib — les deux utilisent la même configuration et la même approche de découverte automatique. Le collecteur découvre les pods du gestionnaire de files d’attente par annotation, rassemble leurs métriques et envoie des données organisées à New Relic où elles apparaissent sous forme d’entités IBMMQ_MANAGER et IBMMQ_QUEUE avec des dashboards prêts à l’emploi. Lorsque vous ajoutez de nouveaux gestionnaires de files d’attente, le collecteur les trouve automatiquement — aucune mise à jour de configuration n’est nécessaire.

Conseil

Si vos gestionnaires de files d'attente s'exécutent plutôt sur des hôtes traditionnels, consultez Monitorer IBM MQ auto-hébergé.

Avant de commencer

Vous aurez besoin de ces composants avant de configurer le collecteur :

Conseil

Nous recommandons d'activer les statistiques MQI sur vos gestionnaires de files d'attente à l'aide de ALTER QMGR STATMQI(ON) STATQ(ON) pour obtenir de meilleures métriques de débit.

Configurer le monitoring IBM MQ

Suivez ces étapes pour déployer le collecteur et commencer à envoyer les métriques IBM MQ à New Relic :

Créer un secret d'identifiants New Relic

Créez un secret Kubernetes pour stocker vos identifiants New Relic en toute sécurité. Le collecteur lit ces valeurs à l'exécution, gardant les informations sensibles hors des fichiers de configuration.

  1. Assurez-vous que l'espace de nommage ibmmq existe :

    bash
    $
    kubectl get namespace ibmmq >/dev/null 2>&1 || kubectl create namespace ibmmq
  2. Créez le secret d’identifiants, en remplaçant <YOUR_LICENSE_KEY> par votre clé de licence réelle :

    bash
    $
    kubectl create secret generic newrelic-otlp-secret \
    >
    --namespace ibmmq \
    >
    --from-literal=NEW_RELIC_LICENSE_KEY="<YOUR_LICENSE_KEY>" \
    >
    --from-literal=NEW_RELIC_OTLP_ENDPOINT="https://otlp.nr-data.net:4318" \
    >
    --dry-run=client -o yaml | kubectl apply -f -

    Pour les comptes de l'UE, utilisez https://otlp.eu01.nr-data.net:4318 comme valeur de point de terminaison.

Configurer les valeurs Helm du collecteur

Créer un fichier values.yaml local avec la configuration du collecteur. Ce fichier contient tous les paramètres nécessaires pour déployer le collecteur via le chart Helm OpenTelemetry.

Prudence

Ne modifiez pas TARGET_NAME après le déploiement initial. Cette valeur forme le premier segment de chaque GUID d'entité IBMMQ_MANAGER et IBMMQ_QUEUE. Sa modification crée de nouvelles entités et rend orphelines celles qui existent déjà, ce qui casse les dashboards et les alertes.

Ce que fait cette configuration

Cette configuration crée un pipeline de découverte automatique qui trouve les pods du gestionnaire de files d'attente IBM MQ et envoie leurs métriques à New Relic. Le pipeline de traitement est identique à la configuration de l'hôte, mais utilise la découverte automatique de pod au lieu de cibles statiques :

SectionRôle
prometheus/ibmmq RécepteurDécouvre automatiquement les pods de gestionnaire de files d'attente dans l'espace de nommage ibmmq qui possèdent les annotations requises. Se connecte au point de terminaison de métriques de chaque pod et recueille les données IBM MQ toutes les 60 secondes.
filter/ibmmq-overheadSupprime les métriques internes de l'exportateur (telles que go_* et process_*) qui ne contiennent pas de données IBM MQ, optimisant ainsi les coûts d'ingestion des données.
filter/ibmmq-queuesExclut les files d'attente système IBM MQ internes (SYSTEM.* et AMQ.*) afin que seules les files d'attente d'application deviennent des entités dans New Relic.
transform/ibmmq-cleanupComposant critique qui associe les métriques aux entités IBM MQ appropriées dans New Relic. Sans cela, les données apparaissent comme des métriques de collecteur génériques au lieu d'entités IBMMQ_MANAGER et IBMMQ_QUEUE avec des dashboards et des alertes.
memory_limiter/ibmmqLimite l’utilisation de la mémoire à 400 Mo (en dessous de la limite du conteneur de 512 Mi) pour éviter que le pod du collecteur ne soit tué par Kubernetes.
batch/ibmmqRegroupe les métriques avant la transmission pour réduire la surcharge du réseau en regroupant jusqu'à 1 000 points de données par requête.
otlphttp/ibmmq exportateurExporte les métriques traitées vers New Relic en utilisant votre clé de licence pour l'authentification et le point de terminaison régional configuré.

Paramètres Kubernetes importants :

ParamètrePourquoi cela est requis
replicaCount: 1Avec kubernetes_sd et sans TargetAllocator, chaque réplica scrape chaque cible, de sorte que plus d'un réplica compte en double (et facture en double) les métriques. Pour la HA, partitionnez les cibles avec l'OpenTelemetry TargetAllocator.
mode: deployment (pas daemonset)Un DaemonSet exécute kubernetes_sd sur chaque nœud et produit N copies de chaque métrique pour un cluster de N nœuds.
clusterRole.create: truekubernetes_sd nécessite get/list/watch sur les pods ; sans cela, l'API renvoie 403 Forbidden et le Récepteur découvre zéro cible (le collecteur démarre mais n'émet rien).
service.enabled: falseCe collecteur n'a pas de Récepteurs entrants, le chart essaierait donc autrement de créer un service à port zéro et échouerait au moment de l'installation. L'auto-télémétrie sur :8888 est toujours accessible via kubectl port-forward.
replacement: $$1:$$2 (règle de réétiquetage 4)Le $$ échappe l’expansion de la variable d’environnement ${...} du chargeur de configuration OTel afin que le moteur Prometheus reçoive la syntaxe littérale du groupe de capture $1:$2. Un seul $1:$2 serait consommé comme une variable d’environnement vide et casserait la construction de l’adresse.
image.tag: "latest"Idéal pour les tests ; utilisez une version spécifique pour la production.

Installer le collecteur avec Helm

Ajoutez le référentiel Helm OpenTelemetry et installez le collecteur dans l'espace de nommage ibmmq en utilisant le values.yaml que vous avez créé à l'étape précédente :

bash
$
helm repo add open-telemetry https://open-telemetry.github.io/opentelemetry-helm-charts
$
helm repo update
$
$
helm upgrade --install ibmmq-collector open-telemetry/opentelemetry-collector \
>
--namespace ibmmq \
>
--create-namespace \
>
--values values.yaml

Si le pod du collecteur n'atteint pas 1/1 Running, consultez la section Dépannage ci-dessous.

Vérifier le déploiement

Confirmez que le pod du collecteur est en cours d'exécution :

bash
$
kubectl -n ibmmq rollout status deploy/ibmmq-collector-opentelemetry-collector --timeout=180s
$
kubectl -n ibmmq get pods

Le pod du collecteur doit afficher 1/1 Running. Pour confirmer qu'il découvre et scrape réellement les pods, transférez le port de son point de terminaison d'auto-télémétrie (exposé sur :8888, accessible uniquement via port-forward car le service entrant est désactivé) et vérifiez les compteurs acceptés/exportés :

bash
$
kubectl -n ibmmq port-forward deploy/ibmmq-collector-opentelemetry-collector 8888:8888 &
$
curl -s http://localhost:8888/metrics | \
>
grep -E 'otelcol_(receiver_accepted|exporter_sent|exporter_send_failed)_metric_points'
$
kill %1 2>/dev/null

otelcol_receiver_accepted_metric_points supérieur à 0 confirme que le collecteur a trouvé et récupéré au moins un pod annoté en cours d'exécution ; otelcol_exporter_send_failed_metric_points doit rester à 0 (toute valeur non nulle indique un problème de connexion OTLP ou d'informations d'identification).

Confirmez ensuite les métriques et entités IBM MQ dans New Relic à l'aide des requêtes de vérification dans trouver et interroger vos données. Pour connaître la signification des valeurs d'état, consultez la référence des codes d'état MQ.

Affichez vos données dans New Relic

Une fois que votre pod de collecteur est en cours d'exécution et que les métriques circulent, vous verrez vos gestionnaires de files d'attente en tant qu'entités IBMMQ_MANAGER dans New Relic, avec leurs files d'attente en tant qu'entités IBMMQ_QUEUE enfants. Pour des informations détaillées sur la recherche de vos données, l'exécution de requêtes et la configuration de dashboards et d'alertes, consultez Afficher et interroger vos données.

Référence des métriques

Découvrez les métriques OpenTelemetry IBM MQ disponibles dans New Relic.

Afficher et interroger vos données

Apprenez à afficher et à interroger vos données IBM MQ dans New Relic.

Dépannage

Découvrez comment résoudre les problèmes de monitoring d’IBM MQ dans New Relic.

Droits d'auteur © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.