Docker監控Prometheus

百聯達發表於2017-10-25

一:Prometheus是什麼

Prometheus是一個開源的系統監控和報警工具。

二:Prometheus的特點

1.是一個多維度的資料模型,由指標名稱(metric name)和key/value鍵值對組成的時間序列資料構成。

2.在多維度的資料模型上有靈活的查詢語言。

3.不依賴分佈儲存,單主節點工作。

4.透過基於HTTPpull方式採集時序資料

Prometheus採集資料是用的pull也就是拉模型,透過HTTP協議去採集指標,只要應用系統能夠提供HTTP介面就可以接入監控系統,相比於私有協議或二進位制協議來說開發、簡單。

5.支援透過中介閘道器push時序資料

對於定時任務這種短週期的指標採集,如果採用pull模式,可能造成任務結束了,Prometheus還沒有來得及採集,這個時候可以使用加一箇中轉層,客戶端推資料到Push Gateway快取一下,由Prometheus從push gateway pull指標過來。(需要額外搭建Push Gateway,同時需要新增job去從gateway採資料)

6.透過服務發現或者靜態配置的方式去獲取要監控的目標服務

7.監控資訊支援多式多種視覺化和儀表盤方式展示

三:Prometheus的元件

1. Prometheus Server負責資料的採集和儲存

2. Client libraries客戶端類庫負責執行應用程式程式碼

3. Push Gateway 支援臨時性Job主動推送指標的中間閘道器

4. 相關服務(HAProxy)專有的exporters

5. Alertmanager用於出來預警

6. 各種支援工具

四:Prometheus的架構


Prometheus透過JobsPushgateway收集指標資料,儲存到本地,並根據規則生成時間序列資料或生成預計資訊,透過 或API消費端對收集到的資料進行視覺化展示。

五:Prometheus適合什麼

  適合用於記錄全數字化的時間序列,即適合於高度集中的框架監控也適合於高動態的服務架構監控。在微服務框架下,通常用來進行多維度的資料收集和分析。

  Prometheus是一個高可靠的系統,幫你快速發現問題,獨立單節點執行,不依賴於任何的網路儲存和遠端服務。在不依靠太多伺服器資源的情況下,便捷使用。

六:Prometheus 不適合什麼

Prometheus通常用來進行一般性的資料分析,如果你要求的是100%準確的化,並不適合。

七:Prometheus的安裝與配置

1.下載   

2.安裝

tar –zxvf

cd prometheus-*

3.配置  監控Prometheus自己
prometheus.yml
 
 4.啟動  

./prometheus -config.file=prometheus.yml  

5.監控結果頁面

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/28624388/viewspace-2146381/,如需轉載,請註明出處,否則將追究法律責任。

相關文章