2017-03-20 19 views
0

1)在kubernetes中,許多組件(即節點)都有要按組查看的元數據。實例:不同kuberentes組件的分片度量標準有哪些常見選項?

  • 顯示器CPU使用率
  • 顯示器CPU使用率與GPU的所有機器
  • 顯示器存儲器使用
  • 上標記有AA特定區域中的所有機器(kubelets)顯示器存儲器使用(即 'ASIA-EAST-1')

等等:對於正被一個節點上測量的任何指標,您可能希望通過存在於所述節點上的任意標籤或污點來查看/查詢它。

在任何這些情況下,由於指標與標籤所有這些數據的發射。

一個解決方案:許多普羅米修斯大師

到目前爲止,我認爲一個解決辦法:單獨普羅米修斯主爲節點的不同邏輯組。這將允許管理員創建,通過一個任意標籤彙總指標主人,即

  • 查詢集羣的所有節點W /標籤= SSD = 16GB,
  • 從該列表中創建一個CSV,
  • 使用它作爲端點的普羅米修斯主,
  • 使用,作爲一個特定的數據源」。

2)是否有解決這個問題的任何更優雅的解決方案?

上述解決方案是frought恐怖的 - 你正在做大量的工作只是「黑客」的grafana「數據源」的概念,以此來分片的指標了。

3)數越多,瘋狂的想法......只是爲了幫助種子如何在由主機kubernetes分片指標更廣泛的對話......

  • 也許grafana是足夠聰明,加上自己的組, 不知何故?
  • 或者grafana可以擴展到prometheus master polling/rollup本身嗎?
+0

我真的不明白這個問題,但多臺普羅米修斯機器聽起來不像一個好的,可擴展的答案。你說'因爲指標不是與這些元數據一起發佈的 - 我不確定這是爲什麼。我們使用Telegraf(在Docker中)來發布我們的指標。它會發出我們告訴發出的任何東西,所以我認爲你可以用kubelets做到這一點。 但有一點需要記住,一些指標在容器中是沒有意義的,比如CPU使用率,因爲它是一個主機級別的指標而不是容器級別的指標。 – FuzzyAmi

+0

它是一個簡單的問題,希望按節點屬性對查詢進行分組。一種選擇是將所有節點標籤和污點與每個節點級度量一起導出,但這可能是數據成本高昂的。另一種選擇是讓服務器從不同的主機中獲取數據 - 這與複雜性成本較高有關。 – jayunit100

+0

謝謝!我明白你在說什麼。但這真的是一個問題嗎?真的有這麼多的節點級度量嗎?我認爲可能有很多主機級度量標準(對該主機上的所有節點都是通用的),但大多數情況下,節點級度量標準完全來自您正在運行的應用程序 - 這些度量標準的數量可能有限(至少在我的經驗中)。 – FuzzyAmi

回答

0

通常你必須每個數據中心一個普羅米修斯,保持相同的故障域之內的事情。如果存在負載問題,您可能會在未來將其分割出來,但僅適用於不太可能的節點導出器統計信息。

https://www.robustperception.io/scaling-and-federating-prometheus/描述了一般的縮小方法。

https://www.robustperception.io/how-to-have-labels-for-machine-roles/地址如何聚合基於類似的東西存在GPU。

我希望區落得作爲目標的標籤,所以沒有特別的考慮,需要在那裏。