91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Prometheus是什么

發布時間:2022-01-05 16:48:44 來源:億速云 閱讀:265 作者:柒染 欄目:大數據

今天就跟大家聊聊有關Prometheus是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

Prometheus 是什么?

Prometheus是一套開源的監控&報警&時間序列數據庫的組合,起始是由SoundCloud公司開發的。隨著發展,越來越多公司和組織接受采用Prometheus,社會也十分活躍,他們便將它獨立成開源項目,并且有公司來運作。google SRE的書內也曾提到跟他們BorgMon監控系統相似的實現是Prometheus。現在最常見的Kubernetes容器管理系統中,通常會搭配Prometheus進行監控。

Prometheus 的優點
  • 非常少的外部依賴,安裝使用超簡單

  • 已經有非常多的系統集成 例如:docker HAProxy Nginx JMX等等

  • 服務自動化發現

  • 直接集成到代碼

  • 設計思想是按照分布式、微服務架構來實現的

Prometheus 的特性
  • 自定義多維度的數據模型

  • 非常高效的存儲 平均一個采樣數據占 ~3.5 bytes左右,320萬的時間序列,每30秒采樣,保持60天,消耗磁盤大概228G。

  • 強大的查詢語句

  • 輕松實現數據可視化

等等

相對于Graphite這種產品,還是有不少優點的。最讓我覺得不錯的是非常優秀的寫性能和讀取性能,它數據結構實現和OpenTSDB是有相似之處,有興趣可以看看這個文檔。解密OpenTSDB的表存儲優

Prometheus 的系統架構

Prometheus是什么

它的服務過程是這樣的 Prometheus daemon 負責定時去目標上抓取 metrics(指標) 數據,每個抓取目標需要暴露一個http服務的接口給它定時抓取。
Prometheus支持通過配置文件、文本文件、zookeeper、Consul、DNS SRV lookup等方式指定抓取目標。
Alertmanager 是獨立于Prometheus的一個組件,可以支持Prometheus的查詢語句,提供十分靈活的報警方式。
Prometheus支持很多方式的圖表可視化,例如十分精美的Grafana,自帶的Promdash,以及自身提供的模版引擎等等,還提供HTTP API的查詢方式,自定義所需要的輸出。
PushGateway這個組件是支持Client主動推送 metrics 到PushGateway,而Prometheus只是定時去Gateway上抓取數據。

如果有使用過statsd的用戶,則會覺得這十分相似,只是statsd是直接發送給服務器端,而Prometheus主要還是靠進程主動去抓取。

Prometheus 的數據模型

Prometheus 從根本上所有的存儲都是按時間序列去實現的,相同的 metrics(指標名稱) 和 label(一個或多個標簽) 組成一條時間序列,不同的label表示不同的時間序列。為了支持一些查詢,有時還會臨時產生一些時間序列存儲。

metrics name & label 指標名稱和標簽

每條時間序列是由唯一的 指標名稱 和 一組 標簽 (key=value)的形式組成。
指標名稱 一般是給監測對像起一名字,例如 http_requests_total 這樣,它有一些命名規則,可以包字母數字_之類的的。
通常是以應用名稱開頭_監測對像_數值類型_單位這樣。
例如:

  1. push_total

  2. userlogin_mysql_duration_seconds

  3. app_memory_usage_bytes

標簽 就是對一條時間序列不同維度的識別了,例如 一個http請求用的是POST還是GET,它的endpoint是什么,這時候就要用標簽去標記了。
最終形成的標識便是這樣了

http_requests_total{method="POST",endpoint="/api/tracks"}

記住,針對http_requests_total這個metrics name 無論是增加標簽還是刪除標簽都會形成一條新的時間序列。
查詢語句就可以跟據上面標簽的組合來查詢聚合結果了。
如果以傳統數據庫的理解來看這條語句,則可以考慮 http_requests_total是表名,標簽是字段,而timestamp是主鍵,還有一個float64字段是值了。(Prometheus里面所有值都是按float64存儲)

Prometheus 的四種數據類型

Counter
  • Counter 用于累計值,例如 記錄 請求次數、任務完成數、錯誤發生次數。

  • 一直增加,不會減少。

  • 重啟進程后,會被重置。

例如:http_response_total{method="GET",endpoint="/api/tracks"} 100
10秒后抓取 http_response_total{method="GET",endpoint="/api/tracks"} 100

Gauge
  • Gauge 常規數值,例如 溫度變化、內存使用變化。

  • 可變大,可變小。

  • 重啟進程后,會被重置

例如: memory_usage_bytes{host="master-01"} 100 < 抓取值
memory_usage_bytes{host="master-01"} 30
memory_usage_bytes{host="master-01"} 50
memory_usage_bytes{host="master-01"} 80 < 抓取值

Histogram
  • Histogram 可以理解為柱狀圖的意思,常用于跟蹤事件發生的規模,例如:請求耗時、響應大小。它特別之處是可以對記錄的內容進行分組,提供 count 和 sum 全部值的功能。

    例如:{小于10=5次,小于20=1次,小于30=2次},count=7次,sum=7次的求和值

Prometheus是什么

Summary
  • Summary和Histogram十分相似,常用于跟蹤事件發生的規模,例如:請求耗時、響應大小。同樣提供 count 和 sum 全部值的功能。

  • 例如:count=7次,sum=7次的值求值

  • 它提供一個quantiles的功能,可以按%比劃分跟蹤的結果。例如:quantile取值0.95,表示取采樣值里面的95%數據。

看完上述內容,你們對Prometheus是什么有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

长寿区| 故城县| 嵩明县| 东乡族自治县| 白朗县| 江口县| 汉寿县| 东丰县| 河北区| 兴山县| 南投市| 阳西县| 德令哈市| 肇庆市| 铅山县| 上林县| 中西区| 穆棱市| 方城县| 浦城县| 闽清县| 盐城市| 海阳市| 广东省| 鲁山县| 石门县| 夏津县| 绍兴县| 固原市| 兴宁市| 吉木萨尔县| 铁岭市| 石嘴山市| 仁寿县| 苏州市| 桐梓县| 同江市| 成都市| 喀喇沁旗| 阿勒泰市| 兰溪市|