Bitnami Prometheus Operator邮件告警已触发但未发送邮件问题求助
排查Bitnami Prometheus Operator邮件告警未送达问题
我尝试用Bitnami Prometheus Operator配置最简邮件告警,目前告警已在Prometheus和Grafana中触发,但始终收不到邮件。
现有配置
PrometheusRule 配置
apiVersion: monitoring.coreos.com/v1 kind: PrometheusRule metadata: name: prometheus-example-rules namespace: prometheus spec: groups: - name: ./example.rules rules: - alert: ExampleAlert expr: vector(1)
AlertmanagerConfig 配置
apiVersion: monitoring.coreos.com/v1alpha1 kind: AlertmanagerConfig metadata: name: config-example namespace: prometheus spec: route: receiver: 'gmail-notifications' receivers: - name: 'gmail-notifications' emailConfigs: - to: xxx@gmail.com from: xxx@gmail.com smarthost: smtp.gmail.com:587 authUsername: xxx@gmail.com authIdentity: xxx@gmail.com authPassword: name: alertmanager-email-secret key: authPassword sendResolved: true
告警状态:已在Prometheus UI、Grafana Alertmanager概览、Alertmanager UI中确认告警触发,但未收到邮件。
排查建议
验证Secret有效性
确认prometheus命名空间下的alertmanager-email-secret已正确创建,authPassword字段值无误:- 若使用Gmail且开启了两步验证,必须使用应用专用密码,而非账号原密码;
- 若未开启两步验证,需临时允许低安全性应用访问(不推荐,建议优先启用两步验证并使用应用密码);
- 执行命令检查Secret内容:
确保kubectl get secret alertmanager-email-secret -n prometheus -o yamldata.authPassword是密码的Base64编码结果。
查看Alertmanager日志
直接查看Alertmanager Pod的日志,定位邮件发送失败的具体原因(如认证错误、网络不通):kubectl logs -n prometheus -l app.kubernetes.io/name=alertmanager确认Prometheus与AlertmanagerConfig的关联
检查Prometheus自定义资源(CR)配置,确保已引用上述AlertmanagerConfig:apiVersion: monitoring.coreos.com/v1 kind: Prometheus metadata: name: prometheus namespace: prometheus spec: # 其他配置项... alerting: alertmanagerConfigs: - name: config-example namespace: prometheus apiVersion: monitoring.coreos.com/v1alpha1未关联的话,Prometheus不会将告警推送到该接收配置。
测试SMTP连通性
在Alertmanager Pod内部测试与Gmail SMTP服务器的连通性,确认网络无拦截:kubectl exec -n prometheus <alertmanager-pod-name> -- nc -zv smtp.gmail.com 587检查Alertmanager生效配置
登录Alertmanager UI,进入「Status」→「Config」页面,确认路由规则和接收者配置已正确加载,无冲突覆盖。
内容的提问来源于stack exchange,提问作者foxou33
相关产品推荐
相关产品推荐

