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 入門嘗試


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM