linux怎么查看本机内存大小
356
2022-10-09
#yyds干货盘点# Prometheus Exporter(五)BlackBox Exporter
本文已经收录在 Prometheus 合集 Prometheus 都可以采集那些指标?-- 常用 Exporter 合集 中。
BlackBox Exporter 允许通过 HTTP、HTTPS、DNS、TCP 和 ICMP 对接口进行黑盒探测监控。
BlackBox Exporter 是 Prometheus 官方维护的 Exporter,官方仓库地址是 。
BlackBox Exporter 支持在 Windows 和类 Unix 上运行,当前最新版本是 v0.19.0 ,在 2021.05.10 发布。
安装
下载操作系统对应的 BlackBox Exporter 以后,直接执行二进制文件就可以运行,
./blackbox_exporter
如果使用 Docker 来运行,需要准备好配置文件 blackbox.yml ,可以使用如下命令:
docker run -d \ -p 9115:9115 \ --name blackbox_exporter \ -v `pwd`:/config \ prom/blackbox-exporter:master \ --config.file=/config/blackbox.yml
在运行 ICMP 功能的时候需要赋予相对于的权限才行。
Windows 系统:系统提供 Administrator 管理员权限 Linux 系统:这个用户的组要在 net.ipv4.ping_group_range,并且具有 CAP_NET_RAW 权限或者是 root 用户。 BSD 系统:需要提供 root 用户 OS X 系统:不需要提供额外的权限。
BlackBox Exporter 配置
BlackBox Exporter 的配置是通过配置文件和命令行参数来实现的,命令行参数控制哪个配置文件会被加载、监听端口是哪个,日志输出的格式和级别等等。
BlackBox Exporter 可以在运行时重新加载它的配置文件。如果新的配置文件格式错误,那么这个文件是不会生效的,正常运行的程序会以最后一次正确格式的配置文件运行。通过向BlackBox Exporter 进程发送 SIGHUP 信号或向进程的 /-/reload 接口发送 HTTP POST 请求都可以触发配置文件的重新加载。
BlackBox Exporter 指定配置文件使用 --config.file 参数,格式是 --config.file=/config/blackbox.yml ,配置文件格式要求是 YAML 格式。
Blackbox exporter 支持下面这 4 个模块的配置,
[ <]
[ tcp:
详细的配置文件示例开参考这个链接配置
BlackBox Exporter 需要 Prometheus 将目标作为参数传递过去,这可以通过重新标记来完成。
我们来看这个示例文件,
scrape_configs: - job_name: 'blackbox' metrics_path: /probe params: module: [ # Look for a HTTP 200 response. static_configs: - targets: - # Target to probe with http. - # Target to probe with https. - # Target to probe with on port 8080. relabel_configs: - source_labels: [__address__] target_label: __param_target - source_labels: [__param_target] target_label: instance - target_label: __address__ replacement: 127.0.0.1:9115 # The blackbox exporter's real hostname:port.
其他 BlackBox Exporter 是经常搭配服务发现来进行工作的,比如搭配基于 DNS 的服务发现来进行。HTTP 监控可以接受附加的主机名参数,该参数将设置主机头和 TLS SNI。
scrape_configs: - job_name: blackbox_all metrics_path: /probe params: module: [ ] # Look for a HTTP 200 response. dns_sd_configs: - names: - example.com - prometheus.io type: A port: 443 relabel_configs: - source_labels: [__address__] target_label: __param_target replacement: # Make probe URL be like https://1.2.3.4:443/ - source_labels: [__param_target] target_label: instance - target_label: __address__ replacement: 127.0.0.1:9115 # The blackbox exporter's real hostname:port. - source_labels: [__meta_dns_name] target_label: __param_hostname # Make domain name become 'Host' header for probe requests - source_labels: [__meta_dns_name] target_label: vhost # and store it in 'vhost' label
小结
BlackBox Exporter 其实在监控系统中非常实用,尤其是 HTTP 监控和 ICMP 监控。结合 DNS 可以监控公司的所有域名状态。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~