• prometheus.(5).数据采集优化配置以及部署


    企业级监控数据采集方法

    作者声明:本博客内容是作者在学习以及搭建过程中积累的内容,内容采自网络中各位老师的优秀博客以及视频,并根据作者本人的理解加以修改(由于工作以及学习中东拼西凑,如何造成无法提供原链接,在此抱歉!!!)

    作者再次声明:作者只是一个很抠脚的IT工作者,希望可以跟那些提供原创的老师们学习

    服务端的安装和后台稳定运行

    运行方式

    我们需要让prometheus_server运行在后台而不是前端(客户端退出后prometheus也退出了)

    第一种: 安装screen工具放入后台运运行

    缺点:很容易被误关闭 操作的时候 ctrl +ad / ctrl +d 不小心操作错了直接就退出去了...

    第二种: 使用daemonize放入后台方式

    daemonize Unix系统后台守护进程管理软件

    优点:更加正规 后台运行更稳定

    git clone git://github.com/bmc/daemonize.git
    
    sh configure && make && sudo make install 
    
    daemonize -c /data/prometheus/ /data/prometheus/up.sh
    

    -c 是指定运行路径

    /data/prometheus/up.sh 是运行路径下的启动脚本

    /data/prometheus/prometheus --web.listen-address="0.0.0.0:9090"  --web.read-timeout=5m    --web.max-connections=10  --storage.tsdb.retention=15d  --storage.tsdb.path="data/"  --query.max-concurrency=20  --query.timeout=2m
    

    启动参数

    ./prometheus 在实际企业运行时启动参数的合理配置

    请求链接的最大等待时间

    --web.read-timeout=5m
    

    prometheus进程会建立很多的网络链接GET PUSH,利用这个参数让进程进行回收。防止 太多的空闲链接 占用资源

    最大链接数

    --web.max-connections=512  
    

    数据存储时间

    --storage.tsdb.retention=15d
    

    prometheus开始采集监控数据后会存在内存中和硬盘中,对于保留期限的设置很重要太长的话硬盘和内存都吃不消,太短的话要查历史数据就没有了,企业中设置15天为宜。

    存储数据路径

    --storage.tsdb.path="data/" 
    

    存储数据路径 这个也很重要 不要随便放在⼀个地⽅就执⾏ 会

    把/根目录塞满了

    用户使用优化

    --query.timeout=2m
    
    --query.max-concurrency=20 
    

    上面这两项是对用户执行prometheus查询时候的优化设置

    防止太多的用户同时查询(20),也防止单个用户执行过大的查询卡住(2m)而一直不退出。

    如上参数 配置上去后 prometheus运行就相对稳妥多了。

    数据存放

    1584518884167

    其中这些长串字母的是历史数据保留,而当前近期数据实际上保留在内存中,并且按照⼀定间隔存放在 wal / 目录中 防止突然断电 或者 重启 以用来恢复内存中的数据。

    服务端配置文件添加监控项

        global:
          scrape_interval: 15s  #设置多少时间间隔采集⼀次数据
          scrape_timeout: 15s
        scrape_configs:
        - job_name: 'prometheus'  #配置⼀个job的标签
          static_configs:
          - targets: ['localhost:9090']  #监控的主机
        - job_name: 'node'
          static_configs:
          - targets: [‘server1:9100','server2:9100’,'sesrver3:9100']
    

    node_exporter安装和后台运行

    运行方式

    下载地址为 https://prometheus.io/download/#node_exporter

    同样适用daemonize放入被监控服务器后台运行,默认运行在9100端口

    观察和采集数据

    针对这个node_exporter进行初步的手动查询以确保正常获取监控数据

    本地查询

    curl localhost:9100/metrics  #根据全局配置,15s获取一次数据
    

    node_exporter默认开启和不开启的监控项目

    https://github.com/prometheus/node_exporter

    1584522420604

    查询采集回来的各种数据

    1584522848122

  • 相关阅读:
    Gecko SDK (XULRunner SDK)最新版
    北京联通机顶盒-中兴B860A破解
    litepdf简单的PDF操作库
    BZOJ1925 [SDOI2010]地精部落
    BZOJ 最大公约数 (通俗易懂&效率高&欧拉函数)
    Tarjan无向图的割点和桥(割边)全网详解&算法笔记&通俗易懂
    最近公共祖先综合算法笔记
    严格次小生成树[BJWC2010]
    NOIP2016 Day1 T2 天天爱跑步(树上差分,LCA)
    树上差分算法笔记
  • 原文地址:https://www.cnblogs.com/orange-lsc/p/12825574.html
Copyright © 2020-2023  润新知