一、下载blackbox_exporter安装包
1、本地下载后上传到linux服务器
下载地址:https://github.com/prometheus/blackbox_exporter/releases
2、直接在linux服务器上wget方式下载
# 新建目录
mkdir -p /data/prometheus/blackbox_exporter
# 进入目标目录
cd /data/prometheus/blackbox_exporter
# 下载
wget https://github.com/prometheus/blackbox_exporter/releases/download/v0.22.0/blackbox_exporter-0.22.0.linux-amd64.tar.gz
# 解压
tar -vxzf blackbox_exporter-0.22.0.linux-amd64.tar.gz
# 移动到安装目录
mv /data/prometheus/blackbox_exporter/blackbox_exporter-0.22.0.linux-amd64 /usr/local/blackbox_exporter
# 进入目录
cd /usr/local/blackbox_exporter
二、将blackbox_exporter配置为系统服务
1、进入systemd目录
cd /usr/lib/systemd/system
2、创建文件
vim blackbox_exporter.service
# 添加如下内容
[Unit]
Description=https://github.com/prometheus/blackbox_exporter
After=network-online.target
[Service]
Restart=on-failure
ExecStart=/usr/local/blackbox_exporter/blackbox_exporter --config.file=/usr/local/blackbox_exporter/blackbox.yml
[Install]
WantedBy=multi-user.target
3、服务命令
# 生效系统systemd文件
systemctl daemon-reload
# 设置开机自启
systemctl enable blackbox_exporter
# 查看状态
systemctl status blackbox_exporter
# 启动
systemctl start blackbox_exporter.service
# 停止
systemctl stop blackbox_exporter.service
三、启动blackbox_exporter
# 后台启动
nohup ./blackbox_exporter --config.file=blackbox.yml --web.listen-address=:9066 >> /home/guanxin/blackbox_exporter/blackbox.out 2>&1 &
# 指定端口
--web.listen-address=:9066
blackbox_exporter用来安装到被监控的主机上,服务器端通过调用默认端口9105来获取服务器信息。访问blackbox_exporter
http://172.30.18.244:9115/metrics,默认端口为9115
四、Docker部署(推荐)
五、添加 Prometheus 监控配置
# 进入 prometheus 文件夹
cd /usr/local/prometheus
# 编辑 prometheus 配置文件
vim prometheus.yml
# 添加内容如下
- job_name: 'node(202.100.86.106)'
static_configs:
- targets: ['10.1.10.76:9073']
- job_name: 'blackbox'
metrics_path: /probe
params:
module: [http_2xx] # Look for a HTTP 200 response.
static_configs:
- targets:
- http://prometheus.io # Target to probe with http.
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监控配置参考
- job_name: icmp_ping
metrics_path: /probe
params:
module: [icmp]
file_sd_configs:
- refresh_interval: 1m
files:
- /data/docker/prometheus/sd_config/icmp_ping.json
relabel_configs:
- source_labels: [__address__]
regex: (.*)(:80)?
target_label: __param_target
replacement: ${1}
- source_labels: [__param_target]
target_label: instance
- source_labels: [__param_target]
regex: (.*)
target_label: ping
replacement: ${1}
- source_labels: []
regex: .*
target_label: __address__
replacement: localhost:9115 # blackbox_exporter地址
- job_name: tcp_port
metrics_path: /probe
params:
module: [tcp_connect]
file_sd_configs:
- refresh_interval: 1m
files:
- /data/docker/prometheus/sd_config/tcp_port.json
relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- source_labels: [__param_target]
target_label: instance
- target_label: __address__
replacement: localhost:9115 # blackbox_exporter地址