页面“Blackbox exporter”与“Process-exporter”之间的差异

来自linux中国网wiki
(页面间的差异)
跳到导航 跳到搜索
 
 
第1行: 第1行:
=* intra=
 
Blackbox Exporter是Prometheus社区提供的官方黑盒监控解决方案,其允许用户通过:HTTP、HTTPS、DNS、TCP以及ICMP的方式对网络进行探测
 
=* install=
 
==** From source==
 
==** Using Docker==
 
docker-compose 自带了 也可以自己安装在其它机器上
 
==** 官方下载包解压和自己手工写sysd启动脚本==
 
==**  visa==
 
直接 ip:9115 或者如下作ng proxy_pass
 
  
http://blackbox.com/metrics
+
=down and inst=
 
 
http://blackbox.com/probe?target=prometheus.io&module=http_2xx
 
 
 
为1 成功  0 不成功
 
或者Logs 查看日志
 
=* conf=
 
 
<pre>
 
<pre>
这个可以参考 laradock 用变量哦
+
  wget -c https://github.com/ncabatoff/process-exporter/releases/download/v0.7.5/process-exporter-0.7.5.linux-amd64.tar.gz
#填写你的 blackboxip,可能和我的不一样
+
# wget  -c https://github.com/ncabatoff/process-exporter/releases/download/v0.5.0/process-exporter-0.5.0.linux-amd64.tar.gz
  vim prometheus/prometheus.yml
 
 
 
        #replacement: "10.3.10.124:9115"  # Blackbox exporter.
 
        replacement: "blackbox_exporter:9115"  # Blackbox exporter.
 
 
 
重载
 
curl -X POST http://127.0.0.1:9090/-/reload
 
 
 
<http_probe>可配置参数 有空要看一下加强一下
 
  
# 目标的HTTP基本身份验证凭据。
 
  basic_auth:
 
    [ username: <string> ]
 
    [ password: <secret> ]
 
</pre>
 
  
=* grafana =
+
process-exporter]# pwd
 +
/data/apps/process-exporter
 +
[root@prod-sns-mq01 process-exporter]# cat process-name.yaml
 +
process_names:
 +
  - name: "{{.Matches}}"
 +
    cmdline:
 +
    - 'redis'
  
grafana   7587 
+
   - name: "{{.Matches}}"
 +
    cmdline:
 +
    - 'nuxt'
  
9965号模板,数据源选择Prometheus 模板下载地址 https://grafana.com/grafana/dashboards/9965
 
  
可以直接进去容器里面安装
+
./process-exporter -config.path process-name.yaml &
此模板需要安装饼状图插件 下载地址 https://grafana.com/grafana/plugins/grafana-piechart-panel
 
安装插件,重启grafana生效。
 
  
grafana-cli plugins install grafana-piechart-panel
 
service grafana-server restart
 
  
https://blog.csdn.net/shykevin/article/details/103527945
+
#!/bin/bash
 +
./process-exporter -config.path process-name.yaml & > process-exporter.log
  
5345 好像有点老
 
https://grafana.com/grafana/dashboards/5345
 
=*  实例了=
 
==** http post==
 
  
 +
curl http://localhost:9256/metrics
  
https://market-api.126.com/api/v1/market/coin/rank/thirty
 
  
 +
启动脚本
  
https://blog.csdn.net/qq_25934401/article/details/84325356
+
cat  /etc/systemd/system/process-exporter.service
 +
[Unit]
 +
Description=process-exporterr
 +
After=network.target
 +
Wants=network-online.target
  
 +
[Service]
 +
Type=simple
 +
User=root
 +
ExecStart=/data/apps/process-exporter/process-exporter  -config.path /data/apps/process-exporter/process-name.yaml
  
=* 配置参考 =
+
Restart=on-failure
<pre> cp config.yml config.ymltodaygood
+
LimitNOFILE=65536
#add to config.yml
 
  - job_name: 'blackbox'
 
    metrics_path: /probe
 
    params:
 
      module: [http_2xx]  # Look for a HTTP 200 response.
 
    static_configs:
 
      - targets:
 
        - https://hk.search.yahoo.com
 
        #- https://pagertree.com
 
        #- https://prometheus.io
 
        labels:
 
          instance: user_status
 
          grop: 'web'
 
    relabel_configs:
 
      - source_labels: [__address__]
 
        target_label: __param_target
 
      - source_labels: [__param_target]
 
        target_label: instance
 
      - target_label: __address__
 
        #replacement: "localhost:9115"  # Blackbox exporter.
 
        replacement: "blackbox_exporter:9115"  # Blackbox exporter.
 
      - target_label: region
 
        replacement: "local"
 
  
 +
[Install]
 +
WantedBy=multi-user.target
  
  - job_name: 'blackbox http_post_2xx'
+
systemctl  enable  process-exporter
    metrics_path: /probe
+
systemctl start  process-exporter  && systemctl status    process-exporter
    params:
 
      module: [http_post_2xx] # Look for a HTTP 200 response.
 
    static_configs:
 
      - targets:
 
        - https://m-api.126.com/api/v1/m/coin/rank/thirty
 
        #- https://linuxchina.net
 
    relabel_configs:
 
      - source_labels: [__address__]
 
        target_label: __param_target
 
      - source_labels: [__param_target]
 
        target_label: instance
 
      - target_label: __address__
 
        #replacement: "localhost:9115"  # Blackbox exporter.
 
        #replacement: "10.3.10.124:9115" # Blackbox exporter.
 
        replacement: "blackbox_exporter:9115" # Blackbox exporter.
 
      - target_label: region
 
        replacement: "local"
 
  
  
 
</pre>
 
</pre>
官方配置eg  这个官方的放进去也是报错 老是重启 哈哈
 
https://github.com/prometheus/blackbox_exporter/blob/master/example.yml
 
  
 
+
=配置 =
blackbox exporter 配置文件解读
 
 
 
官方解释:https://github.com/prometheus/blackbox_exporter/blob/master/CONFIGURATION.md
 
 
 
 
 
git clone https://github.com/PagerTree/prometheus-grafana-alertmanager-example.git
 
cd "$DIRECTORY"
 
 
 
=* 进阶=
 
 
 
[https://cloud.tencent.com/developer/article/1584310 网络探测:Blackbox Exporter]
 
 
 
介绍几种应用场景  这个有空要试一下
 
 
 
 
 
 
 
[https://blog.csdn.net/u014029783/article/details/80001862?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-5.nonecase blackbox_exporter源码阅读]
 
 
 
 
 
网络探测监控的操作还有HTTPS DNS TCP ICMP  SSH etc
 
 
<pre>
 
<pre>
监控主机存活状态
 
 
编辑prometheus配置文件
 
 
 
最后一行添加
 
 
最后一行添加
 
  
  - job_name: node_status
+
这个是在 安装了 process-exporter的机器上
    metrics_path: /probe
+
Process-Exporter的做法是配置需要监控的进程的名称,他会去搜索该进程从而得到其需要的监控信息, 其实也就是我们常做的“ps -efl | grep xxx”命令来查看对应的进程。配置文件一开始是不存在的,需要我们创建,名字可以自定义:
    params:
 
      module: [icmp]
 
    static_configs:
 
      - targets: ['10.165.94.31']
 
        labels:
 
          instance: node_status
 
          group: 'node'
 
    relabel_configs:
 
      - source_labels: [__address__]
 
        target_label: __param_target
 
      - target_label: __address__
 
        replacement: 172.19.155.133:9115
 
  
注意:10.165.94.31是被监控端ip,172.19.155.133是Blackbox_exporter
 
  
监控主机端口存活状态
+
这个配置是在 prometheus机器上
   - job_name: 'prometheus_port_status'
+
现在,我们需要去配置Prometheus来采集这份数据了,和其他配置一样,就是给Prometheus添加一份数据源:
    metrics_path: /probe
+
   - job_name: 'snsweb2-process'
    params:
 
      module: [tcp_connect]
 
 
     static_configs:
 
     static_configs:
      - targets: ['172.19.155.133:8765']
+
    - targets: ['12.41.11.20:9256']
        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: 172.19.155.133:9115
 
  
  
监控网站状态
 
 
  - job_name: web_status
 
    metrics_path: /probe
 
    params:
 
      module: [http_2xx]
 
    static_configs:
 
      - targets: ['http://www.baidu.com']
 
        labels:
 
          instance: user_status
 
          group: 'web'
 
    relabel_configs:
 
      - source_labels: [__address__]
 
        target_label: __param_target
 
      - target_label: __address__
 
        replacement: 172.19.155.133:9115
 
  
 
</pre>
 
</pre>
  
 +
=see also=
  
=* see also=
+
[https://www.jianshu.com/p/6a7511004766 Prometheus监控进程状态(Process-Exporter)]
 
 
[https://github.com/prometheus/blackbox_exporter/blob/master/CONFIGURATION.md Blackbox exporter configuration]
 
 
 
[https://github.com/prometheus/blackbox_exporter/blob/master/example.yml Blackbox exporter configuration Exmaple]
 
  
https://github.com/prometheus/blackbox_exporter
+
[https://blog.csdn.net/u012599988/article/details/102929269 Grafana+Prometheus+Process-exporter/node_exporter监控服务进程(三)]
  
https://yunlzheng.gitbook.io/prometheus-book/part-ii-prometheus-jin-jie/exporter/commonly-eporter-usage/install_blackbox_exporter
+
[https://www.cnblogs.com/huandada/p/10431667.html  Prometheus — Process-exporter进程监控 ]
  
[https://blog.frognew.com/2018/02/prometheus-blackbox-exporter.html 使用Prometheus的blackbox_exporter进行网络监控]
+
[https://www.cnblogs.com/bigberg/p/10174222.html Prometheus 监控进程]
  
[https://blog.csdn.net/qq_25934401/article/details/84325356 Prometheus 监控之 Blackbox_exporter黑盒监测 [icmp、tcp、http(get\post)、dns、ssl证书过期时间<nowiki>]</nowiki>]
 
 
[[category:ops]] [[category:container]]
 
[[category:ops]] [[category:container]]

2020年12月10日 (四) 07:26的版本

down and inst

 wget  -c https://github.com/ncabatoff/process-exporter/releases/download/v0.7.5/process-exporter-0.7.5.linux-amd64.tar.gz
# wget  -c https://github.com/ncabatoff/process-exporter/releases/download/v0.5.0/process-exporter-0.5.0.linux-amd64.tar.gz


 process-exporter]# pwd
/data/apps/process-exporter
[root@prod-sns-mq01 process-exporter]# cat process-name.yaml 
process_names:
  - name: "{{.Matches}}"
    cmdline:
    - 'redis'

  - name: "{{.Matches}}"
    cmdline:
    - 'nuxt'


./process-exporter -config.path process-name.yaml &


#!/bin/bash
./process-exporter -config.path process-name.yaml & > process-exporter.log


curl http://localhost:9256/metrics


启动脚本

cat  /etc/systemd/system/process-exporter.service 
[Unit]
Description=process-exporterr
After=network.target
Wants=network-online.target

[Service]
Type=simple
User=root
ExecStart=/data/apps/process-exporter/process-exporter  -config.path /data/apps/process-exporter/process-name.yaml

Restart=on-failure
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target

systemctl  enable  process-exporter
systemctl  start   process-exporter  && systemctl  status    process-exporter


配置


这个是在 安装了 process-exporter的机器上
Process-Exporter的做法是配置需要监控的进程的名称,他会去搜索该进程从而得到其需要的监控信息, 其实也就是我们常做的“ps -efl | grep xxx”命令来查看对应的进程。配置文件一开始是不存在的,需要我们创建,名字可以自定义:


这个配置是在 prometheus机器上
现在,我们需要去配置Prometheus来采集这份数据了,和其他配置一样,就是给Prometheus添加一份数据源:
  - job_name: 'snsweb2-process'
    static_configs:
    - targets: ['12.41.11.20:9256']



see also

Prometheus监控进程状态(Process-Exporter)

Grafana+Prometheus+Process-exporter/node_exporter监控服务进程(三)

Prometheus — Process-exporter进程监控

Prometheus 监控进程