zoukankan      html  css  js  c++  java
  • Prometheus 初体验

    本文环境 Redhat Linux 6.7, Prometheus 2.2.1,node_exporter 1.5.2

    介绍

    Prometheus 是2012年由 SoundCloud 开源的系统监控和报警工具集,在 《Google SRE 运维解密》一书中也提到与Google内部的Borgmon思想一致。使用 Go 语言开发,适用于各个平台。

    安装

    [root@bj1eccap01 ~]# tar -xvzf prometheus-2.2.1.linux-amd64.tar.gz 
    [root@bj1eccap01 ~]# cd prometheus-2.2.1.linux-amd64
    [root@bj1eccap01 prometheus-2.2.1.linux-amd64]# ./prometheus --help
    usage: prometheus [<flags>]
    
    

    配置

    安装包下有一个默认的配置文件,是 YAML 格式,默认配置文件包括三个分区:globalrule_filesscrape_configs

    global控制 Prometheus 服务器的全局配置。scrape_interval 决定数据抓取的间隔。evaluation_interval 决定数据计算的间隔,Prometheus会根据rule_file来产生新的时间序列值。

    rule_files决定规则文件的保存路径。

    scrape_config决定Prometheus监控的资源。Prometheus通过HTTP暴露自己的数据,因此也可以监控自己的健康状况。

    启动

    启动非常简单

    [root@bj1eccap01 prometheus-2.2.1.linux-amd64]# ./prometheus --config.file=prometheus.yml
    

    这之后就可以通过浏览查看服务的运行状况了,打开浏览器输入 http://localhost:9090/graph

    Prometheus 提供了两种方式查看指标 graph 模式可以直接看到指标曲线,metrics 则看到原始的监控数据。通过切换到 console 界面可以看到。


    node_exporter 安装

    node_exporter 用来收集服务器的监控信息,目前稳定版本为1.15.2。node_exporter 默认使用 9100 端口监听,Prometheus 会从 node_exporter 中获取信息。

    [root@bj1eccap01 ~]# tar -xzvf node_exporter-0.15.2.linux-amd64.tar.gz
    [root@bj1eccap01 ~]# cd node_exporter-0.15.2.linux-amd64
    [root@bj1eccap01 node_exporter-0.15.2.linux-amd64]# ./node_exporter
    

    运算与统计

    Prometheus 提供了一套查询语言,支持运算以及一些常用的统计运算。

    运算符号

    Prometheus 支持如下运算符。

    运算符 说明
    + 加法
    - 减法
    * 相乘
    / 相除
    % 取摸运算
    == 相等
    != 不相等
    > 大于
    < 小于
    >= 大于或等于
    <= 小于或等于
    and 逻辑和
    or 逻辑或
    unless 除非,取补集

    统计函数

    方法名 介绍
    sum 求和
    min 求最小值
    max 求最大值
    avg 取平均值
    stddev 计算标准差
    stdvar
    count 计算总数
    count_values 计算相同值的数量
    bottomk 最小的k个元素
    topk 最大的k个元素
    quantile

    本文为作者原创,如果您觉得本文对您有帮助,请随意打赏,您的支持将鼓励我继续创作。

    参考资料:
    1、Prometheus
    2、Prometheus First Step
    3、Prometheus 入门尝试

  • 相关阅读:
    系统架构设计(通用型)
    主流Java数据库连接池分析(C3P0,DBCP,TomcatPool,BoneCP,Druid)
    JS实现多行文本最后是省略号紧随其后还有个超链接在同一行的需求
    java判断集合是否相等
    JavaScript调试技巧
    linux下出现ping:unknown host www.baidu.com问题时的解决办法——ubuntu下局域网络的配置
    linux网络配置相关命令、虚拟网络接口eth0:0
    网络游戏服务器架构设计
    Linux 下使用静态google protocl buffer
    php-fpm nginx 使用 curl 请求 https 出现 502 错误
  • 原文地址:https://www.cnblogs.com/cocowool/p/8585969.html
Copyright © 2011-2022 走看看