用Prometheus对业务服务进行监控
这里分享一个用于黑盒监控的blackbox_exporter, 可以用于对http,https,tcp,dns以及ICMP协议进行探测,从而抓取数据进行监控。但是,这些对于我们来说究竟能解决什么用处。
我们可以通过blackbox_exporter对服务进行状态码监测,我们可以在代码中查看返回成功的状态码是哪些,状态码监测规则可以通过下图看出。
这样的话,我们就可以判断服务是否还在正常的工作,网站有没有出现不可访问,站在用户的角度上进行对服务资源监控。当然这里还可以对支持https的证书的有效期进行监控,看下图,有两个域名的证书还有一年半的时间到期。只要数据采集到了,我们就可以通过数据进行有效的告警,不用专门的再去写拓展服务区监控证书到期时间了。
DNS指针探测
同样的Blackbox_exporter也可以为域名的DNS做解析的探测,尝试不同的DNS对域名服务解析是否出现问题,比如我这里做的效果图。
同样的,blackbox_exporter如Github中介绍所说的,可以做http,https,tcp,icmp,DNS等探测,所以你可以通过自己的需求进行数据的采集,让系统的数据说话。
下面我们讲讲如何实现这些数据采集以及监控:第一步还是安装,准备一个blackbox_exporter的Agent,让它作为代理去为我们采集数据。
首先我们应该准备一个探针模块作为blackbox_exporter的配置文件blackbox_exporter.yml,这里我们使用HTTP、DNS两个模块作为演示案例
配置文件准备好之后,我们就可以开始运行blackbox_exporter 容器了。
运行起来之后,查看一些容器的运行日志
假设我们这里有现成的Promtheus服务。我们现在就可以将blackbox_exporter写进promtheus服务
仔细看一下prometheus的配置文件,我们会发现检查项都是通过动态文件来发现的,其中blackbox_dns.json用于发现待需检查的域名,blackbox_http.json用于发现使用http模块嗅探服务正常的配置文件,下面我们需要在prometheus的配置文件的同级目录下加入这两个文件。
blackbox_dns.json
blackbox_http.json
这样我们实现了针对DNS,http两种探测指针的演示,我们看一下Prometheus中Http模块监测状态
同样的,我这里使用了Grafana用于对HTTP监测的数据进行图标的展示,这里分享Dashboard的ID为9965和7587
【7587】
【9965】
相关文章
- Linux开启Docker远程访问并设置安全访问(证书密钥),附一份小白一键设置脚本哦!
- 购买云服务器需要注意什么
- Linux 服务器使用git 作为仓库
- Jmeter 正则表达式提取括号中的文本内容
- 网红机器狗Spot再进化!智能给自己规划路线,还能自己给自己开门
- 云栖大会,明年再见!
- 为什么要选择VersionCatalog来做依赖管理?
- 雨云每日签到脚本
- 国内BGP-CEPH云服务器2核2G仅81元 赠送5G防御1个独立IP
- 购买阿里云的服务器包维护吗
- 聚类方法
- SwitchHosts使用教程
- MIT开发激光“锁眼成像”技术:给我一个钥匙孔,不进门我就能“看”到房间内的一切
- git restore 放弃更改、取消暂存
- 聊聊k8s中的hostport和NodePort
- c++版本cef详细使用
- 阿里云服务器30m怎么买
- PHP的数组排序函数
- LiveVideoStackCon2021 北京站专访:从上云到创新,视频云的新技术、新场景
- 【图像配准】SIFT算法原理及二图配准拼接