Ce document a été traduit à l'aide d'une technologie de traduction automatique. Bien que nous nous efforcions de fournir des traductions exactes, nous ne fournissons aucune garantie quant à l'exhaustivité, l'exactitude ou la fiabilité du contenu traduit. En cas de divergence, la version originale anglaise prévaut et fait foi.

Configuration du récepteur

Le Secret Config d’Alertmanager contient la configuration d’une instance d’Alertmanager qui envoie des notifications en fonction des alertes qu’elle reçoit de Prometheus.

Cette section suppose que vous êtes familier avec la manière dont les composants de surveillance fonctionnent ensemble. Pour plus d’informations sur Alertmanager, consultez cette section.

Création de récepteurs dans l’interface utilisateur de Rancher

Conditions préalables :
  • L’application de surveillance doit être installée.

  • Si vous avez configuré la surveillance avec un Secret d’Alertmanager existant, il doit avoir un format pris en charge par l’interface utilisateur de Rancher. Sinon, vous ne pourrez apporter des modifications qu’en modifiant directement le Secret d’Alertmanager. Remarque : Nous continuons à améliorer les types de configurations d’Alertmanager que nous pouvons prendre en charge en utilisant l’interface utilisateur des Routes et des Récepteurs, donc veuillez signaler un problème si vous avez une demande d’amélioration de fonctionnalité.

  1. Allez dans le cluster où vous souhaitez créer des récepteurs. Cliquez sur Surveillance -> Alertes -> Configurations d’AlertManager.

  2. Cliquez sur Create.

  3. Entrez un Nom pour la nouvelle configuration d’Alertmanager.

  4. Cliquez sur Create.

  5. Après avoir créé la configuration d’AlertManager, cliquez dessus pour ajouter un récepteur.

  6. Cliquez sur Ajouter un récepteur.

  7. Entrez un Nom pour le récepteur.

  8. Configurez un ou plusieurs fournisseurs pour le récepteur. Pour obtenir de l’aide pour remplir les formulaires, reportez-vous aux options de configuration ci-dessous.

  9. Cliquez sur Create.

Résultat : Les alertes peuvent être configurées pour envoyer des notifications aux récepteurs.

Configuration du récepteur

Les intégrations de notification sont configurées avec le receiver, qui est expliqué dans la documentation de Prometheus.

Natif vs. Récepteurs non natifs

Par défaut, AlertManager fournit une intégration native avec certains récepteurs, qui sont listés dans cette section. Tous les récepteurs pris en charge nativement sont configurables via l’interface utilisateur de Rancher.

Pour les mécanismes de notification, tels que Telegram, qui ne sont pas pris en charge nativement par AlertManager, l’intégration est réalisée à l’aide du récepteur webhook. Une liste de pilotes tiers fournissant de telles intégrations peut être trouvée ici. L’accès à ces pilotes et à leurs intégrations associées est fourni via l’appli Alerting Drivers. Une fois activé, la configuration des récepteurs non natifs peut également être effectuée via l’interface utilisateur de Rancher.

Actuellement, l’application Rancher Alerting Drivers donne accès aux intégrations suivantes :

  • Microsoft Teams, basé sur le pilote prom2teams.

  • Telegram, basé sur le pilote Sachet.

Les types suivants de récepteurs peuvent être configurés dans l’interface utilisateur de Rancher :

L’option de récepteur personnalisé peut être utilisée pour configurer tout récepteur en YAML qui ne peut pas être configuré en remplissant les autres formulaires dans l’interface utilisateur de Rancher.

Slack

Champ Type Description

URL

Chaîne

Entrez l’URL de votre webhook Slack. Pour des instructions sur la création d’un webhook Slack, consultez la documentation Slack.

Canal par défaut

Chaîne

Entrez le nom du canal dans lequel vous souhaitez envoyer des notifications d’alerte au format suivant : #<channelname>.

URL du proxy

Chaîne

Proxy pour les notifications de webhook.

Activer l’envoi d’alertes résolues

Booléen

Indique s’il faut envoyer une notification de suivi si une alerte a été résolue (par exemple, [Résolu] Utilisation élevée de l’UC).

Message électronique

Champ Type Description

Adresse du destinataire par défaut

Chaîne

L’adresse e-mail qui recevra les notifications.

Activer l’envoi d’alertes résolues

Booléen

Indique s’il faut envoyer une notification de suivi si une alerte a été résolue (par exemple, [Résolu] Utilisation élevée de l’UC).

Options SMTP :

Champ Type Description

Expéditeur

Chaîne

Entrez une adresse e-mail disponible sur votre serveur de messagerie SMTP à partir de laquelle vous souhaitez envoyer la notification.

Hôte

Chaîne

Entrez l’adresse IP ou le nom d’hôte de votre serveur SMTP. Exemple : smtp.email.com.

Utiliser TLS

Booléen

Utilisez TLS pour le chiffrement.

Nom d’utilisateur

Chaîne

Entrez un nom d’utilisateur pour vous authentifier auprès du serveur SMTP.

Mot de passe

Chaîne

Entrez un mot de passe pour vous authentifier auprès du serveur SMTP.

PagerDuty

Champ Type Description

Type d’intégration

Chaîne

Events API v2 ou Prometheus.

Clé d’intégration par défaut

Chaîne

Pour des instructions sur l’obtention d’une clé d’intégration, consultez la documentation de PagerDuty.

URL du proxy

Chaîne

Proxy pour les notifications de PagerDuty.

Activer l’envoi d’alertes résolues

Booléen

Indique s’il faut envoyer une notification de suivi si une alerte a été résolue (par exemple, [Résolu] Utilisation élevée de l’UC).

Opsgenie

Champ Description

Clé API

Pour des instructions sur l’obtention d’une clé API, référez-vous à la documentation d’Opsgenie.

URL du proxy

Proxy pour les notifications d’Opsgenie.

Activer l’envoi d’alertes résolues

Indique s’il faut envoyer une notification de suivi si une alerte a été résolue (par exemple, [Résolu] Utilisation élevée de l’UC).

Répondants Opsgenie :

Champ Type Description

Type

Chaîne

Calendrier, Équipe, Utilisateur ou Escalade. Pour plus d’informations sur les répondants d’alerte, référez-vous à la documentation d’Opsgenie.

Envoyer à

Chaîne

Id, Nom ou Nom d’utilisateur du destinataire Opsgenie.

Webhook

Champ Description

URL

URL du webhook pour l’appli de votre choix.

URL du proxy

Proxy pour la notification de webhook.

Activer l’envoi d’alertes résolues

Indique s’il faut envoyer une notification de suivi si une alerte a été résolue (par exemple, [Résolu] Utilisation élevée du CPU).

Personnalisé

Le YAML fourni ici sera directement ajouté à votre récepteur dans le Secret de configuration d’Alertmanager.

Équipes

Activation du récepteur Teams pour les clusters gérés par Rancher

Le récepteur Teams n’est pas un récepteur natif et doit être activé avant de pouvoir être utilisé. Vous pouvez activer le récepteur Teams pour un cluster géré par Rancher en allant sur la page Apps et en installant l’appli rancher-alerting-drivers avec l’option Teams sélectionnée.

  1. Dans l’interface Rancher, allez au cluster où vous souhaitez installer rancher-alerting-drivers et cliquez sur Apps.

  2. Cliquez sur l’application Alerting Drivers.

  3. Cliquez sur l’onglet Helm Deploy Options.

  4. Sélectionnez l’option Teams et cliquez sur Installer.

  5. Prenez note de l’espace de noms utilisé, car il sera requis dans une étape ultérieure.

Configuration du récepteur Teams

  1. Pour configurer le récepteur Teams, mettez à jour son ConfigMap. L’exemple suivant est une configuration minimale du récepteur Teams :

     [Microsoft Teams]
     connector: https://your-teams-webhook-url
  2. Après avoir mis à jour la configuration, suivez les instructions dans Création de récepteurs dans l’interface utilisateur de Rancher pour ajouter le récepteur. Utilisez l’exemple ci-dessous pour former votre URL. Assurez-vous de remplacer <namespace> par l’espace de noms de l’appli rancher-alerting-drivers :

     url: http://rancher-alerting-drivers-prom2teams.<namespace>.svc:8089/v2/connector

SMS

Activation du récepteur SMS pour les clusters gérés par Rancher

Le récepteur SMS n’est pas un récepteur natif et doit être activé avant de pouvoir être utilisé. Vous pouvez activer le récepteur SMS pour un cluster géré par Rancher en allant sur la page Apps et en installant l’appli rancher-alerting-drivers avec l’option SMS sélectionnée.

  1. Dans le coin supérieur gauche, cliquez sur ☰ > Gestion des clusters.

  2. Sur la page Clusters, allez au cluster où vous souhaitez installer rancher-alerting-drivers et cliquez sur Explorer.

  3. Dans la barre de navigation à gauche, cliquez sur

  4. Cliquez sur l’application Alerting Drivers.

  5. Cliquez sur l’onglet Helm Deploy Options

  6. Sélectionnez l’option SMS et cliquez sur Installer.

  7. Prenez note de l’espace de noms utilisé, car il sera requis dans une étape ultérieure.

Configuration du récepteur SMS

Le récepteur SMS peut être configuré en mettant à jour son ConfigMap. Par exemple, la configuration minimale du récepteur SMS est la suivante.

providers:
  telegram:
    token: 'your-token-from-telegram'

receivers:
- name: 'telegram-receiver-1'
  provider: 'telegram'
  to:
    - '123456789'

Lorsque la configuration est terminée, ajoutez le récepteur en suivant les étapes de cette section.

Utilisez l’exemple ci-dessous comme nom et URL, où :

  • le nom attribué au récepteur, par exemple telegram-receiver-1, doit correspondre au nom dans le champ receivers.name du ConfigMap, par exemple telegram-receiver-1

  • ns-1 dans l’URL est remplacé par l’espace de noms où l’appli rancher-alerting-drivers est installée

name: telegram-receiver-1
url http://rancher-alerting-drivers-sachet.ns-1.svc:9876/alert

Telegram

Activation du récepteur Telegram pour les clusters gérés par Rancher

Le récepteur Telegram n’est pas un récepteur natif. Vous devez l’activer avant de pouvoir l’utiliser. Vous pouvez activer le récepteur Telegram pour un cluster géré par Rancher en allant sur la page Apps et en installant l’application rancher-alerting-drivers avec l’option Telegram sélectionnée :

  1. Dans le coin supérieur gauche, cliquez sur ☰ > Gestion des clusters.

  2. Sur la page Clusters, allez au cluster où vous souhaitez installer rancher-alerting-drivers et cliquez sur Explorer.

  3. Dans la barre de navigation à gauche, cliquez sur Apps.

  4. Cliquez sur l’application Alerting Drivers.

  5. Cliquez sur Installer.

  6. Dans la page qui s’ouvre ensuite, assurez-vous que la case Activer SMS est cochée. Les notifications Telegram nécessitent d’activer le SMS.

  7. Prenez note de l’espace de noms utilisé, car il sera requis dans une étape ultérieure.

Testez la configuration en configurant une PrometheusRule

Pour tester votre configuration Telegram, créez une PrometheusRule qui génère continuellement des alertes.

REMARQUE

Cette règle est uniquement destinée à tester si les alertes Telegram fonctionnent comme prévu. Ne la laissez pas active après la fin des tests.

  1. Dans le menu à gauche, cliquez sur Surveillance.

  2. Cliquez sur Avancé.

  3. Cliquez sur Règles Prometheus  Créer.

  4. Sélectionnez un espace de noms pour placer la règle et nommez la règle de manière appropriée.

  5. Définissez le nom du groupe sur test. Utilisez cette valeur plus tard lorsque vous créerez un Route dans le AlertManagerConfig.

  6. Sous Règles d’alerte, cliquez sur Ajouter.

  7. Définissez un Nom d’alerte approprié.

  8. Pour déclencher l’alerte immédiatement et en continu, entrez l’expression PromQL suivante : vector(1).

  9. Sous Étiquettes, cliquez sur Ajouter une étiquette. Entrez la clé test et la valeur alert. Cette paire clé-valeur sera également utilisée plus tard.

Configurez un AlertManagerConfig

Configurez un AlertManagerConfig pour contenir la configuration de Récepteur et de Route pour la Règle Prometheus créée ci-dessus :

  1. Cliquez sur Surveillance  Alertes, et ouvrez AlertManagerConfigs.

  2. Cliquez sur Create

Créez un Récepteur dans AlertManagerConfig

  1. Choisissez un espace de noms dans la liste déroulante et définissez un nom approprié.

  2. Cliquez sur Create.

  3. Ouvrez le AlertManagerConfig nouvellement créé et cliquez sur ⋮ > Modifier la configuration.

  4. Cliquez sur Ajouter un récepteur.

  5. Sélectionnez Webhook dans la liste sur la page Créer un récepteur dans AlertmanagerConfig.

  6. Nommez le webhook, et cliquez sur Ajouter un webhook.

  7. Dans le menu déroulant Sélectionner le type de webhook, sélectionnez SMS. Cela remplira automatiquement le champ Target en tant que http://rancher-alerting-drivers-sachet.cattle-monitoring-system.svc:9876/alert. Si vous avez installé les Alerting Drivers dans un espace de noms autre que cattle-monitoring-system, l’URL cible le reflétera.

  8. Cliquez sur Create.

Créez une Route dans AlertManagerConfig

  1. Cliquez sur ⋮ > Modifier la configuration.

  2. Cliquez sur Route.

  3. Dans le menu déroulant, sélectionnez le Récepteur que vous venez de créer.

  4. Dans le champ Étiquettes pour regrouper les alertes, tapez test.

  5. Sous Attente et intervalles, définissez Délai d’attente du groupe sur 1s et Intervalle du groupe sur 10s. Cela déclenche des alertes fréquentes. Modifiez les valeurs selon les besoins.

  6. Sous Matchers, cliquez sur Ajouter un matcher. Entrez test dans le champ Nom et alert dans le champ Valeur. Dans le menu déroulant Type de correspondance, sélectionnez MatchEqual.

  7. Cliquez sur Enregistrer.

Configuration du récepteur Telegram

Vous pouvez configurer le récepteur Telegram en mettant à jour le rancher-alerting-drivers-sachet ConfigMap dans l’espace de noms cattle-monitoring-system. Par exemple, ce qui suit est une configuration minimale du récepteur Telegram :

providers:
  telegram:
    token: <your-token-from-telegram>

receivers:
- name: 'cattle-monitoring-system/test-amc/prom2tel'
  provider: 'telegram'
  to:
    - '123456789'

Pour obtenir un token Telegram, configurez un bot Telegram. Référez-vous au guide officiel de Telegram pour plus de détails. Après avoir terminé la configuration du récepteur, ajoutez-le.

Nommez le récepteur <namespace>/<alertmanagerconfig-name>/<receiver-name>. Entrez 123456789 comme un espace réservé pour l’ID utilisateur Telegram à qui envoyer les notifications. Pour trouver votre ID Telegram, vérifiez le bot d’informations utilisateur Telegram.

Vous devriez maintenant recevoir des notifications Telegram pour l’ID utilisateur. Si vous ne recevez pas de notifications, veuillez vérifier s’il y a des erreurs signalées dans le Pod pour le Déploiement rancher-alerting-drivers-sachet sous l’espace de noms cattle-monitoring-system.

Configuration de plusieurs récepteurs

En modifiant les formulaires dans l’interface utilisateur de Rancher, vous pouvez configurer une ressource Récepteur avec toutes les informations nécessaires à l’Alertmanager pour envoyer des alertes à votre système de notification.

Il est également possible d’envoyer des alertes à plusieurs systèmes de notification. Une façon de procéder est de configurer le Récepteur en utilisant un YAML personnalisé, auquel cas vous pouvez ajouter la configuration pour plusieurs systèmes de notification, tant que vous êtes sûr que les deux systèmes doivent recevoir les mêmes messages.

Vous pouvez également configurer plusieurs récepteurs en utilisant l’option continue pour une route, de sorte que les alertes envoyées à un récepteur continuent d’être évaluées au niveau suivant de l’arbre de routage, qui pourrait contenir un autre récepteur.

Exemples de configurations Alertmanager

Slack

Pour configurer des notifications via Slack, le YAML de configuration Alertmanager suivant peut être placé dans la clé alertmanager.yaml du Secret de configuration Alertmanager, où le api_url doit être mis à jour pour utiliser votre URL de Webhook de Slack :

route:
  group_by: ['job']
  group_wait: 30s
  group_interval: 5m
  repeat_interval: 3h
  receiver: 'slack-notifications'
receivers:
- name: 'slack-notifications'
  slack_configs:
  - send_resolved: true
    text: '{{ template "slack.rancher.text" . }}'
    api_url: <user-provided slack webhook url here>
templates:
- /etc/alertmanager/config/*.tmpl

PagerDuty

Pour configurer des notifications via PagerDuty, utilisez l’exemple ci-dessous tiré de la documentation de PagerDuty comme guide. Cet exemple configure une route qui capture les alertes pour un service de base de données et les envoie à un récepteur lié à un service qui notifiera directement les DBA dans PagerDuty, tandis que toutes les autres alertes seront dirigées vers un récepteur par défaut avec une clé d’intégration PagerDuty différente.

Le YAML de configuration Alertmanager suivant peut être placé dans la clé alertmanager.yaml du Secret de configuration Alertmanager. Le service_key doit être mis à jour pour utiliser votre clé d’intégration PagerDuty et peut être trouvé selon la section "Intégration avec le Routage d’Événements Global" de la documentation de PagerDuty. Pour la liste complète des options de configuration, référez-vous à la documentation de Prometheus.

route:
 group_by: [cluster]
 receiver: 'pagerduty-notifications'
 group_interval: 5m
 routes:
  - match:
      service: database
    receiver: 'database-notifcations'

receivers:
- name: 'pagerduty-notifications'
  pagerduty_configs:
  - service_key: 'primary-integration-key'

- name: 'database-notifcations'
  pagerduty_configs:
  - service_key: 'database-integration-key'

Exemple de configuration de route pour les alertes de scan de conformité

Lors de la configuration des itinéraires pour les alertes rancher-compliance, vous pouvez spécifier la correspondance en utilisant la paire clé-valeur job: rancher-compliance-scan.

Par exemple, la configuration de route suivante pourrait être utilisée avec un récepteur Slack nommé test-compliance :

spec:
  receiver: test-compliance
  group_by:
#    - string
  group_wait: 30s
  group_interval: 30s
  repeat_interval: 30s
  match:
    job: rancher-compliance-scan
#    key: string
  match_re:
    {}
#    key: string

Pour plus d’informations sur l’activation des alertes pour rancher-compliance, voir cette section.

CA de confiance pour les Notificateurs

Si vous devez ajouter un CA de confiance à votre notificateur, suivez les étapes dans cette section.