本文环境 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 入门尝试

Prometheus 初体验的更多相关文章

  1. Prometheus初体验(三)

    一.安装部署 Prometheus基于Golang编写,编译后的软件包,不依赖于任何的第三方依赖.用户只需要下载对应平台的二进制包,解压并且添加基本的配置即可正常启动Prometheus Server ...

  2. .NET平台开源项目速览(15)文档数据库RavenDB-介绍与初体验

    不知不觉,“.NET平台开源项目速览“系列文章已经15篇了,每一篇都非常受欢迎,可能技术水平不高,但足够入门了.虽然工作很忙,但还是会抽空把自己知道的,已经平时遇到的好的开源项目分享出来.今天就给大家 ...

  3. Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验

    Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...

  4. Spring之初体验

                                     Spring之初体验 Spring是一个轻量级的Java Web开发框架,以IoC(Inverse of Control 控制反转)和 ...

  5. Xamarin.iOS开发初体验

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAAA+CAIAAAA5/WfHAAAJrklEQVR4nO2c/VdTRxrH+wfdU84pW0

  6. 【腾讯Bugly干货分享】基于 Webpack & Vue & Vue-Router 的 SPA 初体验

    本文来自于腾讯bugly开发者社区,非经作者同意,请勿转载,原文地址:http://dev.qq.com/topic/57d13a57132ff21c38110186 导语 最近这几年的前端圈子,由于 ...

  7. 【Knockout.js 学习体验之旅】(1)ko初体验

    前言 什么,你现在还在看knockout.js?这货都已经落后主流一千年了!赶紧去学Angular.React啊,再不赶紧的话,他们也要变out了哦.身旁的90后小伙伴,嘴里还塞着山东的狗不理大蒜包, ...

  8. 在同一个硬盘上安装多个 Linux 发行版及 Fedora 21 、Fedora 22 初体验

    在同一个硬盘上安装多个 Linux 发行版 以前对多个 Linux 发行版的折腾主要是在虚拟机上完成.我的桌面电脑性能比较强大,玩玩虚拟机没啥问题,但是笔记本电脑就不行了.要在我的笔记本电脑上折腾多个 ...

  9. 百度EChart3初体验

    由于项目需要在首页搞一个订单数量的走势图,经过多方查找,体验,感觉ECharts不错,封装的很细,我们只需要看自己需要那种类型的图表,搞定好自己的json数据就OK.至于说如何体现出来,官网的教程很详 ...

随机推荐

  1. eaccelerator 完全手册:配置、控制、API接口

    安装官方有很详细的文档 转自 http://www.enjoyphp.com/2010/eaccelerator-manual/ 配置选项 eaccelerator.shm_size指定 eAccel ...

  2. 《NodeJS开发指南》第五章微博实例开发总结

    所有文章搬运自我的个人主页:sheilasun.me <NodeJS开发指南>这本书用来NodeJS入门真是太好了,而且书的附录部分还讲到了闭包.this等JavaScript常用特性.第 ...

  3. maven windows 环境变量

    MAVEN_HOME,内容是解压的maven文件路径 Path中添加 %MAVEN_HOME%\bin 为了测试安装成功,打开命令提示符,输入 mvn -version

  4. Storm程序的并发机制(重点掌握)

    概念 Workers (JVMs): 在一个物理节点上可以运行一个或多个独立的JVM 进程.一个Topology可以包含一个或多个worker(并行的跑在不同的物理机上), 所以worker proc ...

  5. thinkphp中order方法

    order方法属于模型的连贯操作方法之一,用于对操作的结果排序. 用法 $Model->where('status=1')->order('id desc')->limit(5)-& ...

  6. jquery获取浏览器各种高宽

    $(document).ready(function(){ alert($(window).height()); //浏览器当前窗口可视区域高度 alert($(document).height()) ...

  7. 004.Zabbix3.x-Server服务端安装

    一 环境基础 1.1 部署基础环境 部署Zabbix需要LAMP或LANP环境,数据库可以为MySQL或者MariaDB.硬件及存储条件按需配置. 1.2 常见依赖列表 Web前端需要支持的软件环境如 ...

  8. [USACO3.2]Sweet Butter

    题目大意: 给定一张$k$个结点,$m$条边的无向图,其中有$n$个点被标记,在这$k$个点中找出一个点使得这个点到那$n$个点的最短距离之和最小,求出这个距离和. 思路: 对于每个标记结点跑最短路, ...

  9. C/C++ 和 PHP 技术经典图书,学习视频资料总结

    技术经典图书 1.<计算机科学导论> 作者:(美)佛罗赞,(美)莫沙拉夫著,刘艺等译(强推) 涵盖了大部分计算机课程的内容,但都是简介,是最基础的知识,非常适合计算机初学者看,强烈建议把课 ...

  10. Nginx简单总结

    NGINX简单总结 特点总结 nginx有一个master进程和多个worker进程,master进程是主要用来管理worker进程,管理的内容包括以下内容:接收来自外界的信号,向各个woker进程发 ...