zoukankan      html  css  js  c++  java
  • Prometheus监控实战day2——监控主机和容器

      Prometheus使用exporter工具来暴露主机和应用程序上的指标,目前有很多exporter可供利用。对于收集各种主机指标数据(包括CPU、内存和磁盘),我们使用Node Exporter即可。如果需要监控Docker的话,建议使用cadvisor(容器)进行监控

    Node exporter的下载与安装:

    Prometheus官方exporter下载地址

    https://prometheus.io/docs/instrumenting/exporters/

    安装部署步骤我就省略了。直接下载解压运行即可

    Node Exporter配置:

    建议在使用前使用 --help命令查看帮助文档,这个很有用

    textfile收集器:

    node_exporter有一个textfile收集器,利用该手机器,我们可以配置一些静态指标。

    例如我们在某个路径创建某个目录,并在该目录内新建以prom结尾的文件,文件内书写相应的文本格式,例如:

    metadata{role="docker_server",datacenter="SZ"} 1      #role和datacenter好像是可以自己随便命名的,后面为对应的值,最后的1是因为该值是用来提供上下文的,不是计数型、测量型和计时型的指标

    该收集器默认会被自动加载,只需要在运行时使用--collector.textfile.directory参数即可。

    systemd收集器

    node_exporter默认收集的systemd的指标太多了,我们可以使用该收集器指定只接收的systemd服务监控内容,例如我们只想监控docker、ssh、rsyslog服务的监控内容指标,只需要在运行node_exporter指定--collector.systemd.unit-whitelist="(docker|ssh|rsyslog).service"即可

    具体示例

    配置多个Node Exporter示例

    监控多台node

    修改prometheus.yml文件对应部分内容

    配置只监听部分指标,例如cpu,内存信息等,其他未指定指标将被忽略

     可以通过以下命令进行测试

    运行cAdvisor

     使用浏览器访问

     

    数据收集上来之后,会被存储起来。但是cAdvisor收集了大量的数据,为了节省空间,我们可以将部分收集上来的数据直接drop掉,如下: 

    提取收集上来的数据中的某项的部分信息

    直接定义监控项(计算CPU在五分钟内的使用率,需要减去idle空闲的)

     

  • 相关阅读:
    inotify事件监控
    NFS网络文件共享服务
    Rsync数据同步服务
    SSH连接原理及ssh-key讲解
    C语言I博客作业04
    C语言l博客作业03
    C语言I博客作业02
    定义一个计算字符串高度的方法
    字典转模型
    UIScrollView和UIPageControl
  • 原文地址:https://www.cnblogs.com/biaopei/p/12040350.html
Copyright © 2011-2022 走看看