Munin

可以將 Munin 配置為顯示每小時圖表嗎?

  • May 7, 2013

預設情況下,Munin(我使用的是 1.4.5)顯示日、週、月和年的圖表。

我可以將其配置為額外顯示每小時圖表嗎?

我假設您實際上希望比預設的五分鐘更快地採樣數據,因為每小時圖表不會比目前的每日圖表顯示更多細節。

有一個簡單的答案和一個很難的答案。

簡單的方法

只需更頻繁地執行 munin-update 並且不要升級到 Munin 1.5 以上。

在許多 Linux 系統上,這只是意味著編輯/etc/cron.d/munin和更改第一個*/5*/1(這與 just 相同,*但更明顯的是您是故意這樣做的)。

這是一種黑客行為。Munin 仍然會在假設它每五分鐘而不是每分鐘獲取數據的假設下創建圖表,因此它的速率計算可能會關閉並且某些標籤會出錯,但您將每分鐘獲取數據。此外,這可能不適用於最近的 Munin 版本(至少超過 2.0 版和可能超過 1.5 版),因為它們的update_rate屬性預設值為 300,這將在下面詳細討論。

艱難的道路

首先,您必須升級到 Munin 2.0。早期版本並非支持以下所有內容。

接下來,您必須update_rate在任何希望更新頻率高於每五分鐘一次的圖表上設置屬性。該屬性是更新之間應經過的秒數,預設為 300 秒。

接下來,您需要使用屬性定義自定義圖形週期,該graph_data_size屬性記錄在per plugin custom rrd sizing中,但是該頁面有點令人困惑,所以讓我看看是否可以澄清一下。

graph_data_size屬性具有三個設置:

  • graph_data_size normal- 這是預設設置,生成每日、每週、每月和每年的圖表。
  • graph_data_size huge- 這會以五分鐘的間隔(正常的每日費率)儲存一整年的數據。
  • graph_data_size custom <custom-definition>- 這允許您指定自己的數據間隔和保留時間。

上面的自定義定義是 的形式full_rra_nb, multiple_1 multiple_rra_nb_1, multiple_2 multiple_rra_nb_2, ... multiple_N multiple_rra_nb_N,含義如下:

  • full_rra_nb是為第一張圖保留的數據點數。這些點中的每一個都代表一個測量值(或多或少;Munin 試圖通過少量數據偽造來解釋獲得測量值的延遲)。
  • multiple_N是平均測量數據點的數量,以獲得第 N 個圖形的單個數據點。
  • multiple_rra_nb_N是為第 N 個圖保留的數據點數。

這都受update_rate屬性設置的影響,因為它控制每次測量跨越的時間。

因此,對於一個具體範例,預設設置如下:

  • 以每五分鐘一次測量的速率獲得數據點。
  • 每日圖表對於每個測量數據點都有一個點,它保留了其中的 576 個點(或 48 小時的值)。
  • 每週圖表每六次測量有一個點(每個點代表 30 分鐘),它保留了 432 個(或 9 天)。
  • 每月圖表每 24 次測量有一個點(每個點代表兩個小時),它保留了 540 個(或 45 天的價值)。
  • 年度圖表每 288 次測量有一個點(每個點代表一天),它保留了其中的 450 個(450 天的價值)。

因此,這兩個設置是等價的:

graph_data_size normal

update_rate 300
graph_data_size custom 576, 6 432, 24 540, 288 450

對於一分鐘採樣,您必須確定您感興趣的間隔類型。要簡單地添加一個記錄八小時數據的每小時圖表,您可以使用以下內容:

update_rate 60
graph_data_size custom 480, 5 576, 30 432, 120 540, 1440 450

請注意,在預設的 munin 配置中,每個間隔都是前一個間隔的整數倍(30 = 5 * 6、120 = 30 * 4 和 1440 = 120 * 12)。我不知道該規則有多重要,但我建議將其保留在您的配置中,以防萬一。

另請注意,設置update_rategraph_data_size是在每個圖的基礎上完成的。我不知道有什麼方法可以指定跨越許多圖表的預設值,所以如果你想對所有圖表都這樣做,你必須做很多輸入。

此外,您應該確保在第一次munin-update執行之前所有這些設置都已到位;它們會影響 RRD 文件的創建方式,如果在使用這些文件執行更新之前使用不同的設置創建文件,我不知道 munin 會如何反應。在最壞的情況下,您可以刪除 RRD 文件並讓 munin 重新創建它們。

最後,一旦所有設置都到位,您可以按照與上面的“簡單方法”相同的方式更改 cron 更新頻率。

引用自:https://serverfault.com/questions/394878