Prometheus學(xué)習(xí)系列(二十六)之集成

根據(jù)我們的穩(wěn)定承諾实蔽,Prometheus 2.0版本包含許多向后不兼容的更改。 本文檔提供了從Prometheus 1.8遷移到Prometheus 2.0的指導(dǎo)谨读。

一局装、標(biāo)志

Prometheus命令行標(biāo)志的格式已更改。現(xiàn)在所有標(biāo)志都使用雙破折號而不是單個破折號劳殖。公共標(biāo)志(--config.file铐尚, --web.listen-address--web.external-url)仍然相同,但除此之外哆姻,幾乎所有與存儲相關(guān)的標(biāo)志都已被刪除宣增。

一些值得注意的標(biāo)志已刪除:

  • -alertmanager.url在Prometheus 2.0中,已刪除用于配置靜態(tài)Alertmanager URL的命令行標(biāo)志∶В現(xiàn)在必須通過服務(wù)發(fā)現(xiàn)來發(fā)現(xiàn)Alertmanager爹脾,請參閱Alertmanager服務(wù)發(fā)現(xiàn)。

  • -log.format在Prometheus 2.0中箕昭,日志只能流式傳輸?shù)綐?biāo)準(zhǔn)錯誤灵妨。

  • -query.staleness-delta已重命名為--query.lookback-delta; Prometheus 2.0引入了一種處理陳舊性的新機(jī)制,請參見陳舊性落竹。

  • -storage.local.* Prometheus 2.0引入了一個新的存儲引擎泌霍,因此刪除了與舊引擎相關(guān)的所有標(biāo)志。有關(guān)新引擎的信息述召,請參閱存儲朱转。

  • -storage.remote.* Prometheus 2.0刪除了已經(jīng)棄用的遠(yuǎn)程存儲標(biāo)志,如果提供它們將無法啟動积暖。要寫入InfluxDB肋拔,Graphite或OpenTSDB,請使用相關(guān)的存儲適配器呀酸。

二凉蜂、Alertmanager服務(wù)發(fā)現(xiàn)

在Prometheus 1.4中引入了Alertmanager服務(wù)發(fā)現(xiàn),允許Prometheus使用與刮擦目標(biāo)相同的機(jī)制動態(tài)發(fā)現(xiàn)Alertmanager復(fù)制品。 在Prometheus 2.0中窿吩,已刪除靜態(tài)Alertmanager配置的命令行標(biāo)志茎杂,因此以下命令行標(biāo)志:

./prometheus -alertmanager.url=http://alertmanager:9093/

將在prometheus.yml配置文件中替換為以下內(nèi)容:

alerting:
  alertmanagers:
  - static_configs:
    - targets:
      - alertmanager:9093

您還可以在Alertmanager配置中使用所有常用的Prometheus服務(wù)發(fā)現(xiàn)集成和重新標(biāo)記。 此代碼段指示Prometheus使用name: alertmanger:alertmanager和非空端口在default命名空間中搜索Kubernetes pod纫雁。

alerting:
  alertmanagers:
  - kubernetes_sd_configs:
      - role: pod
    tls_config:
      ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
    bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
    relabel_configs:
    - source_labels: [__meta_kubernetes_pod_label_name]
      regex: alertmanager
      action: keep
    - source_labels: [__meta_kubernetes_namespace]
      regex: default
      action: keep
    - source_labels: [__meta_kubernetes_pod_container_port_number]
      regex:
      action: drop
三煌往、記錄規(guī)則和報警

配置警報和錄制規(guī)則的格式已更改為YAML。 舊格式的錄制規(guī)則和警報示例:

job:request_duration_seconds:histogram_quantile99 =
  histogram_quantile(0.99, sum(rate(request_duration_seconds_bucket[1m])) by (le, job))

ALERT FrontendRequestLatency
  IF job:request_duration_seconds:histogram_quantile99{job="frontend"} > 0.1
  FOR 5m
  ANNOTATIONS {
    summary = "High frontend request latency",
  }

看起來像這樣:

groups:
- name: example.rules
  rules:
  - record: job:request_duration_seconds:histogram_quantile99
    expr: histogram_quantile(0.99, sum(rate(request_duration_seconds_bucket[1m]))
      BY (le, job))
  - alert: FrontendRequestLatency
    expr: job:request_duration_seconds:histogram_quantile99{job="frontend"} > 0.1
    for: 5m
    annotations:
      summary: High frontend request latency

為了幫助進(jìn)行更改轧邪,promtool工具具有自動執(zhí)行規(guī)則轉(zhuǎn)換的模式刽脖。 給定.rules文件,它將以新格式輸出.rules.yml文件忌愚。 例如:

$ promtool update rules example.rules

請注意曲管,您需要使用2.0中的promtool,而不是1.8硕糊。

四院水、存儲

Prometheus 2.0中的數(shù)據(jù)格式已完全改變,并且不向后兼容1.8简十。 為了保持對歷史監(jiān)控數(shù)據(jù)的訪問檬某,我們建議您運(yùn)行至少與Prometheus 2.0實例并行運(yùn)行至少版本1.8.1的非刮擦Prometheus實例,并讓新服務(wù)器通過遠(yuǎn)程讀取協(xié)議從舊服務(wù)器讀取現(xiàn)有數(shù)據(jù)螟蝙。

您的Prometheus 1.8實例應(yīng)該使用以下標(biāo)志和僅包含external_labels設(shè)置(如果有)的配置文件啟動:

$ ./prometheus-1.8.1.linux-amd64/prometheus -web.listen-address ":9094" -config.file old.yml

然后可以使用以下標(biāo)志啟動Prometheus 2.0(在同一臺機(jī)器上):

$ ./prometheus-2.0.0.linux-amd64/prometheus --config.file prometheus.yml

除了完整的現(xiàn)有配置之外恢恼,prometheus.yml還包含哪些節(jié):

remote_read:
  - url: "http://localhost:9094/api/v1/read"
五、PromQL

從PromQL中刪除了以下功能:

  • drop_common_labels函數(shù) - 應(yīng)該使用不使用聚合修飾符胰默。
  • keep_common聚合修飾符 - 應(yīng)該使用修飾符厅瞎。
  • count_scalar函數(shù) - absent()或在操作中正確傳播標(biāo)簽可以更好地處理用例。

有關(guān)詳細(xì)信息初坠,請參閱issue#3060

六彭雾、雜項
6.1 普羅米修斯非root用戶

Prometheus Docker鏡像現(xiàn)在可以作為非root用戶運(yùn)行Prometheus碟刺。 如果您希望Prometheus UI / API偵聽低端口號(例如,端口80)薯酝,則需要覆蓋它半沽。 對于Kubernetes,您將使用以下YAML:

apiVersion: v1
kind: Pod
metadata:
  name: security-context-demo-2
spec:
  securityContext:
    runAsUser: 0
...

有關(guān)更多詳細(xì)信息吴菠,請參閱為Pod或容器配置安全上下文者填。

如果您使用的是Docker,則會使用以下代碼段:

docker run -u root -p 80:80 prom/prometheus:v2.0.0-rc.2  --web.listen-address :80
6.2 普羅米修斯生命周期

如果您使用Prometheus /-/reload加載HTTP端點在更改時自動重新加載Prometheus配置做葵,則出于安全原因占哟,默認(rèn)情況下會禁用這些端點,這是Prometheus 2.0中的。 要啟用它們榨乎,請設(shè)置--web.enable-lifecycle標(biāo)志怎燥。

七、鏈接

Prometheus官網(wǎng)地址:https://prometheus.io/
我的Github:https://github.com/Alrights/prometheus

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末蜜暑,一起剝皮案震驚了整個濱河市铐姚,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌肛捍,老刑警劉巖隐绵,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異拙毫,居然都是意外死亡依许,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進(jìn)店門恬偷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來悍手,“玉大人,你說我怎么就攤上這事袍患√箍担” “怎么了?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵诡延,是天一觀的道長滞欠。 經(jīng)常有香客問我,道長肆良,這世上最難降的妖魔是什么筛璧? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任,我火速辦了婚禮惹恃,結(jié)果婚禮上夭谤,老公的妹妹穿的比我還像新娘。我一直安慰自己巫糙,他們只是感情好朗儒,可當(dāng)我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著参淹,像睡著了一般醉锄。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上浙值,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天恳不,我揣著相機(jī)與錄音,去河邊找鬼开呐。 笑死烟勋,一個胖子當(dāng)著我的面吹牛规求,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播神妹,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼颓哮,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了鸵荠?” 一聲冷哼從身側(cè)響起冕茅,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎蛹找,沒想到半個月后姨伤,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡庸疾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年乍楚,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片届慈。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡徒溪,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出金顿,到底是詐尸還是另有隱情臊泌,我是刑警寧澤,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布揍拆,位于F島的核電站渠概,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏嫂拴。R本人自食惡果不足惜播揪,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望筒狠。 院中可真熱鬧猪狈,春花似錦、人聲如沸辩恼。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽运挫。三九已至,卻和暖如春套耕,著一層夾襖步出監(jiān)牢的瞬間谁帕,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工冯袍, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留匈挖,地道東北人碾牌。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像儡循,于是被迫代替她去往敵國和親舶吗。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,675評論 2 359