一、什么是prometheus
Prometheus 是由 SoundCloud 开发的开源监控报警系统和时序列数据库(TSDB),它按给定的时间间隔从配置的目标收集指标,评估规则表达式,显示结果,并且如果观察到某些条件为真,则可触发警报。自2012年起,许多公司及组织已经采用 Prometheus,并且该项目有着非常活跃的开发者和用户社区.现在已经成为一个独立的开源项目核,并且保持独立于任何公司,Prometheus 在2016加入 CNCF ( Cloud Native Computing Foundation ), 作为在 kubernetes 之后的第二个由基金会主持的项目.
- promtheus框架
二、为什么是prometheus
1、普罗米修斯的主要特点
- 一个多维数据模型,具有由度量名称和键/值对标识的时间序列数据
- 一种灵活的查询语言 来利用这种维度
- 不依赖分布式存储; 单个服务器节点是自治的
- 时间序列收集通过HTTP上的拉式模型进行
- 推送时间序列通过中间网关支持
- 通过服务发现或静态配置来发现目标
- 多种模式的图形和仪表盘支持
2、普罗米修斯与其他监控的区别
监控数据的精细程度绝对的第一 ,可以精确到1s
集群部署的速度 监控脚本的制作 (指的是熟练之后) 非常快速 大大缩短监控的搭建时间成本
周边插件很丰富 exporter pushgateway 大多数都不需要自己开发了
本身基于数学计算模型,大量的实用函数,可以实现很复杂规则的业务逻辑监控
可以嵌入很多开源工具的内部进行监控,数据更准时、 更可信
本身是开源的,更新速度快,bug修复快。
支持N多种语言做本身和插件的二次开发
跟Grafana的结合图形很高大上,很美观
三、prometheus搭建
1、安装部署
系统:CentOS6.5
服务器端:192.168.2.109 server01
监控端:192.168.2.104 server02
官网下载最新版prometheus跟node_exporter,因为prometheus是由go语言写的,解压./直接用
server01:tar -xvf prometheus-2.3.0.linux-amd64.tar.gz
编辑prometheus.yml如下配置:
prometheus占用9090端口,node_exporter占用9100端口
配置好后后台启动prometheus
server01:screen -dmS prometheus ./prometheus
进入server02,启动node_exporter
server02:tar -xvf node_exporter-0.16.0.linux-amd64.tar.gz
cd node_exporter-0.16.0.linux-amd64
screen -dms node_exporter ./node_exporter
打开浏览器,输入192.168.2.109:9090就可以看到prometheus界面了
2、Grafana美化
官网下载Grafana安装包到server01
server01:tar -xvf grafana-5.1.3.linux-x64.tar.gz
cd grafana-5.1.3/bin
screen -dms grafana ./grafana-server
打开浏览器输入192.168.2.109:3000就可以看到Grafana界面。默认用户名密码为admin,登录后进行如下配置
建议URL配置为server段ip,而不是localhost
接下来就可以使用prometheus的数据配置仪表盘了!
成品图: