美文网首页
Prometheus第2篇高级配置举例

Prometheus第2篇高级配置举例

作者: 爱喝咖啡的土拨鼠 | 来源:发表于2018-01-30 22:01 被阅读0次

    范例1:监控多台服务器

    概述:

    主要用到Prometheus主服务和node_export,Prometheus主服务是必不可少的,第一篇已介绍过安装,其次是node_export,它是一个可选组件,除了node_export还有mysql_export,nginx_export等,范例1主要是讲如何监控服务器,所以我们要用node_export

    环境:
    两台服务器

    node_export 装在需要被监控的服务器上,此处两台服务器都要安装,Prometheus主服务安装一个即可,随便安装在哪个服务器上。

    172.17.25.245
    172.17.25.122
    

    搭建:

    tar -zxvf node_exporter-0.15.2.linux-amd64.tar.gz
    
    • Step2 运行
    sudo ./node_exporter
    

    或者直接使用docker

     sudo docker run -d -p 9100:9100 --restart=always prom/node-exporter:latest
    
    • Step3 查看启动结果


      启动结果
    • Step4 Prometheus主服务器与node_export相关联
      修改Prometheus主服务器的配置文件prometheus.yml

    添加:

     - job_name: 'node'
        static_configs:
          - targets: ['172.17.25.122:9100']
    

    prometheus.yml

    bozhon@bozhon:~$ cat docker/volumes/prometheus/prometheus.yml 
    
    # my global config
    global:
      scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
      evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
      # scrape_timeout is set to the global default (10s).
    
    # Alertmanager configuration
    alerting:
      alertmanagers:
      - static_configs:
        - targets:
          # - alertmanager:9093
    
    # Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
    rule_files:
      # - "first_rules.yml"
      # - "second_rules.yml"
    
    # A scrape configuration containing exactly one endpoint to scrape:
    # Here it's Prometheus itself.
    scrape_configs:
      # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
      - job_name: 'prometheus'
    
        # metrics_path defaults to '/metrics'
        # scheme defaults to 'http'.
    
        static_configs:
          - targets: ['localhost:9090']
      - job_name: 'node'
        static_configs:
          - targets: ['172.17.25.122:9100']
    
    • Step5 查看结果


      结果
    结果

    范例2:使用Grafana展现监控数据

    前言:
    Grafana是一个可视化面板(Dashboard),有着非常漂亮的图表和布局展示,功能齐全的度量仪表盘和图形编辑器

    其实Prometheus自带的UI界面也不错,但是Grafana更加的美观炫酷,,它从2.5.0版开始直接支持Prometheus的数据。所以我们可以选择Grafana来做我们的监控UI
    配置步骤:

    • Step1 安装启动Grafana
    使用docker运行: sudo docker run -d   --name grafana --restart=always  -p 3000:3000 grafana/grafana
    
    • Step2 配置数据源

    输入默认的admin/admin登录grafana。选择左侧的Data Sources,然后点击上面的Add new按钮,便可以把prometheus作为数据源导入
    参数参考下图 (一般情况下端口是9090,不过这个端口被我其他的服务占用了,所以当时配置的是7070)


    数据源配置
    • Step2 验证数据库连接,点击左下角 save&test


      验证连接
    • Step3 添加图表
      Dashboards -> New -> graph


      添加graph
    • Step4 编辑图表
      点击1处的panel title 再点击2处的edit 会出现3处的编辑区
      在4处写要查询的语句,点击5查看即可


      编辑图表
    • Step5 结果展示
      本示例中填写的查询语句是node_memory_Active
      查询的是节点的内存情况,展示结果如下图所示,我们看到有2条线,这两条线就是下一篇会针对查询语句做一个总结


      结果展示

    相关文章

      网友评论

          本文标题:Prometheus第2篇高级配置举例

          本文链接:https://www.haomeiwen.com/subject/ncshzxtx.html