安装普罗米修斯监控
1 简介
promethus是基于go语言开发的监控平台
Prometheus生态系统由多个组件组成,它们中的一些是可选的。多数Prometheus组件是Go语言写的,这使得这些组件很容易编译和部署。
- Prometheus Server
主要负责数据采集和存储,提供PromQL查询语言的支持。 - 客户端SDK
官方提供的客户端类库有go、java、scala、python、ruby,其他还有很多第三方开发的类库,支持nodejs、php、erlang等。 - Push Gateway
支持临时性Job主动推送指标的中间网关。 - Exporter
Exporter是Prometheus的一类数据采集组件的总称。它负责从目标处搜集数据,并将其转化为Prometheus支持的格式。与传统的数据采集组件不同的是,它并不向中央服务器发送数据,而是等待中央服务器主动前来抓取。Prometheus提供多种类型的Exporter用于采集各种不同服务的运行状态。目前支持的有数据库、硬件、消息中间件、存储系统、HTTP服务器、JMX等。 - alertmanager
警告管理器,用来进行报警。
PS
- Prometheus 从根本上所有的存储都是按时间序列去实现的,相同的 metrics(指标名称) 和 label(一个或多个标签) 组成一条时间序列,不同的label表示不同的时间序列。
- Prometheus 的四种数据类型
- Counter 用于累计值,例如 记录 请求次数、任务完成数、错误发生次数。一直增加,不会减少。重启进程后,会被重置。
- Gauge 常规数值,例如 温度变化、内存使用变化。可变大,可变小。重启进程后,会被重置
- Histogram 可以理解为柱状图的意思,常用于跟踪事件发生的规模,例如:请求耗时、响应大小。它特别之处是可以对记录的内容进行分组,提供 count 和 sum 全部值的功能。
- Summary和Histogram十分相似,常用于跟踪事件发生的规模,例如:请求耗时、响应大小。同样提供 count 和 sum 全部值的功能。
它提供一个quantiles的功能,可以按%比划分跟踪的结果。例如:quantile取值0.95,表示取采样值里面的95%数据。 - 大部分监控项都可以使用Counter来实现,少部分使用Gauge和Histogram,其中Histogram在服务端计算是相当费CPU的,所以也没要导出太多Histogram数据。
2 简单使用
$ wget https://github.com/prometheus/prometheus/releases/download/v2.14.0/prometheus-2.14.0.lin
ux-amd64.tar.gz
$ tar -vxf prometheus-2.14.0.linux-amd64.tar.gz -C /usr/local/
修改部分配置,对外的ip和端口或者其他服务的监听端口等
$ vim prometheus.yml
试用
$ ./prometheus
打开http://localhost:9090/targets 查看界面
安装node_exporter
wget https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz
tar -vxf node_exporter-0.18.1.linux-amd64.tar.gz -C /usr/local/
运行
./node_exporter
image.png
3 使用Grafana 界面
wget [https://dl.grafana.com/oss/release/grafana_6.4.4_amd64.deb](https://dl.grafana.com/oss/release/grafana_6.4.4_amd64.deb)
sudo dpkg -i grafana_6.4.4_amd64.deb
打开页面3000端口
image.png image.png
接下来是按需求新增数据源和指标panel
网友评论