prometheus-黑盒探针blackbox_exporter

blackbox_exporter简介

项目地址: https://github.com/prometheus/blackbox_exporter

grafana: https://grafana.com/grafana/dashboards/13659

              https://grafana.com/grafana/dashboards/9965

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

  • HTTP 测试

          定义 Request Header 信息
          判断 Http status / Http Respones Header / Http Body 内容

  • TCP 测试

          业务组件端口状态监听
           应用层协议定义与监听

  • ICMP 测试

           主机探活机制

  • POST 测试

          接口联通性

  • SSL 证书过期时间

  

部署

下载软件

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

tar xf blackbox_exporter-0.19.0.linux-amd64.tar.gz -C /opt

ln -s /opt/blackbox_exporter-0.19.0.linux-amd64 /opt/blackbox_exporter

准备启动文件

[Unit]
Description=blackbox_exporter Exporter
Wants=network-online.target
After=network-online.target

[Service]
ExecStart=/opt/blackbox_exporter/blackbox_exporter --config.file=/opt/blackbox_exporter/blackbox.yml
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=blackbox_exporter
[Install]
WantedBy=default.target

启动

systemctl start blackbox_exporter.service 
systemctl enable blackbox_exporter.service 

systemctl status blackbox_exporter.service 

示例

URL测试

 http://192.168.168.106:9115/probe?target=https://www.baidu.com&module=http_2xx&debug=true 

配置文件-http

  - job_name: 'blackbox-http'

    metrics_path: /probe

    params:
      module: [http_2xx]
    static_configs:
      - targets:
        - http://prometheus.io
        - https://www.baidu.com
        - http://192.168.168.106:3000
    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

配置文件-ssh

  - job_name: 'blackbox-ssh'
    
    metrics_path: /probe
   
    params:
      module: [ssh_banner]
    static_configs:
      - targets:
        - 192.168.168.105
        - 192.168.168.106
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: 192.168.168.106:9115

 配置文件-icmp

  - job_name: 'blackbox-icmp'
    metrics_path: /probe
    params:
      module: [icmp]
    static_configs:
      - targets:
        - 192.168.168.105
        - 192.168.168.106
        labels:
          instance: node_status
          group: 'node'
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - target_label: __address__
        replacement: 192.168.168.106:9115

配置文件-端口状态

  - job_name: 'blackbox-port'
    metrics_path: /probe
    params:
      module: [tcp_connect]
    static_configs:
      - targets:
        - 192.168.168.105:3000
        labels:
          instance: 'port_status'
          group: 'tcp'
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: 192.168.168.106:9115

 

上一篇:性能测试之redis集群监控环境搭建:prometheus + redis_exporter + grafana


下一篇:Prometheus监控tomcat