alertmanager

https://www.jianshu.com/p/655cb5f85a33

https://www.cnblogs.com/z-qinfeng/p/12748240.html

Alertmanager 简介

Alertmanager是一个独立的告警模块,接收Prometheus等客户端发来的警报,之后通过分组、删除重复等处理,并将它们通过路由发送给正确的接收器。
告警方式可以按照不同的规则发送给不同的模块负责人,Alertmanager支持Email, Slack,等告警方式, 也可以通过webhook接入钉钉等国内IM工具。是一款前卫的告警通知系统。

部署方式

  1. 二进制包、
  2. 容器方式
  3. 源码方式安装。

相关概念

  1. 分组
    分组将类似性质的警报分类为单个通知。当许多系统同时发生故障并且可能同时触发数百到数千个警报时,此功能特别有用。
    示例:发生网络分区时,群集中正在运行数十个或数百个服务实例。您有一半的服务实例不再可以访问数据库。Prometheus中的警报规则配置为在每个服务实例无法与数据库通信时为其发送警报。结果,数百个警报被发送到Alertmanager。
    作为用户,人们只希望获得一个页面,同时仍然能够准确查看受影响的服务实例。因此,可以将Alertmanager配置为按警报的群集和警报名称分组警报,以便它发送一个紧凑的通知。
    警报的分组,分组通知的时间以及这些通知的接收者由配置文件中的路由树配置。

  2. 沉默
    沉默是一种简单的特定时间静音提醒的机制。一种沉默是通过匹配器来配置,就像路由树一样。传入的警报会匹配RE,如果匹配,将不会为此警报发送通知。
    在Alertmanager的Web界面中配置沉默。

  3. 抑制
    抑制是指当警报发出后,停止重复发送由此警报引发其他错误的警报的机制。
    例如,当警报被触发,通知整个集群不可达,可以配置Alertmanager忽略由该警报触发而产生的所有其他警报,这可以防止通知数百或数千与此问题不相关的其他警报。
    抑制机制可以通过Alertmanager的配置文件来配置。

架构图

alertmanager_第1张图片

二进制方式安装

1 下载软件包
https://prometheus.io/download/
alertmanager_第2张图片2. 上传解压

Alertmanager配置概述

在Alertmanager配置中一般会包含以下几个主要部分:

  • 全局配置(global):用于定义一些全局的公共参数,如全局的SMTP配置,Slack配置等内容;
  • 模板(templates):用于定义告警通知时的模板,如HTML模板,邮件模板等;
  • 告警路由(route):根据标签匹配,确定当前告警应该如何处理;
  • 接收人(receivers):接收人是一个抽象的概念,它可以是一个邮箱也可以是微信,Slack或者Webhook等,接收人一般配合告警路由使用;
  • 抑制规则(inhibit_rules):合理设置抑制规则可以减少垃圾告警的产生

你可能感兴趣的:(istio)