zoukankan      html  css  js  c++  java
  • prometheus + grafana + pushgateway 搭建监控可视化系统

    使用prometheus + grafana + pushgateway搭建监控可视化系统

    安装docker环境

    # yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
    # yum -y install docker-ce git
    
    # systemctl start docker
    # systemctl enable docker
    
    

    安装prometheus + grafana + pushgateway

    安装 prometheus+ grafana + pushgateway

    • 获取docker-compose.yaml
    # cd /opt/
    # git clone https://github.com/evnsio/prom-stack.git
    # cd prom-stack
    
    • 设置持久化
    version: "3"
    services:
    
      pushgateway:
        image: prom/pushgateway:v0.4.0
        command: --persistence.file=/pushgateway/pushgateway.data
        ports:
          - 9091:9091
        volumes:
          - ./data/pushgateway:/pushgateway
    
      prometheus:
        #image: prom/prometheus:v2.0.0
        image: prom/prometheus:v2.18.1
        command: --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.retention=60d
        user: 0:0
        ports:
          - 9090:9090
        volumes:
          - ./prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
          - ./prometheus/alerts/:/etc/prometheus/rules.d/
          - ./data/prometheus:/prometheus
    
      grafana:
        #image: grafana/grafana:4.6.2
        image: grafana/grafana:6.7.1
        ports:
          - 3000:3000
        volumes:
          - ./data/grafana:/var/lib/grafana
        environment:
          - GF_SECURITY_ADMIN_PASSWORD=password
    
      alertmanager:
        image: prom/alertmanager:v0.11.0
        command: --config.file=/etc/alertmanager/alertmanager.yml
        ports:
          - 9093:9093
        volumes:
          - ./alertmanager/alertmanager.yml:/etc/alertmanager/alertmanager.yml
    

    grafana使用默认用户名密码 admin password 登陆

    • 安装 docker-compse
    ## 安装Docker-compose
    
    # curl "https://dl.cactifans.com/zabbix_docker/docker-compose" -o /usr/bin/docker-compose
    # chmod a+x /usr/bin/docker-compose
    
    ##  查看docker-compose版本
    
    # docker-compose version
    
    • 创建目录
    ## 创建目录
    # mkdir /data/monitor/prom-stack/data/{grafana,prometheus,pushgateway}
    
    ## 修改grafana目录属主和属组,否则容器无法启动
    # chown 472:472 -R /data/monitor/prom-stack/data/grafana
    
    
    • 启动服务
    # cd /opt/prom-stack
    # docker-compose -f docker-compose.yml pull
    # docker-compose -f docker-compose.yml up -d
    

    查看服务安装情况

    # docker-compse ps
    
    # docker ps -a
    

    使用curl生成测试数据

    • 可以使用$RANDOM来生成随机数
    # while true; do
        echo "mymetric $RANDOM" | curl --data-binary @- http://localhost:9091/metrics/job/my-push-job
        sleep 1
    done
    

    "mymetric"就是这个被监控的指标,这个监控指标推送到pushgateway比较简洁直观的

    可以看到测试的数据已经进入pushgateway了

    在grafana配置可视化界面

    配置从prometheus里获取监控数据

    • 查看操作结果

    创建监控数据展示页面

    • 选择graph类型的展示效果

    • 点击"Panel Title"选择Edit

    • 在查询参数处使用这个条件
    mymetric{exported_job="my-push-job",instance="172.16.0.1:9091",job="prom-stack"}
    

    查询出这一步生成的用来测试的监控数据,点击保存生成图表

    参考文档

    https://juejin.im/post/5ce3e44bf265da1bd260c157
    
  • 相关阅读:
    数据库事务的四大特性以及事务的隔离级别
    数据库事务
    Java 反射机制(包括组成、结构、示例说明等内容)
    Java 集合系列14之 Map总结(HashMap, Hashtable, TreeMap, WeakHashMap等使用场景)
    一分钟教你知道乐观锁和悲观锁的区别
    vue-router的history模式发布配置
    asp.net core使用Swashbuckle.AspNetCore(swagger)生成接口文档
    ubuntu下查看-卸载软件(卸载.net core sdk的方法)
    ubuntu终端执行shell脚本报command not found解决方法
    sqlserver 重置标识列
  • 原文地址:https://www.cnblogs.com/evescn/p/12843653.html
Copyright © 2011-2022 走看看