prometheus學習系列十一: Prometheus exporter詳解


exporter詳解

前面的系列中,我們在主機上面安裝了node_exporter程序,該程序對外暴露一個用於獲取當前監控樣本數據的http的訪問地址, 這個的一個程序成為exporter,Exporter的實例稱為一個target, prometheus通過輪訓的方式定時從這些target中獲取監控數據。

exporter是什么

廣義上向prometheus提供監控數據的程序都可以成為一個exporter的,一個exporter的實例稱為target, exporter來源主要2個方面,一個是社區提供的,一種是用戶自定義的。

常用exporter

官方和一些社區提供好多exproter, 我們可以直接拿過來采集我們的數據。 官方的exporter地址: https://prometheus.io/docs/instrumenting/exporters/

 

Blackbox Exporter

bloackbox exporter是prometheus社區提供的黑盒監控解決方案,運行用戶通過HTTP、HTTPS、DNS、TCP以及ICMP的方式對網絡進行探測。這里通過blackbox對我們的站點信息進行采集。

blackbox的安裝

# 進入下載目錄
[root@node00 ~]# cd /usr/src/
# 下載 [root@node00 src]# wget https://github.com/prometheus/blackbox_exporter/releases/download/v0.15.1/blackbox_exporter-0.15.1.linux-amd64.tar.gz # 解壓
[root@node00 src]# tar xf blackbox_exporter-0.15.1.linux-amd64.tar.gz
# 部署到特定位置 [root@node00 src]#
mv blackbox_exporter-0.15.1.linux-amd64 /usr/local/exporter/
# 進入目錄 [root@node00 src]# cd /usr/local/exporter/
# 軟連接 [root@node00 exporter]# ln -s blackbox_exporter-0.15.1.linux-amd64 blackbox_exporter
# 進入自啟目錄 [root@node00 exporter]# cd /usr/lib/systemd/system
# 配置blackbox的開機自啟文件 [root@node00 system]#
cat blackbox_exporter.service [Unit] Description=blackbox_exporter After=network.target [Service] User=prometheus Group=prometheus WorkingDirectory=/usr/local/exporter/blackbox_exporter ExecStart=/usr/local/exporter/blackbox_exporter/blackbox_exporter [Install] WantedBy=multi-user.target

# 啟動 [root@node00 system]# systemctl restart blackbox_exporter
# 查看狀態 [root@node00 system]# systemctl status blackbox_exporter # 開機自啟
[root@node00 system]# systemctl enable blackbox_exporter

 配置prometheus采集數據

  - job_name: "blackbox"
    metrics_path: /probe
    params:
      module: [http_2xx]  # Look for a HTTP 200 response.
    file_sd_configs: 
    - refresh_interval: 1m
      files: 
      - "/usr/local/prometheus/prometheus/conf/blackbox*.yml"
    relabel_configs:
    - source_labels: [__address__]
      target_label: __param_target
    - source_labels: [__param_target]
      target_label: instance
    - target_label: __address__
      replacement: 192.168.100.10:9115
[root@node00 prometheus]# cat conf/blackbox-dis.yml 
- targets:
  - https://www.alibaba.com
  - https://www.tencent.com
  - https://www.baidu.com 

grafana展示blackbox采集數據

重啟prometheus查看數據, 可以在grafana導入dashboard id 9965  可以看到如下數據。

 

 

influxdb_export

influxdb_export 是用來采集influxdb數據的指標的,但是influxdb提供一個專門的一個產品來暴露metrics數據, 也就是說infludb_exporter這個第三方的產品將來會被淘汰了。 不過還是可以使用的,可以參考: https://github.com/prometheus/influxdb_exporter

infludb官方的工具來獲取metrics數據是telegraf, 這個工具相當的強大,內部使用prometheus client插件來暴露數據給prometheus采集, 當然這個工具內部集成了幾十種插件用戶暴露數據給其他的監控系統。 詳細的可以參考官方地址: https://docs.influxdata.com/telegraf/v1.7/plugins/outputs/#prometheus-client-prometheus-client-https-github-com-influxdata-telegraf-tree-release-1-7-plugins-outputs-prometheus-client

這里我們使用的監控系統是prometheus, 只需要關注如下配置即可:  https://github.com/influxdata/telegraf/tree/release-1.7/plugins/outputs/prometheus_client

telegraf的安裝配置

wget https://dl.influxdata.com/telegraf/releases/telegraf-1.12.2-1.x86_64.rpm
sudo yum localinstall telegraf-1.12.2-1.x86_64.rpm

rpm -ql |grep telegraf
cp /etc/telegraf/telegraf.conf  /etc/telegraf/telegraf.conf.default
# 修改如下部分
 [[outputs.prometheus_client]]
   ## Address to listen on
   listen = ":9273"

systemctl restart telegraf
systemctl status telegraf
systemctl enabletelegraf

集成prometheus

# prometheus加入如下采集
  - job_name: "influxdb-exporter"
    static_configs:
    - targets: [ "192.168.100.10:9273" ]

查看數據


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM