最新要闻
- 全球微头条丨照坏了手机的激光雷达:会照瞎你的眼吗?
- 全球第一大癌!39岁女儿与67岁父亲先后确诊乳腺癌
- 世界微速讯:电动自行车电池容量正常但里程不足?5招教你解决
- 环球讯息:延迟骤降50%:魅族20系列首发游戏模式6.0
- 热文:秒独显的3GHz高频缩水 AMD锐龙7000HS上市前又挨一刀
- 房贷60万20年和30年利息差多少?两种还款方式利息对比
- 【环球热闻】3月1日广东男篮主场见 威姆斯晒登机照:回家
- 焦点资讯:美国高中地下发现加密货币矿场 7个月耗电费12万元
- 直屏手机为何越来越多了?原因有三个
- 新资讯:近250家公司用ChatGPT取代员工:过半考核优秀 能省10万美元
- 环球滚动:诺基亚60年首次更换Logo后:手机品牌继续沿用经典蓝底Logo
- 环球快报:比老司机还稳!特斯拉主动安全压线避让变道前车:车主惊叹
- 天天头条:三睾拟双身虫
- 世界新动态:八代将军吉宗下载_八代将军吉宗
- 女子驾奇瑞小蚂蚁 高速上油门到底车速为0!4S店:退款退车
- 世界速看:暴雪联合时尚品牌推出《暗黑4》主题女装:这画风太诡异了
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
Prometheus配置Alertmanager(钉钉告警)
Prometheus配置Alertmanager(钉钉告警)
简介
- Alertmanager 主要用于接收 Prometheus 发送的告警信息,它支持丰富的告警通知渠道,例如邮件、微信、钉钉、Slack 等常用沟通工具,而且很容易做到告警信息进行去重,降噪,分组等,是一款很好用的告警通知系统。
- 下图是Alertmanager与Prometheus的基本架构
一,二进制部署 Alertmanager
- 下载地址:https://github.com/prometheus/alertmanager/releases
本文选择的安装版本为0.24.0
- 根据服务器情况选择安装目录,上传安装包。
cd /prometheus#解压tar -xvzf alertmanager-0.24.0.linux-amd64.tar.gzmv alertmanager-0.24.0.linux-amd64 alertmanagercd alertmanager
- 进行系统service编写
创建alertmanager.service
配置文件
(资料图)
cd /usr/lib/systemd/systemvim alertmanager.service
alertmanager.service
文件填入如下内容后保存:wq
[Unit]Description=https://prometheus.io[Service]Restart=on-failureExecStart=/prometheus/alertmanager/alertmanager --config.file=/prometheus/alertmanager/alertmanager.yml --storage.path=/prometheus/alertmanager/data/[Install]WantedBy=multi-user.target
- 查看配置文件
cat alertmanager.service
- 刷新服务配置并启动服务
systemctl daemon-reloadsystemctl start alertmanager.service
- 查看服务运行状态
systemctl status alertmanager.service
- 设置开机自启动
systemctl enable alertmanager.service
访问系统
- 访问系统 http://服务器ip:9093,注意防火墙或安全组开放端口
- 若看到如上界面则说明alertmanager部署成功
二,配置钉钉机器人
打开钉钉的智能群助手,点击添加机器人
选择自定义机器人
复制webhook地址后点击保存
三,安装钉钉服务(不推荐Docker安装,新版本的安装文档已经很久没更新)
1,二进制安装
- 下载地址:https://github.com/timonwong/prometheus-webhook-dingtalk/releases
- 本次安装版本为
2.1.0
- 根据服务器情况选择安装目录,上传安装包。
- 部署包下载完毕,开始安装
cd /prometheustar -xvzf prometheus-webhook-dingtalk-2.1.0.linux-amd64.tar.gzmv prometheus-webhook-dingtalk-2.1.0.linux-amd64 webhook_dingtalkcd webhook_dingtalk
- 编写配置文件(复制之后切记删除#的所有注释,否则启动服务时会报错),将上述获取的钉钉webhook地址填写到如下文件
vim dingtalk.yml
timeout: 5stargets: webhook_robot: # 钉钉机器人创建后的webhook地址 url: https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxx webhook_mention_all: # 钉钉机器人创建后的webhook地址 url: https://oapi.dingtalk.com/robot/send?access_token=xxxxxxxxxxxx # 提醒全员 mention: all: true
- 进行系统service编写
创建webhook_dingtalk
配置文件
cd /usr/lib/systemd/systemvim webhook_dingtalk.service
- webhook_dingtalk.service 文件填入如下内容后保存
:wq
[Unit]Description=https://prometheus.io[Service]Restart=on-failureExecStart=/prometheus/webhook_dingtalk/prometheus-webhook-dingtalk --config.file=/prometheus/webhook_dingtalk/dingtalk.yml --web.listen-address=:8060[Install]WantedBy=multi-user.target
- 查看配置文件
cat webhook_dingtalk.service
- 刷新服务配置并启动服务
systemctl daemon-reloadsystemctl start webhook_dingtalk.service
- 查看服务运行状态
systemctl status webhook_dingtalk.service
- 设置开机自启动
systemctl enable webhook_dingtalk.service
- 我们记下
urls=http://localhost:8060/dingtalk/webhook_robot/send
这一段值,接下来的配置会用上
配置Alertmanager
打开
/prometheus/alertmanager/alertmanager.yml
,修改为如下内容global: # 在没有报警的情况下声明为已解决的时间 resolve_timeout: 5mroute: # 接收到告警后到自定义分组 group_by: ["alertname"] # 分组创建后初始化等待时长 group_wait: 10s # 告警信息发送之前的等待时长 group_interval: 30s # 重复报警的间隔时长 repeat_interval: 5m # 默认消息接收 receiver: "dingtalk"receivers: # 钉钉 - name: "dingtalk" webhook_configs: # prometheus-webhook-dingtalk服务的地址 - url: http://1xx.xx.xx.7:8060/dingtalk/webhook_robot/send send_resolved: true
在prometheus安装文件夹根目录增加
alert_rules.yml
配置文件,内容如下groups: - name: alert_rules rules: - alert: CpuUsageAlertWarning expr: sum(avg(irate(node_cpu_seconds_total{mode!="idle"}[5m])) without (cpu)) by (instance) > 0.60 for: 2m labels: level: warning annotations: summary: "Instance {{ $labels.instance }} CPU usage high" description: "{{ $labels.instance }} CPU usage above 60% (current value: {{ $value }})" - alert: CpuUsageAlertSerious #expr: sum(avg(irate(node_cpu_seconds_total{mode!="idle"}[5m])) without (cpu)) by (instance) > 0.85 expr: (100 - (avg by (instance) (irate(node_cpu_seconds_total{job=~".*",mode="idle"}[5m])) * 100)) > 85 for: 3m labels: level: serious annotations: summary: "Instance {{ $labels.instance }} CPU usage high" description: "{{ $labels.instance }} CPU usage above 85% (current value: {{ $value }})" - alert: MemUsageAlertWarning expr: avg by(instance) ((1 - (node_memory_MemFree_bytes + node_memory_Buffers_bytes + node_memory_Cached_bytes) / node_memory_MemTotal_bytes) * 100) > 70 for: 2m labels: level: warning annotations: summary: "Instance {{ $labels.instance }} MEM usage high" description: "{{$labels.instance}}: MEM usage is above 70% (current value is: {{ $value }})" - alert: MemUsageAlertSerious expr: (node_memory_MemTotal_bytes - node_memory_MemAvailable_bytes)/node_memory_MemTotal_bytes > 0.90 for: 3m labels: level: serious annotations: summary: "Instance {{ $labels.instance }} MEM usage high" description: "{{ $labels.instance }} MEM usage above 90% (current value: {{ $value }})" - alert: DiskUsageAlertWarning expr: (1 - node_filesystem_free_bytes{fstype!="rootfs",mountpoint!="",mountpoint!~"/(run|var|sys|dev).*"} / node_filesystem_size_bytes) * 100 > 80 for: 2m labels: level: warning annotations: summary: "Instance {{ $labels.instance }} Disk usage high" description: "{{$labels.instance}}: Disk usage is above 80% (current value is: {{ $value }})" - alert: DiskUsageAlertSerious expr: (1 - node_filesystem_free_bytes{fstype!="rootfs",mountpoint!="",mountpoint!~"/(run|var|sys|dev).*"} / node_filesystem_size_bytes) * 100 > 90 for: 3m labels: level: serious annotations: summary: "Instance {{ $labels.instance }} Disk usage high" description: "{{$labels.instance}}: Disk usage is above 90% (current value is: {{ $value }})" - alert: NodeFileDescriptorUsage expr: avg by (instance) (node_filefd_allocated{} / node_filefd_maximum{}) * 100 > 60 for: 2m labels: level: warning annotations: summary: "Instance {{ $labels.instance }} File Descriptor usage high" description: "{{$labels.instance}}: File Descriptor usage is above 60% (current value is: {{ $value }})" - alert: NodeLoad15 expr: avg by (instance) (node_load15{}) > 80 for: 2m labels: level: warning annotations: summary: "Instance {{ $labels.instance }} Load15 usage high" description: "{{$labels.instance}}: Load15 is above 80 (current value is: {{ $value }})" - alert: NodeAgentStatus expr: avg by (instance) (up{}) == 0 for: 2m labels: level: warning annotations: summary: "{{$labels.instance}}: has been down" description: "{{$labels.instance}}: Node_Exporter Agent is down (current value is: {{ $value }})" - alert: NodeProcsBlocked expr: avg by (instance) (node_procs_blocked{}) > 10 for: 2m labels: level: warning annotations: summary: "Instance {{ $labels.instance }} Process Blocked usage high" description: "{{$labels.instance}}: Node Blocked Procs detected! above 10 (current value is: {{ $value }})" - alert: NetworkTransmitRate #expr: avg by (instance) (floor(irate(node_network_transmit_bytes_total{device="ens192"}[2m]) / 1024 / 1024)) > 50 expr: avg by (instance) (floor(irate(node_network_transmit_bytes_total{}[2m]) / 1024 / 1024 * 8 )) > 40 for: 1m labels: level: warning annotations: summary: "Instance {{ $labels.instance }} Network Transmit Rate usage high" description: "{{$labels.instance}}: Node Transmit Rate (Upload) is above 40Mbps/s (current value is: {{ $value }}Mbps/s)" - alert: NetworkReceiveRate #expr: avg by (instance) (floor(irate(node_network_receive_bytes_total{device="ens192"}[2m]) / 1024 / 1024)) > 50 expr: avg by (instance) (floor(irate(node_network_receive_bytes_total{}[2m]) / 1024 / 1024 * 8 )) > 40 for: 1m labels: level: warning annotations: summary: "Instance {{ $labels.instance }} Network Receive Rate usage high" description: "{{$labels.instance}}: Node Receive Rate (Download) is above 40Mbps/s (current value is: {{ $value }}Mbps/s)" - alert: DiskReadRate expr: avg by (instance) (floor(irate(node_disk_read_bytes_total{}[2m]) / 1024 )) > 200 for: 2m labels: level: warning annotations: summary: "Instance {{ $labels.instance }} Disk Read Rate usage high" description: "{{$labels.instance}}: Node Disk Read Rate is above 200KB/s (current value is: {{ $value }}KB/s)" - alert: DiskWriteRate expr: avg by (instance) (floor(irate(node_disk_written_bytes_total{}[2m]) / 1024 / 1024 )) > 20 for: 2m labels: level: warning annotations: summary: "Instance {{ $labels.instance }} Disk Write Rate usage high" description: "{{$labels.instance}}: Node Disk Write Rate is above 20MB/s (current value is: {{ $value }}MB/s)"
修改
prometheys.yml
,最上方三个节点改为如下配置global: scrape_interval: 15s evaluation_interval: 15s alerting: alertmanagers: - static_configs: # alertmanager服务地址 - targets: ["11x.xx.x.7:9093"]rule_files: - "alert_rules.yml"
执行
curl -XPOST localhost:9090/-/reload
刷新prometheus配置执行
systemctl restart alertmanger.service
或docker restart alertmanager
刷新alertmanger服务
验证配置
打开prometheus服务,可以看到alerts栏出现了很多规则
此时我们手动关闭一个节点
docker stop mysqld
刷新prometheus,可以看到有一个节点颜色改变,进入了pending状态
稍等片刻,alertmanager.yml 配置为等待5m,颜色变为红色,进入了firing状态
查看alertmanager服务,也出现了相关告警节点
此时如果配置无误,会收到钉钉机器人的一条信息
这时我们重启mysqld-exporter服务
docker start mysqld
过了配置的等待时长,若服务没有在期间断开,钉钉机器人会发送一条恢复状态的信息
后记
- Prometheus详细安装教程
-
Prometheus配置Alertmanager(钉钉告警)
Prometheus配置Alertmanager(钉钉告警)简介Alertmanager主要用于接收Prometheus发送的告警信息,它支...
来源: Prometheus配置Alertmanager(钉钉告警)
全球微头条丨照坏了手机的激光雷达:会照瞎你的眼吗?
全球第一大癌!39岁女儿与67岁父亲先后确诊乳腺癌
世界微速讯:电动自行车电池容量正常但里程不足?5招教你解决
环球讯息:延迟骤降50%:魅族20系列首发游戏模式6.0
热文:秒独显的3GHz高频缩水 AMD锐龙7000HS上市前又挨一刀
房贷60万20年和30年利息差多少?两种还款方式利息对比
当前视点!WHAT IS PPM Encoder ?
焦点速递!记录--关于无感刷新Token,我是这样子做的
热点!如何使用appuploader制作apple证书
世界热资讯!JMeter的基础认识
【环球热闻】3月1日广东男篮主场见 威姆斯晒登机照:回家
【天天报资讯】Redis 缓存过期策略和内存淘汰策略
环球热头条丨【复盘】搭建日志平台的复盘与思考
天天微动态丨sed命令的使用(替换)
环球实时:软件工程阅读笔记
Android ADB 备忘清单_开发速查表分享
焦点资讯:美国高中地下发现加密货币矿场 7个月耗电费12万元
直屏手机为何越来越多了?原因有三个
新资讯:近250家公司用ChatGPT取代员工:过半考核优秀 能省10万美元
环球滚动:诺基亚60年首次更换Logo后:手机品牌继续沿用经典蓝底Logo
环球快报:比老司机还稳!特斯拉主动安全压线避让变道前车:车主惊叹
天天头条:三睾拟双身虫
Prometheus插件安装(mysql_exporter)
消息!河南农信社数字化转型实践方案
今日讯!剑指 Offer 55 - I. 二叉树的深度(java解题)
世界新动态:八代将军吉宗下载_八代将军吉宗
女子驾奇瑞小蚂蚁 高速上油门到底车速为0!4S店:退款退车
世界速看:暴雪联合时尚品牌推出《暗黑4》主题女装:这画风太诡异了
焦点播报:董明珠:格力员工一人一套房承诺不变
个人私生活被恶搞辣眼?董明珠:有些自媒体为了赚钱不择手段 低级下流无聊
一文看懂小米无线AR眼镜探索版:自研微手势 隔空就能刷抖音
数据结构刷题2023.02.27小记
天天即时看!Ubuntu-深度学习环境搭建(yolov3)
焦点滚动:学习swoole之前,你需要知道的几件事
世界看热讯:流氓APP再见!26条新规严管移动应用:不得欺骗误导用户
Win11 22H2“Moment 2”更新快了:将在未来几周推送
每日讯息!男子醉驾被查也不让新手妻子开车:为了不要出现更大的事故
【全球新要闻】为迎接中国游客!韩国旅游业也是拼了:推中文菜单、背汉语、招募中文职员
手一抖被迫看广告!工信部通知:禁止高灵敏度“摇一摇”
当前资讯!宜兴购房补贴本科生可以申请吗?
焦点关注:ChatGPT的隐私安全问题及隐私保护技术
无关风月是什么意思?无关风月我题序等你回是什么歌?
小盆友是什么意思?小盆友生日祝福成语有哪些?
这款MOD可以让《原子之心》双子舞伶露脸:好看吗?
天天播报:中兴发布小方糖路由器:双千兆设计 首发99元
考验信仰、财力的时候到了!丰田加价神车新一代埃尔法曝光
13代酷睿CPU热卖 Intel承诺员工薪酬会涨回来:基本工资100%满血
每日消息!形似比亚迪仰望U8 奇瑞捷途旅行者官图发布:保时捷前总监操刀
电视剧红狐荣乡君是什么人?红狐电视剧演员表介绍
刻在我心底的名字是哪部电影的主题曲?刻在我心底的名字歌词是什么?
win7快速启动栏在哪里?win7快速启动栏怎么使用?
东芝ac100怎样刷系统?东芝ac100安卓笔记本多少钱?
超长待机智能手机有哪些?超长待机智能手机排行榜
三星GALAXY i5700什么时候上市的?三星GALAXY i5700怎么关机?
世界热头条丨谷歌邮箱注册
环球观察:Prometheus插件安装(NodeExporter)
焦点热讯:Redis高频面试题总结
速读:财政部:截至1月末,全国地方政府债务余额357018亿元
聚焦:威马员工在线讨薪 吉利副总裁:我这里缺人、可以考虑下
全球看点:一箱油续航轻松破千公里 五菱凯捷混动铂金版上市:12.98万起
摩托罗拉rizr纵向卷轴屏手机亮相:屏幕可伸长
国内能买到!ZERO SR-X概念电动摩托发布:110马力、能跑300公里
当前关注:送冰极洁面霜:妮维雅男士控油补水洗面奶24.9元大促
天天热推荐:Mysql 自定义目录安装
世界资讯:武汉Java培训班哪家好?大家都要怎么挑选
全球速看:SQL行转列、列转行(SQL Server版)
世界视点!南京Java培训班哪家好,什么样的可选
什么是潮吹
担心的事儿发生了:已有企业在用ChatGPT取代员工
每日热门:iPhone 15 Pro Max与14 Pro Max对比:明显更厚了!妥妥半斤机
纳智捷当街加油 车主现身说法:从郑州到广州加了5次
环球速递!半价大促:五芳斋豆沙青团6枚9.9元发车 清甜绵软
全球最早上映!任天堂《超级马力欧兄弟》大电影内地定档4月5日
世界最新:总结SpringBoot1.x迁移到2.x需要注意的问题
全球短讯!Spring Boot 实现日志链路追踪,无需引入组件,让日志定位更方便!
代理设计模式还不会?2分钟搞定
【世界报资讯】河南省通许县:“中国酸辣粉之都”正式揭牌
天天热门:微信下重拳:上万个群被封杀 此类行为千万别做
环球微头条丨程序员20年喝近2吨可乐屡患结石 几乎天天喝
联想推ThinkPad Z16 Gen 2笔记本:锐龙7000系列 可选4K+屏
双子姐妹、冰箱很带感 《原子之心》游戏已被破解:俄罗斯自己黑客干的
还敢生吃?日本即将核污水倒入大海 降低水产品氚活度分析精度
世界观天下!老外首次用上徕卡影像!小米13/Pro国际版发布:999欧元起
全球看热讯:9岁女演员获柏林电影节最佳主角:史上最年轻获奖者
今日热门!高三女生因百日誓师热血发言表情被网暴 父亲怒回应:我们的骄傲 请尊重
《流浪地球2》导演郭帆让学生们不要用ChatGPT写作业:老师分辨不出来
读Java性能权威指南(第2版)笔记03_ Java SE API技巧中
美国铁路烂到家:“毒列车公司”再次发生脱轨事故 问题没法解决
【世界速看料】昔日手机巨头换新!诺基亚换全新Logo 刷新认识:网友直呼爷青结
每日热议!残损货币及不宜流通货币常识_不宜流通人民币与残损币区别
AMD RX 7900显卡价格在中国崩盘了!两个月暴跌1400元
世界滚动:不完整的爱情
每日动态!怎样提高空间想象能力 如何提高空间想象能力
全球速看:量化交易基础 - 10 - 拟合
全球速读:Kafka简单介绍和安装
当前快讯:委员蒋胜男建议对8小时工作制加强监督:你一天干几小时?
CentOS7安装nvm和node
局域网实现PC、Pad、Android互联
世界速讯:三大范式