使用 BlackBox 导出器监控 TCP 端点

问题描述 投票:0回答:3

我正在尝试使用 tcp_connect 模块使用黑盒导出器来探测我的 LDAP 服务器。来源是我的k8s集群。从我的集群内,我绝对可以访问 ldap 服务器

debug@debug:~$ telnet global.ldap 636
Trying 10.27.20.7...
Connected to global.ldap.
Escape character is '^]'.
^]

我的 Prometheus 配置如下

- job_name: 'ldap_check'
          scrape_interval: 5m
          metrics_path: /probe
          params:
            module: [tcp_connect]
          static_configs:
            - targets:
              - 'ldaps://global.ldap:636' # Also tried 'global.ldap:636' without the 'ldaps://'
          relabel_configs:
            - source_labels: [__address__]
              target_label: __param_target
            - source_labels: [__param_target]
              target_label: instance
            - target_label: __address__
              replacement: monitoring-prometheus-blackbox-exporter:9115

但是我的 Prometheus

/targets
页面显示“服务器返回 HTTP 状态 400 错误请求” 有什么我错过的吗?

prometheus prometheus-blackbox-exporter
3个回答
4
投票

为此使用 TCP 模块。

tcp_connect:
    prober: tcp
    timeout: 5s

像这样。 telnet 10.10.10.1 主机的 123 端口。

curl 'http://localhost:9115/probe?target=10.10.10.1:123&module=tcp_connect&debug=true'


3
投票

400 Bad Request
blackbox exporter
最可能的原因是缺少所请求的
module
(在本例中为
tcp_connect
)。由于
tcp_connect
是默认模块之一,我想有人修改了
blackbox.yml
配置并忘记在其中包含默认模块。

有一种方法可以运行调试查询并确定出了什么问题。只是

curl http://blackbox_exporter_ip:9115/probe
具有与 Prometheus 相同的 URL 参数加上
debug=true
。例如:

❯ curl 'http://localhost:9115/probe?debug=true&module=tcp_connect2&target=localhost:9115' -v
...
< HTTP/1.1 400 Bad Request
...
Unknown module "tcp_connect2"

2
投票

试试这个:

- job_name: ldap_check
  metrics_path: /probe
  static_configs:
    - labels:
        module: tcp_connect
      targets:
        - global.ldap:636
  relabel_configs:
  ...
© www.soinside.com 2019 - 2024. All rights reserved.