本文環境 Redhat Linux 6.7, Prometheus 2.2.1,node_exporter 1.5.2html
Prometheus 是2012年由 SoundCloud 開源的系統監控和報警工具集,在 《Google SRE 運維解密》一書中也提到與Google內部的Borgmon思想一致。使用 Go 語言開發,適用於各個平臺。node
[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 格式,默認配置文件包括三個分區:global
、rule_files
、scrape_configs
。linux
global
控制 Prometheus 服務器的全局配置。scrape_interval
決定數據抓取的間隔。evaluation_interval
決定數據計算的間隔,Prometheus會根據rule_file來產生新的時間序列值。瀏覽器
rule_files
決定規則文件的保存路徑。服務器
scrape_config
決定Prometheus監控的資源。Prometheus經過HTTP暴露本身的數據,所以也能夠監控本身的健康情況。less
啓動很是簡單運維
[root@bj1eccap01 prometheus-2.2.1.linux-amd64]# ./prometheus --config.file=prometheus.yml
這以後就能夠經過瀏覽查看服務的運行情況了,打開瀏覽器輸入 http://localhost:9090/graph函數
Prometheus 提供了兩種方式查看指標 graph 模式能夠直接看到指標曲線,metrics 則看到原始的監控數據。經過切換到 console 界面能夠看到。工具
node_exporter 用來收集服務器的監控信息,目前穩定版本爲1.15.2。node_exporter 默認使用 9100 端口監聽,Prometheus 會從 node_exporter 中獲取信息。lua
[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 |
本文爲做者原創,若是您以爲本文對您有幫助,請隨意打賞,您的支持將鼓勵我繼續創做。
參考資料:
一、Prometheus
二、Prometheus First Step
三、Prometheus 入門嘗試