最新要闻
- 因为余华的一封信,莫言要去东澳岛读书了
- 科创浪潮奔涌大湾区
- PDF问世30周年 每年6月15日成“PDF日”
- 中国空间站美景请查收!央视解析全新构型:三舱三船
- 最高额外降温3℃:猫头鹰针对AMD AM5插槽CPU推出散热支架-热门
- 世界观天下!苹果蝉联2023年凯度BrandZ最具价值全球百强榜首:腾讯跻身十强
- 中国自研唯一入选项目!《王者荣耀亚运版本》发布:共计63个英雄
- 毕马威:力争在2030年将毕马威全球的直接和间接碳排放在2019年基础上减半 今日热议
- 世界今热点:层层梯田上红山荞麦播种忙 全产业链带动农民增收
- 【当前独家】AMD自杀式降价 讯景RX 7900 XT显卡到手5299元(首发7399)
- 男生说猫屎臭被头上扣饭?官方回应:已经处理
- 天天滚动:与K60 Ultra同台发!Redmi 2K新平板曝光:只要千元
- 外卖小哥从10多米高大桥跳水救人:见义勇为获奖3万、免费上大学
- 焦点热讯:中国第一条时速350铁路明日调图:动车组重联 运力翻倍
- 2023内蒙古师范大学附属中学英才计划招生简章
- 今日热搜:开放中国依然是外商投资高地
手机
iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?
- 警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案
- 男子被关545天申国赔:获赔18万多 驳回精神抚慰金
- 3天内26名本土感染者,辽宁确诊人数已超安徽
- 广西柳州一男子因纠纷杀害三人后自首
- 洱海坠机4名机组人员被批准为烈士 数千干部群众悼念
家电
机器硬件监控,最简单的方案,没有之一
之前新东方的老师分享了他们通过 Telegraf、Loki、Nightingale 等工具来监控机器硬件状态的方案,具备很强的灵活性、平台性。本文会介绍一个相对轻量的方式,只需要一个二进制+一个脚本即可搞定,给各位朋友提供一种新的选择。
【资料图】
新东方的方案
物理机可以通过带外开启 SNMP,通过 SNMP 可以获取各个硬件模块的健康状态,Telegraf 提供了很多 input、output 插件,我们可以使用 Telegraf 的 snmp input 插件采集硬件状态信息,使用 loki output 插件写入 Loki,然后使用 Nightingale 做告警规则配置( Loki 兼容 Prometheus 的 Querying 接口),产出告警事件,之后可以发给钉钉、企微,或者发给FlashDuty做告警聚合降噪、排班、认领、升级等后续处理。
实操步骤
1. snmp 插件准备
snmp监控主要通过各种oid节点获取对应信息,分为get(单值)、walk(多值),telegraf的snmp插件默认是取单值,如果需要多值,可以找对应的table类型节点进行采集。
# 单值节点[[inputs.snmp.field]]name="uptime"oid=".1.3.6.1.2.1.1.3.0" # 多值节点,table类型[[inputs.snmp.table]]oid = ".1.3.6.1.2.1.31.1.1"name = "interface"
2. OID节点查找
不同型号的物理机,oid节点不同,可以通过对应型号的MIB文件进行查找。除了单独查找每个硬件的状态oid外,MIB文件中一般还能找到服务器整体状态的OID节点,可以直接取这个值,以下例子为浪潮服务器:
正常取值为"OK"、“Normal”,有报警的话取值为"WARNING"、“CRITICAL”。
采集OID=‘INSPUR-MIB::serverSystemHealthTable’(转换数字为’.1.3.6.1.4.1.37945.2.1.2.13.1’),可以先用snmpwalk命令看下取值:
#正常节点snmpwalk -v3 1.1.1.1 INSPUR-MIB::serverSystemHealthTableINSPUR-MIB::serverCurPowerState."" = STRING: "Power On"INSPUR-MIB::serverUIDState."" = STRING: "UID Off"INSPUR-MIB::serverCPUState."" = STRING: "OK"INSPUR-MIB::serverMemoryState."" = STRING: "OK"INSPUR-MIB::serverHDDState."" = STRING: "OK"INSPUR-MIB::serverFANState."" = STRING: "OK"INSPUR-MIB::serverPSUState."" = STRING: "OK"INSPUR-MIB::serverRAIDState."" = STRING: "OK"INSPUR-MIB::serverTempState."" = STRING: "OK"INSPUR-MIB::serverHealthState."" = STRING: "OK"#异常节点snmpwalk -v3 2.2.2.2 INSPUR-MIB::serverSystemHealthTableINSPUR-MIB::serverCurPowerState."" = STRING: "Power On"INSPUR-MIB::serverUIDState."" = STRING: "UID Off"INSPUR-MIB::serverCPUState."" = STRING: "OK"INSPUR-MIB::serverMemoryState."" = STRING: "WARNING"INSPUR-MIB::serverHDDState."" = STRING: "OK"INSPUR-MIB::serverFANState."" = STRING: "OK"INSPUR-MIB::serverPSUState."" = STRING: "OK"INSPUR-MIB::serverRAIDState."" = STRING: "OK"INSPUR-MIB::serverTempState."" = STRING: "OK"INSPUR-MIB::serverHealthState."" = STRING: "WARNING"INSPUR-MIB::serverCPUStandardStatus."" = STRING: "Normal"INSPUR-MIB::serverMemoryStandardStatus."" = STRING: "Warning"INSPUR-MIB::serverHDDStandardStatus."" = STRING: "Normal"INSPUR-MIB::serverFANStandardStatus."" = STRING: "Normal"INSPUR-MIB::serverPSUStandardStatus."" = STRING: "Normal"INSPUR-MIB::serverRAIDStandardStatus."" = STRING: "Normal"INSPUR-MIB::serverTempStandardStatus."" = STRING: "Normal"INSPUR-MIB::serverHealthStandardStatus."" = STRING: "Warning"
通过采集状态可以看出2.2.2.2这个机子memory为报警状态。具体如何配置 Telegraf,如何配置夜莺和 Loki 对接,请参看文章:新东方老师教你使用 Telegraf + Loki + Nightingale 实现硬件监控。
既然 snmpwalk 可以拿到具体内容了,也知道要告警的关键字是 WARNING、CRITICAL,实际不用这么复杂也可以告警。下面我们介绍使用 catpaw 的方案。
catpaw 的方案
catpaw 是一个事件监控工具,提供了多种插件,从 v0.4.0 版本开始,提供了 sfilter 插件,具体逻辑是:通过执行脚本或命令获取输出(stdout),然后对输出的内容做字符串匹配,如果匹配到了,就可以产生告警事件。把告警事件推给 FlashDuty 即可。
1. 安装 catpaw
catpaw 的安装非常简单,只需要下载二进制文件即可,下载地址:https://download.flashcat.cloud/catpaw-v0.4.0-linux-amd64.tar.gz,目前提供的是 linux-amd64 的安装包,如果有其他平台的安装包的需求,可以联系我。
2. 配置 sfilter 插件
sfilter 插件的配置在conf.d/p.sfilter/sfilter.toml
,样例如下:
[[instances]]command = "/path/to/sfilter-scripts/system-health.sh"# # script timeouttimeout = "10s"# check rule namecheck = "Check system health state"# support globfilter_include = ["*WARNING*", "*CRITICAL*"]filter_exclude = []# # gather intervalinterval = "30s"[instances.alerting]## Enable alerting or notenabled = true## Same functionality as Prometheus keyword "for"for_duration = 0## Minimum interval duration between notificationsrepeat_interval = "5m"## Maximum number of notificationsrepeat_number = 3## Whether notify recovery eventrecovery_notification = true## Choice: Critical, Warning, Infodefault_severity = "Warning"
3. 编写脚本
system-health.sh 脚本是需要我们准备的,比如就简单的探测一下 192.168.3.4 机器的系统健康状态(以浪潮机器举例),脚本内容如下:
#!/bin/shsnmpwalk -v2c -c public 192.168.3.4 INSPUR-MIB::serverSystemHealthTable
4. 配置事件推送地址
catpaw 只负责产生事件,不负责事件的后续处理(告警聚合降噪、认领升级、排班、多渠道触达等),这些功能交由FlashDuty,在 FlashDuty 的协作空间中创建一个自定义事件的集成,点击就可以看到推送地址了:
把截图中这个 URL 配置到 catpaw 的 config.toml 中。
5. 启动 catpaw
nohup ./catpaw --configs conf.d &> catpaw.log &
如果服务器有硬件故障,就会产生告警了,完活!enjoy…make a better world :)
关键词:
机器硬件监控,最简单的方案,没有之一
因为余华的一封信,莫言要去东澳岛读书了
恒生指数14日收跌0.58%结束五连涨
科创浪潮奔涌大湾区
PDF问世30周年 每年6月15日成“PDF日”
中国空间站美景请查收!央视解析全新构型:三舱三船
最高额外降温3℃:猫头鹰针对AMD AM5插槽CPU推出散热支架-热门
世界观天下!苹果蝉联2023年凯度BrandZ最具价值全球百强榜首:腾讯跻身十强
中国自研唯一入选项目!《王者荣耀亚运版本》发布:共计63个英雄
毕马威:力争在2030年将毕马威全球的直接和间接碳排放在2019年基础上减半 今日热议
世界时讯:SpringBoot中Redis的基础使用
利用 PHP 特性绕 WAF 测试 环球聚看点
linux-DNS域名解析
世界即时看!2种GaussDB(DWS)查看作业运行信息方式
收评:两市窄幅波动沪指微跌0.14% CPO概念股领涨 大消费主题反弹
热头条丨【新华500】新华500指数(989001)14日涨0.03%
世界今热点:层层梯田上红山荞麦播种忙 全产业链带动农民增收
【当前独家】AMD自杀式降价 讯景RX 7900 XT显卡到手5299元(首发7399)
男生说猫屎臭被头上扣饭?官方回应:已经处理
天天滚动:与K60 Ultra同台发!Redmi 2K新平板曝光:只要千元
外卖小哥从10多米高大桥跳水救人:见义勇为获奖3万、免费上大学
焦点热讯:中国第一条时速350铁路明日调图:动车组重联 运力翻倍
2023内蒙古师范大学附属中学英才计划招生简章
618大促|解析平台、商家和消费者必须面对的三大风险
【技术积累】Python中的NumPy库【二】|天天滚动
全球快资讯丨Springboot定时任务集成shedLock锁
今日热搜:开放中国依然是外商投资高地
每日动态!晋升第一人口大国后 印度将成为全球第一大手机市场:多谢苹果
不是录播!梅西即将在淘宝开启首次直播
华为又背锅?理想粉丝暗指华为发动舆论攻击:李想出面澄清
亚运会倒计时101天!杭州开通“亚运号”定制专列
国内最畅销SUV排名出炉:特斯拉Model Y反超比亚迪宋Plus拿下第一
天天快看点丨大文件上传功能在标签服务的简单应用和代码实现
Aurelia教程_编程入门自学教程_菜鸟教程-免费教程分享
让电池新规为电动自行车加把“安全锁” 全球热点评
全球动态:21℃室温超导成果被美院士宣称复现!南大教授:有3点质疑
全球报道:吉利高管评理想学华为:华为是时代的产物 但时代变了
全球今日报丨Vision Pro商标被华为注册!专家:苹果要么求华为和解 要么中国市场改名
王鸿薇反击林飞帆退选还推责任 毫无担当 每日视点
快看:0-500公里仅需20.16秒!布加迪火流星正式亮相勒芒赛场
锐龙7 7800X3D搭配A620主板实测:游戏性能依旧胜过i9-13900KS
能打过理想L7?丰田新款汉兰达上市:26.88万起-新资讯
焦点热讯:Nothing Phone (2) 定档7月11日:比亚迪代工
世界热讯:无惧A卡狠降价!英伟达RTX 4060国内上市时间曝光:2399元秒抢光?
理想汽车在重庆成立销售新公司,注册资本1000万|世界观天下
【世界速看料】读发布!设计与部署稳定的分布式系统(第2版)笔记02_停飞的代码异常
每日消息!经典webshell流量特征
华洋赛车北交所IPO成功过会:产品进入美国等50余个国家和地区 参与多项标准起草
全球规模最大!京东亚洲一号第100亿件智能包裹下线
短睡眠者可能“天赋异禀”:每天只需睡四五个小时
东莞暴雨 外卖小哥摔倒人车被水冲走:市民合力营救
最新快讯!特斯拉换电池价格曝光:最贵24.6万元一块 能买一辆奥迪
特斯拉Model Y在上海一大学完全拆解 沉浸教学“三电”原理
环球热点评!word文档如何打千分号 千分号在word上怎么打
数位 DP
【全球时快讯】深度学习应用篇-元学习[13]:元学习概念、学习期、工作原理、模型分类等
直播app源码技术之直播间内消息发送与接收的实现-世界今日讯
真实案例:Feign 切换 okhttp 无法生效,被老大骂的有点慌!
美国CPI进入下行趋势 黄金期货继续维持震荡 全球快看点
李想:很多友商那仨瓜俩枣的销量有啥可干的|天天速讯
男子熬夜喝冰镇饮料被送进ICU 医生从血里抽出一袋油脂:超标200倍 全球看点
环球讯息:西安现最牛司机 车尾标语3月撞7次!奔驰大G、奥迪都被撞过
世界新消息丨美国发布临时禁令:微软收购动视暴雪再次受阻
天津两处居民楼爆炸,致3死多伤!嫌疑人被抓获,作案工具是_环球新资讯
Canvas_绘制线段、圆形、文本、图像、视频、处理图像数据
【项目管理解决方案】上海道宁与Synami帮助您统一所有项目级别的信息,并使所有人轻松访问
Zabbix“专家坐诊”第195期问答汇总_当前看点
XenServer 7 GUI 虚拟机(VM)上的屏幕分辨率怎么提高? 环球简讯
入侵无线App盗用户资料 40岁男子被捕|观察
天天时讯:有无眉毛哪个更好看?哪吒CEO:“去掉眉毛”的哪吒GT将上市
携程梁建章建议:生三胎每月给五六千 给到18岁为止 速讯
15英寸MacBook Air首销破发!渠道价比官网便宜1000多|全球速看
新能源重卡 为何终将颠覆燃油重卡?
华为开发者大会2023早鸟票开售 498元起-全球最资讯
速讯:注意!绿心环线多路段将进行抓拍
MySQL性能分析及工具使用_今日热讯
演唱会买到“柱子票”,可以有更好的解决办法 全球要闻
PCIe 6.0还没用上:PCIe 7.0这就来了!x16速度高达512GB/s-世界滚动
175W功耗释放稳压64℃!铭瑄RTX 4060 Ti iCraft OC8G瑷珈显卡评测:二次元秀肌肉-环球观天下
为保护迎客松不让当地用户买木头、绿植?黄山回应
颠覆物理学!美国院士称复现室温超导 这还是骗局?
关注: 信用卡逾期停息挂账申请有什么条件?网贷逾期有什么影响?_当前热点
融创优化强制可转债方案 境外债重组方案获约近九成债权人支持
【读财报】游戏ETF透视:华夏基金规模、业绩领跑 华泰柏瑞、浦银安盛基金份额萎缩
南京十四所招聘官网_南京十四所_天天快资讯
20余省已公布高考查分时间:集中在6月下旬
卖1万多的15英寸MacBook Air 256GB SSD性能降级:不如上代
far away from home mp3下载百度网盘_far away from home歌词 天天短讯
95号汽油进入7元时代:国内油价接下来或还有降价空间!_天天信息
迷信进口屏幕电视:买回家发现大错特错了
HangFire进阶 当前资讯
ASP.NET Core MVC 从入门到精通之鉴权授权基础|今日最新
再也不用担心变量类型错误!学会JS中如何轻松检查变量类型_世界快看
武则天《升仙太子碑》 行草入碑敢为人先
中国特供显卡炒到20多万 英伟达赚麻了:有公司抢购70亿元订单-即时焦点
全球热头条丨大学期末划重点堪比发布会现场 学生举手机拍照 网友:很真实
科幻神作!三部《阿凡达》续集宣布推迟上映:第3部定档2025年
观天下!1152MB三级缓存天下无敌!AMD正式发布EPYC 9084X:96核心Zen4
突然!漫威多部新片宣布延期:《复仇者联盟5》《复仇者联盟6》再跳票1年_每日时讯
6月13日基金净值:信澳鑫安债券(LOF)最新净值1.009,跌0.1%