运维之旅

  • Home
  • Blog
  • Archives
  • About Me
Leo zhou
  1. 首页
  2. kubernetes
  3. 正文

Prometheus Operator邮件报警细节

2020年01月03日 1812点热度 2人点赞 0条评论

Operator是基于Kubernetes的资源和控制器之上构建的概念,用来扩展 Kubernetes API,特定的应用程序控制器,目前官方提供了几种Operator的实现,而其中Prometheus Operator应用最为方便。核心原理是通过ServiceMonitor中间层,可以自定义资源管理。具体原理和安装方式可以通过GitHub操作。本文主要讨论使用Prometheus Operator邮件报警中容易出错的细节。

1.Prometheus Operator发送邮件报警的原理:通过自定义PrometheusRule方式添加rule规则,然后通过修改alertmanager-main中的参数项匹配对于的rule,最终进行邮件报警功能。

2.自定义的rule文件都会在prometheus-k8s的pod中/etc/prometheus/rules/prometheus-k8s路径自动生成配置文件进行调用,并且也可以在prometheus的Dashboard中的Aler页面查询到。

3.最核心的yaml文件就是安装Prometheus Operator时提供的alertmanager-main这个service,会直接调用alertmanager-secret.yaml文件,所以更新alertmanager-secret.yaml就可以自定义发送的监控的对象和邮件。

4.alertmanager-secret.yaml本身是base64加密后的数据,可以通过

echo "XXX" | base64 -d

查看下具体的内容,我们能操作的内容是删除原有的secret对象,然后让alertmanager-main重新调用新的secret对象,alertmanager就是我们自定义的yaml文件。

kubectl delete secret alertmanager-main -n monitoring
kubectl create secret generic alertmanager-main --from-file=alertmanager.yaml -n monitoring

5.注意smtp_require_tls需要填写false,不然发送不了邮件

global:
  resolve_timeout: 5m
  smtp_smarthost: 'smtp.exmail.qq.com:465'
  smtp_from: 'leozhou@leozhou.com'
  smtp_auth_username: 'leozhou@leozhou.com'
  smtp_auth_password: 'XXX'
  smtp_hello: 'leozhou.com'
  smtp_require_tls: false
route:
  group_by: ['job', 'severity']
  group_wait: 30s
  group_interval: 5m
  repeat_interval: 12h
  receiver: default
  routes:
  - match:
      alertname:  CPUThrottlingHigh#alertname就是可以匹配到自定义rule中alertname
    receiver: default
receivers:
- name: default
  email_configs:
  - to: 'leozhou@qq.com'
    send_resolved: true

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: k8s kubernetes Operator
最后更新:2020年01月03日

Leo zhou

点赞
< 上一篇
下一篇 >

文章评论

取消回复

Leo zhou

最新 热点 随机
最新 热点 随机
Prometheus+Alertmanager多方式报警设置 多节点集群思路 内网dns配置 MySQL集群配置思路 Docker搭建跨主机PXC集群
终端复用器tmux基础使用 多节点集群思路 Docker部署WordPress网站 kubernetes配置文件热更新细节 Docker-compose容易忽略的使用细节
标签聚合
keepalived mysql k8s zabbix docker kubernetes rancher nextcloud
分类目录
  • Code (5)
  • Deploy (9)
  • Docker (9)
  • elk (1)
  • kubernetes (7)
  • Linux (7)
  • Monitor (3)
搜索

COPYRIGHT © 2021 运维之旅. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS

蜀ICP备16022832号-3