Cette page explique comment configurer un canal de notification SMTP (Simple Mail Transfer Protocol) pour les alertes Prometheus. Si vous choisissez de ne pas configurer ce canal de notification, vous pourrez toujours consulter les alertes dans infra-obs ou platform-obs.
Avant de commencer
Configurer l'appareil et installer le logiciel
Configurer des canaux de notification
Suivez les étapes ci-dessous pour configurer les canaux de notification Slack ou par e-mail :
Pour créer un canal de notification d'alerte personnalisé, hébergez le serveur SMTP dans votre réseau et préparez les informations de configuration SMTP (adresse IP, nom d'utilisateur, mot de passe, adresse e-mail du destinataire) pour créer la configuration Alertmanager. Vous pouvez vérifier l'exactitude de l'adresse IP de l'hôte SMTP en l'interrogeant depuis bm03.
Créez un fichier
cm.ymlavec le contenu suivant :smtp_smarthostdoit contenir l'adresse IP du serveur SMTP hébergé par le client.apiVersion: v1 kind: ConfigMap metadata: # The name must match the ConfigMap name specified in the ObservabilityPipeline custom resource. name: appl-alert-notification # The namespace must match the project namespace namespace: PROJECT_NAMESPACE data: # The file name must be alertmanager.yml alertmanager.yml: | global: smtp_smarthost: SMTP HOST IP ADDRESS smtp_from: FROM_EMAIL_ADDRESS # Give empty string for unsecured smtp server in username and password and false in smtp_require_tls. smtp_auth_username: USERNAME smtp_auth_password: PASSWORD smtp_require_tls: true route: group_by: ['alertname', 'cluster', 'service'] group_wait: 30s group_interval: 5m repeat_interval: 3h receiver: team-X-mails receivers: - name: 'team-X-mails' email_configs: - to: **RECIEVER_EMAIL_ID**Mettez à jour les champs obligatoires avec le contenu approprié.
Exécutez
kubectl apply -f cm.yaml.Créez une ressource personnalisée
ObservabilityPipelineavec les éléments suivants :# Configure observability pipeline apiVersion: observability.gdc.goog/v1 kind: ObservabilityPipeline metadata: # Choose namespace that matches the project's namespace namespace: PROJECT_NAMESPACE name: observability-config spec: # Configure Alertmanager alerting: # Permission: PA and AO # The alerts configuration must be in the key "alertmanager.yml" of the configMap alertmanagerConfig: CUSTOMIZED_CONFIGMAP_NAME ...Remplacez les éléments suivants :
- PROJECT_NAMESPACE : espace de noms de votre projet.
CUSTOMIZED_CONFIGMAP_NAME : le nom que vous avez utilisé pour votre fichier de configuration dans l'objet
ConfigMapdoit correspondre exactement au nom de l'objetConfigMap. Par exemple, si vous avez utiliséappl-alert-notificationcomme nomConfigMapà l'étape 2, utilisez le même nom pour votre fichier de configuration dans l'objetObservabilityPipeline.
Remplacez l'espace de noms par la valeur utilisée à l'étape précédente.
Exécuter
kubectl apply -f ob.yaml.Toutes les alertes visibles sur le tableau de bord Grafana du GDC déclenchent un e-mail si elles sont à l'état
firing. Lancez Grafana pour l'espace de noms que vous avez utilisé lors des étapes précédentes, puis recherchez les alertes à l'étatfiring. Les alertes sont envoyées à votre adresse e-mail.