日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

prometheus命令_Prometheus 入门

發(fā)布時(shí)間:2023/12/3 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 prometheus命令_Prometheus 入门 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

學(xué)習(xí)安裝 Prometheus 監(jiān)控和警報(bào)系統(tǒng)并編寫它的查詢。

-- Michael Zamot(作者)

Prometheus 是一個(gè)開(kāi)源的監(jiān)控和警報(bào)系統(tǒng),它直接從目標(biāo)主機(jī)上運(yùn)行的代理程序中抓取指標(biāo),并將收集的樣本集中存儲(chǔ)在其服務(wù)器上。也可以使用像 collectd_exporter 這樣的插件推送指標(biāo),盡管這不是 Promethius 的默認(rèn)行為,但在主機(jī)位于防火墻后面或位于安全策略禁止打開(kāi)端口的某些環(huán)境中它可能很有用。

Prometheus 是 云原生計(jì)算基金會(huì)(CNCF) 的一個(gè)項(xiàng)目。它使用 聯(lián)合模型(federation model)進(jìn)行擴(kuò)展,該模型使得一個(gè) Prometheus 服務(wù)器能夠抓取另一個(gè) Prometheus 服務(wù)器的數(shù)據(jù)。這允許創(chuàng)建分層拓?fù)?#xff0c;其中中央系統(tǒng)或更高級(jí)別的 Prometheus 服務(wù)器可以抓取已從下級(jí)實(shí)例收集的聚合數(shù)據(jù)。

除 Prometheus 服務(wù)器外,其最常見(jiàn)的組件是 警報(bào)管理器 及其輸出器。

警報(bào)規(guī)則可以在 Prometheus 中創(chuàng)建,并配置為向警報(bào)管理器發(fā)送自定義警報(bào)。然后,警報(bào)管理器處理和管理這些警報(bào),包括通過(guò)電子郵件或第三方服務(wù)(如 PagerDuty )等不同機(jī)制發(fā)送通知。

Prometheus 的輸出器可以是庫(kù)、進(jìn)程、設(shè)備或任何其他能將 Prometheus 抓取的指標(biāo)公開(kāi)出去的東西。 這些指標(biāo)可在端點(diǎn) /metrics 中獲得,它允許 Prometheus 無(wú)需代理直接抓取它們。本文中的教程使用 node_exporter 來(lái)公開(kāi)目標(biāo)主機(jī)的硬件和操作系統(tǒng)指標(biāo)。輸出器的輸出是明文的、高度可讀的,這是 Prometheus 的優(yōu)勢(shì)之一。

此外,你可以將 Prometheus 作為后端,配置 Grafana 來(lái)提供數(shù)據(jù)可視化和儀表板功能。

理解 Prometheus 的配置文件

抓取 /metrics 的間隔秒數(shù)控制了時(shí)間序列數(shù)據(jù)庫(kù)的粒度。這在配置文件中定義為 scrape_interval 參數(shù),默認(rèn)情況下設(shè)置為 60 秒。

在 scrape_configs 部分中為每個(gè)抓取作業(yè)設(shè)置了目標(biāo)。每個(gè)作業(yè)都有自己的名稱和一組標(biāo)簽,可以幫助你過(guò)濾、分類并更輕松地識(shí)別目標(biāo)。一項(xiàng)作業(yè)可以有很多目標(biāo)。

安裝 Prometheus

在本教程中,為簡(jiǎn)單起見(jiàn),我們將使用 Docker 安裝 Prometheus 服務(wù)器和 node_exporter。Docker 應(yīng)該已經(jīng)在你的系統(tǒng)上正確安裝和配置。對(duì)于更深入、自動(dòng)化的方法,我推薦 Steve Ovens 的文章《 如何使用 Ansible 與 Prometheus 建立系統(tǒng)監(jiān)控 》。

在開(kāi)始之前,在工作目錄中創(chuàng)建 Prometheus 配置文件 prometheus.yml,如下所示:

global: scrape_interval: 15s evaluation_interval: 15sscrape_configs: - job_name: 'prometheus' static_configs: - targets: ['localhost:9090'] - job_name: 'webservers' static_configs: - targets: [':9100']

通過(guò)運(yùn)行以下命令用 Docker 啟動(dòng) Prometheus:

$ sudo docker run -d -p 9090:9090 -v/path/to/prometheus.yml:/etc/prometheus/prometheus.ymlprom/prometheus

默認(rèn)情況下,Prometheus 服務(wù)器將使用端口 9090。如果此端口已在使用,你可以通過(guò)在上一個(gè)命令的后面添加參數(shù) --web.listen-address=":" 來(lái)更改它。

在要監(jiān)視的計(jì)算機(jī)中,使用以下命令下載并運(yùn)行 node_exporter 容器:

$ sudo docker run -d -v "/proc:/host/proc" -v "/sys:/host/sys" -v"/:/rootfs" --net="host" prom/node-exporter --path.procfs/host/proc --path.sysfs /host/sys --collector.filesystem.ignored-mount-points "^/(sys|proc|dev|host|etc)($|/)"

出于本文練習(xí)的目的,你可以在同一臺(tái)機(jī)器上安裝 node_exporter 和 Prometheus。請(qǐng)注意,生產(chǎn)環(huán)境中在 Docker 下運(yùn)行 node_exporter 是不明智的 —— 這僅用于測(cè)試目的。

要驗(yàn)證 node_exporter 是否正在運(yùn)行,請(qǐng)打開(kāi)瀏覽器并導(dǎo)航到 http://:9100/metrics,這將顯示收集到的所有指標(biāo);也即是 Prometheus 將要抓取的相同指標(biāo)。

要確認(rèn) Prometheus 服務(wù)器安裝成功,打開(kāi)瀏覽器并導(dǎo)航至: http://localhost:9090 。

你應(yīng)該看到了 Prometheus 的界面。單擊“Status”,然后單擊“Targets”。在 “Status” 下,你應(yīng)該看到你的機(jī)器被列為 “UP”。

使用 Prometheus 查詢

現(xiàn)在是時(shí)候熟悉一下 PromQL (Prometheus 的查詢語(yǔ)法)及其圖形化 Web 界面了。轉(zhuǎn)到 Prometheus 服務(wù)器上的 http://localhost:9090/graph。你將看到一個(gè)查詢編輯器和兩個(gè)選項(xiàng)卡:“Graph” 和 “Console”。

Prometheus 將所有數(shù)據(jù)存儲(chǔ)為時(shí)間序列,使用指標(biāo)名稱標(biāo)識(shí)每個(gè)數(shù)據(jù)。例如,指標(biāo) node_filesystem_avail_bytes 顯示可用的文件系統(tǒng)空間。指標(biāo)的名稱可以在表達(dá)式框中使用,以選擇具有此名稱的所有時(shí)間序列并生成即時(shí)向量。如果需要,可以使用選擇器和標(biāo)簽(一組鍵值對(duì))過(guò)濾這些時(shí)間序列,例如:

node_filesystem_avail_bytes{fstype="ext4"}

過(guò)濾時(shí),你可以匹配“完全相等”(=)、“不等于”(!=),“正則匹配”(=~)和“正則排除匹配”(!~)。以下示例說(shuō)明了這一點(diǎn):

要過(guò)濾 node_filesystem_avail_bytes 以顯示 ext4 和 XFS 文件系統(tǒng):

node_filesystem_avail_bytes{fstype=~"ext4|xfs"}

要排除匹配:

node_filesystem_avail_bytes{fstype!="xfs"}

你還可以使用方括號(hào)得到從當(dāng)前時(shí)間往回的一系列樣本。你可以使用 s 表示秒,m 表示分鐘,h 表示小時(shí),d 表示天,w 表示周,而 y 表示年。使用時(shí)間范圍時(shí),返回的向量將是范圍向量。

例如,以下命令生成從五分鐘前到現(xiàn)在的樣本:

node_memory_MemAvailable_bytes[5m]

Prometheus 還包括了高級(jí)查詢的功能,例如:

100 * (1 - avg by(instance)(irate(node_cpu_seconds_total{job='webservers',mode='idle'}[5m])))

請(qǐng)注意標(biāo)簽如何用于過(guò)濾作業(yè)和模式。指標(biāo) node_cpu_seconds_total 返回一個(gè)計(jì)數(shù)器,irate()函數(shù)根據(jù)范圍間隔的最后兩個(gè)數(shù)據(jù)點(diǎn)計(jì)算每秒的變化率(意味著該范圍可以小于五分鐘)。要計(jì)算 CPU 總體使用率,可以使用 node_cpu_seconds_total 指標(biāo)的空閑(idle)模式。處理器的空閑比例與繁忙比例相反,因此從 1 中減去 irate 值。要使其為百分比,請(qǐng)將其乘以 100。

了解更多

Prometheus 是一個(gè)功能強(qiáng)大、可擴(kuò)展、輕量級(jí)、易于使用和部署的監(jiān)視工具,對(duì)于每個(gè)系統(tǒng)管理員和開(kāi)發(fā)人員來(lái)說(shuō)都是必不可少的。出于這些原因和其他原因,許多公司正在將 Prometheus 作為其基礎(chǔ)設(shè)施的一部分。

要了解有關(guān) Prometheus 及其功能的更多信息,我建議使用以下資源:

  • 關(guān)于 PromQL
  • 什么是 node_exporters 集合
  • Prometheus 函數(shù)
  • 4 個(gè)開(kāi)源監(jiān)控工具
  • 現(xiàn)已推出:DevOps 監(jiān)控工具的開(kāi)源指南

總結(jié)

以上是生活随笔為你收集整理的prometheus命令_Prometheus 入门的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。