工信部 网站备案 上传电子,银行门户网站建设方案,无锡哪里有做网站的公司,南宁seo推广经验一、概述 prometheus通过规则文件对比抓取到的数据#xff0c;来判断是否触发告警#xff0c;我们通过配置告警的工具altermanager进行告警通知#xff1b; 规则文件#xff0c;写的就是#xff0c;当我们获取到的PromeQL的值到达一个设置的规则后#xff0c;触发告警来判断是否触发告警我们通过配置告警的工具altermanager进行告警通知 规则文件写的就是当我们获取到的PromeQL的值到达一个设置的规则后触发告警 也就是说规则文件是出发告警的关键而altermanager是告警的手段、工具。 二、安装部署alertmanager工具
1软件包获取方式
下载地址 wget https://github.com/prometheus/alertmanager/releases/download/v0.26.0/alertmanager-0.26.0.linux-amd64.tar.gz 为了方便学习我给大家也准备了百度云盘的安装包 链接https://pan.baidu.com/s/1BgN8Lc5zrqakX8XNEwxh4Q?pwdo5g7 提取码o5g7 2上传解压软件包 [rootprometheus-server32 ~]# rz -E [rootprometheus-server32 ~]# mkdir -pv /prometheus/softwares/ [rootprometheus-server32 ~]# tar xf alertmanager-0.26.0.linux-amd64.tar.gz -C /prometheus/softwares/ [rootprometheus-server32 ~]# ln -svf /prometheus/softwares/alertmanager-0.26.0.linux-amd64/ /prometheus/softwares/alertmanager [rootprometheus-server32 ~]# cd /prometheus/softwares/alertmanager/ 三、配置alertmanager邮件告警
1编辑alertmanager配置文件 [rootprometheus-server32 ~]# cat /prometheus/softwares/alertmanager/alertmanager.yml #一、发件人信息配置 global: #解析失败超时时间 resolve_timeout: 5m #【发件人】邮箱 smtp_from: 626080079qq.com #【邮箱官方主机】地址及端口 smtp_smarthost: smtp.qq.com:465 #【发件人】邮箱 smtp_auth_username: 626080079qq.com #【发件人】邮箱授权码 smtp_auth_password: ubgotgvzrdgkbfcj #发送信息是否tls加密 smtp_require_tls: false smtp_hello: qq.com #二、报警的间隔信息配置 route: group_by: [alertname] group_wait: 5s group_interval: 5s #重复报警的间隔时间如果报警问题没有解决则会间隔指定的时间继续触发报警比如5分钟 repeat_interval: 5m #采用什么报警方式本次学习我们使用邮箱 receiver: email #三、接收告警的目标信息编辑谁来接收告警 receivers: #定义接收者名称 - name: email email_configs: #【收件人】 - to: 626080079qq.com send_resolved: true inhibit_rules: - source_match: #匹配的告警级别 severity: critical target_match: severity: warning equal: [alertname, dev, instance] 2启动alertmanager [rootprometheus-server32 ~]# ./prometheus/softwares/alertmanager/alertmanager 3浏览器访问9093端口 至此告警的中间件就配置完成了
四、配置prometheus报警规则
1编辑配置文件 [rootprometheus-server31 ~]# vim /prometheus/softwares/prometheus-2.37.8.linux-amd64/prometheus.yml global: scrape_interval: 3s evaluation_interval: 15s ##################################### #告警的中间件地址alertmanager的访问地址 alerting: alertmanagers: - static_configs: - targets: - 10.0.0.32:9093 #规则文件在哪里路径 rule_files: - /prometheus/softwares/rules.yml ##################################### scrape_configs: - job_name: prometheus-alert-rule static_configs: - targets: [10.0.0.41:9100] 2编辑规则文件 规则文件内容主要目的是 1当监控数据达到什么数值后。触发alertmanager的报警 2报警的内容信息是什么 [rootprometheus-server31 ~]# vim /prometheus/softwares/rules.yml groups: - name: xinjizhiwa-alert rules: - alert: 41节点挂掉啦 #当promeQL这个语句0时节点挂掉开始报警 expr: up{instance10.0.0.41:9100} 0 #连续3s0才触发报警 for: 3s labels: prometheus: xinjizhiwa #被监控节点ip node: 10.0.0.41 annotations: summary: {{ $lables.instance }} 已停止运行超过 3s 3prometheus的配置文件语法检查 [rootprometheus-server31 prometheus-2.37.8.linux-amd64]# ./promtool check config prometheus.yml 4重新加载prometheus服务 curl -X POST http://10.0.0.31:9090/-/reload 五、模拟被监控项挂掉 [rootprometheus-node41 ~]# systemctl stop node-exporter.service 等待几秒钟收到告警邮件 至此alertmanager邮件告警就学习完毕了。