alertmanager与exporters、cadvisor一样,都是独立于prometheus项目,这里我们也使用docker方式部署alertmanager。

1、下载镜像

镜像地址:https://hub.docker.com/r/prom/alertmanager/tags

[root@prometheus-server ~]# docker pull prom/alertmanager

2、运行

## 创建容器映射目录,存放配置文件
[root@prometheus-server ~]# mkdir /etc/alertmanager
## 创建alertmanager默认配置文件
[root@prometheus-server ~]# vim /etc/alertmanager/alertmanager.yml
global:
  resolve_timeout: 5m
route:
  group_by: ['alertname']
  group_wait: 10s
  group_interval: 10s
  repeat_interval: 1h
  receiver: 'web.hook'
receivers:
- name: 'web.hook'
  webhook_configs:
  - url: 'http://127.0.0.1:5001/'
inhibit_rules:
  - source_match:
      severity: 'critical'
    target_match:
      severity: 'warning'
    equal: ['alertname', 'dev', 'instance']
 
[root@prometheus-server ~]# docker run -d -p 9093:9093 \
 -v /etc/alertmanager:/etc/alertmanager \
 -v /var/lib/alertmanager:/alertmanager \
 --name alertmanager prom/alertmanager \
 --config.file="/etc/alertmanager/alertmanager.yml" \
 --storage.path=/alertmanager

参数说明:alertmanager官方容器中配置文件为config.yml,这里我们指定配置文件为alertmanager.yml,注意命令先后顺序。

3、配置邮件报警

[root@prometheus-server ~]# vim /etc/alertmanager/alertmanager.yml
global:
smtp_smarthost: 'smtp.163.com:25'
smtp_from: ******@163.com'
smtp_auth_username: '******@163com'
smtp_auth_password: '****'
smtp_require_tls: false route:
receiver: dev-mail ## 接收者 receivers:
- name: 'dev-mail' ## 与route中的 receiver一致
email_configs:
- to: '****@vanje.com.cn.com'

4、prometheus添加告警规则

[root@prometheus-server ~]# mkdir /etc/prometheus/rules
[root@prometheus-server ~]# vim /etc/prometheus/rules/node_alerts.yml
groups:
- name: node_alerts
  rules:
  - alert: InstanceDown ## alert名称
    expr: up{job='node'} == 0 ## 报警条件
    for: 1m ## 超过1分钟,prometheus会把报警信息发送至alertmanger
    labels:
      severity: "warning"
    annotations:
      summary: Host {{ $labels.instance }} of {{ $labels.job }} is Down!

5、Prometheus开启alertmanager报警

[root@prometheus-server ~]# vim /etc/prometheus/prometheus.yml 
### 开启alertmanager监控
alerting:
  alertmanagers:
  - static_configs:
    - targets:
       - 10.10.0.13:9093 ## alertmanager服务地址
## 添加prometheus对alertmanager服务的监控
- job_name: 'alertmanager'
    static_configs:
    - targets: ['10.10.0.13:9093']

重启prometheus及 alertmanager,可以看到prometheus已经加载刚定义的报警规则

6、验证

我们随便停一个节点的node_exporter服务,然后查看prometheus上 报警信息(这里我们停掉10.10.0.11服务器node_exporter服务)

一分钟后,查看alertmanager报警信息,此时邮件也会收到报警

Prometheus入门到放弃(5)之AlertManager部署的更多相关文章

  1. Prometheus入门到放弃(6)之AlertManager进阶

    前面几个篇幅,我们介绍了alertmanger报警配置,在实际运维过程中,我们都会遇到,报警的重复发送,以及报警信息关联性报警.接下来我们就介绍下通过alertmanger对告警信息的收敛.一.告警分 ...

  2. Prometheus入门到放弃(7)之redis_exporter部署

    redis监控,prometheus需要使用redis_exporter客户端. 这里我们采用docker方式部署,既可以部署在redis所在服务器,也可以部署在其他机器: docker镜像地址:ht ...

  3. Prometheus入门到放弃(2)之Node_export安装部署

    1.下载安装 node_exporter服务需要在三台机器都安装,这里我们以一台机器为例: 地址:https://prometheus.io/download/ ### 另外两个节点部署时,需要先创建 ...

  4. Prometheus入门到放弃(1)之Prometheus安装部署

    规划: IP 角色 版本 10.10.0.13 prometheus-server 2.10 10.10.0.11 node_exporter 0.18.1 10.10.0.12 node_expor ...

  5. Prometheus入门到放弃(3)之Grafana展示监控数据

    grafana我们这里采用docker方式部署 1.下载镜像 镜像官网地址:https://hub.docker.com/r/grafana/grafana/tags [root@prometheus ...

  6. Prometheus入门到放弃(4)之cadvisor监控docker容器

    Prometheus监控docker容器运行状态,我们用到cadvisor服务,cadvisor我们这里也采用docker方式直接运行. 1.下载镜像 [root@prometheus-server ...

  7. saltstack入门至放弃之salt安装部署

    学习了一段时间的saltstack,是时候记录下了.友提:学习环境是两台centos_7.2_x64机器 系统初始化: 两台机器执行以下脚本即可(友提:两台服务器的主机名配置在/etc/hosts中, ...

  8. K8S从入门到放弃系列-(16)Kubernetes集群Prometheus-operator监控部署

    Prometheus Operator不同于Prometheus,Prometheus Operator是 CoreOS 开源的一套用于管理在 Kubernetes 集群上的 Prometheus 控 ...

  9. OpenStack从入门到放弃

    OpenStack从入门到放弃 目录: 为何选择云计算/云计算之前遇到的问题 什么是云计算 云服务模式 云应用形式 传统应用与云感知应用 openstack及其相关组件介绍 flat/vlan/gre ...

随机推荐

  1. ImportError: cannot import name HTTPSHandler

    原因在于openssl,openssl-devel两个文件包未正确安装.用下来的命令来安装: 2 yum install openssl -y yum install openssl-devel -y ...

  2. width: calc(100% - 80px); 屏幕自适应方法

    width: calc(100% - 80px); 屏幕自适应方法

  3. Greenplum常用的gp_toolkit & pg_catalog监控语句

    gp_toolkit 说明 Greenplum数据库提供了一个名为gp_tooikit的管理schema,该schema下有关于查询系统目录,日志文件, 用户创建(databases,schema,t ...

  4. HDU 1542.Atlantis-线段树求矩形面积并(离散化、扫描线/线段树)-贴模板

    好久没写过博客了,这学期不是很有热情去写博客,写过的题也懒得写题解.现在来水一水博客,写一下若干年前的题目的题解. Atlantis Time Limit: 2000/1000 MS (Java/Ot ...

  5. 微众银行Java面试-社招-一面(2019/07)

    个人情况 2017年毕业,普通本科,计算机科学与技术专业,毕业后在一个二三线小城市从事Java开发,2年Java开发经验.做过分布式开发,没有高并发的处理经验,平时做To G的项目居多.写下面经是希望 ...

  6. P3709 大爷的字符串题(莫队+结论)

    题目 P3709 大爷的字符串题 做法 有一个显然的结论:一段区间里最小答案为众数的个数 用莫队来离线求众数 \(tmp_i\)表示出现\(i\)次的数的个数,\(num_i\)表示\(i\)出现的次 ...

  7. Hotspot研究-工程结构

  8. vscode插件开发之如何玩转vscode命令

    这里以插件开发为例,VsCode之所以那么强大是因为它背后有千千万万的开发者们为其开发大量功能插件,WordPress同理. 那么如何玩转VsCode命令呢(以插件开发为例)? 官方文档必不可少 ht ...

  9. 记录linux上mongo迁移使用的命令

    首先mongodb的文件路径必须在系统盘,这里是 这里安装路径 /usr/mongodb/bin 一般迁移的只是db文件夹和log文件 看配置文件内容 port=27017 #端口 dbpath=/d ...

  10. svg入门详解

    一.svg是什么? SVG 意为可缩放矢量图形(Scalable Vector Graphics). SVG 是使用 XML 来描述二维图形和绘图程序的语言. SVG 图像在放大或改变尺寸的情况下其图 ...