zoukankan      html  css  js  c++  java
  • 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" ]

    查看数据

  • 相关阅读:
    Unity 游戏性能优化 学习
    常用网站
    Unity3d插件开发与SDK对接实战 学习
    Unity3D常用网络框架与实战解析 学习
    问题:grid卸载后重新安装时ASM磁盘识别不到了
    问题:oracle 12c rac数据库服务器的home目录丢失问题解决2018-06-25 18:30
    Linux启动报:UNEXPECTED INCONSISTENCY: RUN fsck MANUALLY问题解决
    linux下网卡bonding配置(转)
    热扩容LVM形式的/(根)分区(无损增大、缩小LVM分区)
    LVM逻辑卷管理
  • 原文地址:https://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_liunx_65_prometheus_exporter.html
Copyright © 2011-2022 走看看