grafana + prometheus搭建服务器监控系统(二)---prometheus的exporter

一、 exporter简介

  • exporter诞生的原因:大多数监控无法直接提供监控接口(本身不支持HTTP接口、安全性、稳定性、代码耦合等)
  • exporter是一个采集监控数据并通过prometheus监控规范对外提供数据的组件
  • 官方实现的exporter:blackbox_exporter、consul_exporter、graphite_exporter、haproxy_exporter、memcached_exporter、mysqld_exporter、node_exporter、statsd_exporter
  • 第三方实现的exporter:Redis exporter、RabbitMQ exporter等
  • prometheus会周期性地调用exporter提供的metrics数据接口来获取数据
  • exporter通过被监控对象提供的监控相关的接口获取监控数据(HTTP/HTTPS、TCP、本地文件(node)、标准协议方式)
  • 官方主要依赖库:go、java、scala、python、ruby等

二、工作原理

  • prometheus只会采集指定格式的监控信息
  • exporter按照prometheus规定的格式采集各种软件的监控信息,并提供http接口(mysql、node、consul、rabbitMQ等)
  • 部分exporter在采集监控信息时需要获取一定的权限用于采集指定信息(如:mysql)
  • 类似于多功能充电线,什么品牌的手机选择对应型号的线即可;不同的软件选择对应exporter即可

上一章我们使用了node_exporter,接下来,我们将展开介绍更多exporter。

三、 blackbox-exporter

blackbox_exporter是Prometheus 官方提供的 exporter 之一,可以提供 http、dns、tcp、icmp 的监控数据采集。

blackbox-exporter的应用场景:

  • HTTP 测试
    定义 Request Header 信息
    判断 Http status / Http Respones Header / Http Body 内容
  • TCP 测试
    业务组件端口状态监听
    应用层协议定义与监听
  • ICMP 测试
    主机探活机制
  • POST 测试
    接口联通性
  • SSL 证书过期时间

安装与配置

cd /packages
wget https://github.com/prometheus/blackbox_exporter/releases/download/v0.19.0/blackbox_exporter-0.19.0.linux-amd64.tar.gz
tar xvfz blackbox_exporter-0.19.0.linux-amd64.tar.gz
mv blackbox_exporter-0.19.0.linux-amd64 blackbox_exporter

添加到开机自启

// 创建文件 /etc/systemd/system/blackbox_exporter.service
[Unit]
Description=blackbox_exporter
Documentation=https://github.com/prometheus/blackbox_exporter

[Service]
ExecStart=/packages/blackbox_exporter/blackbox_exporter \
    --config.file=/packages/blackbox_exporter/blackbox.yml
Restart=on-failure

[Install]
WantedBy=multi-user.target
systemctl daemon-reload  // 加载新的systemd配置
systemctl enable blackbox_exporter.service // 设置开机自启
systemctl start blackbox_exporter.service // 启动blackbox_exporter
systemctl status blackbox_exporter.service // 查看启动状态

默认占用9115端口,记得防火墙开放该端口

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容