安阳网站建设哪家专业,济南网站APP,企业信息信用信息公示网官网,网站建设引流刘贺稳1blackbox-exporter简介
blackbox-exporter项目地址#xff1a;https://github.com/prometheus/blackbox_exporter
blackbox-exporter是Prometheus官方提供的一个黑盒监控解决方案#xff0c;可以通过HTTP、HTTPS、DNS、ICMP、TCP和gRPC方式对目标实例进行检测。可用于以下使…blackbox-exporter简介
blackbox-exporter项目地址https://github.com/prometheus/blackbox_exporter
blackbox-exporter是Prometheus官方提供的一个黑盒监控解决方案可以通过HTTP、HTTPS、DNS、ICMP、TCP和gRPC方式对目标实例进行检测。可用于以下使用场景
HTTP/HTTPSURL/API可用性检测ICMP主机存活检测TCP端口存活检测DNS域名解析
黑盒监控和白盒监控
黑盒监控关注的是实时状态一般都是正在发生的事件比如网站访问不了、磁盘无法写入数据等。即黑盒监控的重点是能对正在发生的故障进行告警。常见的黑盒监控包括HTTP探针、TCP探针等用于检测站点或者服务的可访问性以及访问效率等。白盒监控关注的是原因也就是系统内部的一些运行指标数据例如nginx响应时长、存储I/O负载等
监控系统要能够有效的支持百盒监控和黑盒监控通过白盒能够了解系统内部的实际运行状态以及对监控指标的观察能够预判出可能出现的潜在问题从而对潜在的不确定因素进行提前处理避免问题发生而通过黑盒监控可以在系统或服务发生故障时快速通知相关人员进行处理。
部署blackbox-exporter
下载软件包
wget https://github.com/prometheus/blackbox_exporter/releases/download/v0.23.0/blackbox_exporter-0.23.0.linux-amd64.tar.gz
tar xf blackbox_exporter-0.23.0.linux-amd64.tar.gz -C /usr/local/
ln -sv /usr/local/blackbox_exporter-0.23.0.linux-amd64 /usr/local/blackbox_exporter/usr/local/blackbox_exporter/blackbox_exporter -h #查看帮助信息准备service文件
# cat /lib/systemd/system/blackbox-exporter.service
[Unit]
DescriptionPrometheus Blackbox Exporter
Afternetwork.target[Service]
Typesimple
Userroot
Grouproot
ExecStart/usr/local/blackbox_exporter/blackbox_exporter --config.file/usr/local/blackbox_exporter/blackbox.yml --web.listen-address:9115
Restarton-failure[Install]
WantedBymulti-user.targetblackbox-exporter的配置文件使用默认的即可/usr/local/blackbox_exporter/blackbox.yml文件里定义了进行目标检测时要使用的模块和模块参数。至于要检测哪些目标是定义在Prometheus 的Job配置中。
启动blackbox-exporter
systemctl daemon-reload
systemctl start blackbox-exporter.service
systemctl status blackbox-exporter.service
systemctl enable blackbox-exporter.service访问blackbox-exporter web界面验证
blackbox-exporter实现url监控
修改Prometheus配置添加Job内容如下 - job_name: http-statusmetrics_path: /probe #指定指标接口params: #指定查询参数在Prometheus向target发送Get请求获取指标数据时会传递到url上module: [http_2xx]static_configs:- targets:- http://www.baidu.com- http://www.jd.comlabels: #自定义标签附加在target上group: webrelabel_configs:#将标签__address__的值赋值给__param_target标签以__param开头的标签也会作为查询参数传递Prometheus的Get请求作用和上面的params配置类似- source_labels: [__address__]target_label: __param_target#将标签__param_target的值赋值给instance标签- source_labels: [__param_target]target_label: instance#将标签__address__的值修改给balckbox-expoter的地址- target_label: __address__replacement: 192.168.122.22:9115#以 http://www.baidu.com为例最后其对应target的地址就是http://192.168.122.22:9115/probe?modulehttp_2xxtargethttp://www.baidu.com此job配置了对http://www.baidu.com和http://www.jd.com进行状态检测验证是否可以访问这里使用一个blackbox-exporter检测多个目标网站。
一般情况下exporter和目标实例是一对一关系这种一个exporter获取多个目标实例的数据的方式官方称为multi-target-exporter具体介绍可以参考Prometheus官方文档https://prometheus.io/docs/guides/multi-target-exporter/
配置修改完成后重启Prometheus。然后在界面查看target状态。
选中一个target查看可以看到它的对应目标地址
访问blackbox-exporter界面查看数据
blackbox-exporter实现ICMP监控
修改Prometheus配置添加Job内容如下 - job_name: icmp-statusmetrics_path: /probeparams:module: [icmp]static_configs:- targets:- 192.168.122.5- 192.168.122.11labels:group: icmprelabel_configs:- source_labels: [__address__]target_label: __param_target- source_labels: [__param_target]target_label: instance- target_label: __address__replacement: 192.168.122.22:9115配置修改完成后重启Prometheus。然后在界面查看target状态。
访问blackbox-exporter界面查看数据 blacbox-exporter实现端口监控
修改Prometheus配置添加Job内容如下 - job_name: tcp-port-statusmetrics_path: /probeparams:module: [tcp_connect]static_configs:- targets:- 192.168.122.23:3306- 192.168.122.5:6443labels:group: tcp-port-statusrelabel_configs:- source_labels: [__address__]target_label: __param_target- source_labels: [__param_target]target_label: instance- target_label: __address__replacement: 192.168.122.22:9115配置修改完成后重启Prometheus。然后在界面查看target状态。 访问blackbox-exporter界面查看数据 Grafana查看数据
导入模板查看数据。模板ID 9965
模板ID13659