乐趣区

关于linux:promethus-Blackboxexporter端口监控实现网络探测

对于 Blackbox-exporter

-Blackbox Exporter 是 Prometheus 社区提供的官网黑盒监控解决方案,其容许用户通过:HTTP、HTTPS、DNS、TCP 以及 ICMP 的形式对网络进行探测。
- 黑盒监控即以用户的身份测试服务的内部可见性,常见的黑盒监控包含 HTTP 探针、TCP 探针等用于检测站点或者服务的可拜访性,以及拜访效率等。
- 黑盒监控相较于白盒监控最大的不同在于黑盒监控是以故障为导向当故障发 - 生时,黑盒监控能疾速发现故障,而白盒监控则侧重于被动发现或者预测潜在的问题。一个欠缺的监控指标是要可能从白盒的角度发现潜在问题,可能在黑盒的角度疾速发现曾经产生的问题。

理论利用

部署 Blackbox-exporter

1. 依据镜像进行部署

blackbox-exporter 官网 dockerhub 地址
blackbox-exporter 官网 github 地址

2. 部署流程(docker-compose 进行部署)
  ## 镜像拉取
  docker pull prom/blackbox-exporter
  ##docker 部署
  docker run --rm -d -p 9115:9115 --name blackbox_exporter -v `pwd`:/config prom/blackbox-exporter:master --config.file=/config/blackbox.yml
## docker-compose.yml
version: '2'
services:
blackbox_exporter:
  image: prom/blackbox-exporter
  container_name: blackbox_exporter
  restart: always
  dns_search: .
  networks:
    - nets
  volumes:
    - ./blackbox_exporter/blackbox.yml:/etc/blackbox_exporter/config.yml
  ports:
    - 9115:9115
  tty: true
networks:
nets:
  external: false
## blackbox_exporter/blackbox.yml
modules:
http_2xx:
  prober: http
  timeout: 20s
  http:
    preferred_ip_protocol: "ip4"
http_post_2xx_query:
  prober: http
  timeout: 20s
  http:
    preferred_ip_protocol: "ip4" ## 应用 ipv4
    method: POST
    headers:
      Content-Type: application/json ##header 头
    body: '{"hmac":"","params":{"publicFundsKeyWords":"xxx"}}' ## 传参
tls_connect_tls:
  prober: tcp
  timeout: 5s
  tcp:
    tls: true
tcp_connect:
  prober: tcp
  timeout: 5s
 #
pop3s_banner:
  prober: tcp
  tcp:
    query_response:
    - expect: "^+OK"
    tls: true
    tls_config:
      insecure_skip_verify: false
ssh_banner:
  prober: tcp
  tcp:
    query_response:
    - expect: "^SSH-2.0-"
irc_banner:
  prober: tcp
  tcp:
    query_response:
    - send: "NICK prober"
    - send: "USER prober prober prober :prober"
    - expect: "PING :([^]+)"
      send: "PONG ${1}"
    - expect: "^:[^]+ 001"
icmp:
  prober: icmp
  timeout: 20s
3.promethus 配置 blackbox-exporter
## promethus.yml
  - job_name: 'port_status_name'
    metrics_path: /probe
    params:
      module: [tcp_connect]
    static_configs:
      - targets: ['ip: 端口']
        labels:
          instance: 'port_status_name'
          group: 'tcp'
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: blackbox-exporterIP 地址:9115

4.grafana 配置

导入模板
此模板为 9965 号模板,数据源抉择 Prometheus 模板下载地址 https://grafana.com/grafana/d…

可参考:Blackbox_exporter 黑盒监测 +promethus+grafana 配置

5. 附录

Prometheus 实战
Blackbox_exporter 黑盒监测 +promethus+grafana 配置
部署 Black Exporter
网络探测:Blackbox Exporter+ 利用场景剖析
Prometheus 监控之 Blackbox_exporter 黑盒监测

退出移动版