上述步骤完成后,我们就可以对告警进行通知配置了。在 SUSE Rancher UI 上进入集群/项目–工具–告警中我们可以对告警/告警组进行通知配置,在接收者中配置刚刚添加的 Webhook 通知
保存后触发告警后就可以发送到飞书进行告警通知了。
SUSE Rancher UI 测试不通过:检查 Rancher Server 服务到 PrometheusAlert 服务的网络是否能通讯;
飞书收不到告警信息:检查 PrometheusAlert 组件日志,查看是否正常发送告警消息到飞书;
飞书收到的告警消息有空白字段:检查 PrometheusAlert 中的自定义模版,通过测试发送检查告警内容是否错误。
PrometheusAlert 全家桶能够对市面上快速迭代的企业沟通工具提供告警支持,无论通过 SUSE Rancher 的告警功能或者其他的监控平台,都能很好地实现不同客户的自定义需求。稍微了解 Webhook 和 go template 的用户都能很快上手,但想要更好地使用 PrometheusAlert 全家桶,可能需要对监控告警体系和 go template 技能有所要求。
在作者看来,监控/告警体系的构建不是一蹴而就的,需要一定的时间慢慢累积,不断调整。“狼来了”的告警不应该被视为工作失误,反而能够促进监控/告警体系的完善。监控/告警从最开始的后知后觉,慢慢演变为先知先觉,这其中有很长的路要走。部分团队可能会觉得运维工程师无非就是上线部署、重启服务器,但正是有了这些运维工程师,通过正确的预警/监控/告警和深夜里处理告警的精神,才避免了一次又一次重大的事故。善待运维,完善监控体系,对技术永怀敬畏之心!
prometheusalert 文档:https://feiyu563.gitbook.io/prometheusalert/
prometheusalert 项目:https://github.com/feiyu563/PrometheusAlert/
SUSE Rancher 通知:https://docs.rancher.cn/docs/rancher2.5/monitoring-alerting/configuration/receiver/_index#webhook
SUSE Rancher 告警表达式参考:https://docs.rancher.cn/docs/rancher2.5/monitoring-alerting/expression/_index