Abraham Vegh Asked: 2012-06-02 14:56:42 +0800 CST2012-06-02 14:56:42 +0800 CST 2012-06-02 14:56:42 +0800 CST Munin 可以配置为显示每小时图表吗? 772 默认情况下,Munin(我使用的是 1.4.5)显示日、周、月和年的图表。 我可以将其配置为额外显示每小时图表吗? munin 1 个回答 Voted Best Answer asciiphil 2013-05-08T12:07:52+08:002013-05-08T12:07:52+08:00 我假设您实际上想要比默认的五分钟更快地采样数据,因为每小时图表不会显示比当前每日图表更多的细节。 对此有一个简单的答案,也有一个困难的答案。 简单的方法 只需更频繁地运行 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属性记录在每个插件自定义 rrd 大小调整中,但该页面有点令人困惑,所以让我看看我是否可以澄清一下。 该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_rate和graph_data_size是在每个图形的基础上完成的。我不知道有什么方法可以指定跨多个图形的默认值,所以如果你想对所有图形都这样做,你将不得不进行大量的输入。 此外,您应该确保所有这些设置在您第一次munin-update运行之前就位;它们会影响 RRD 文件的创建方式,我不知道如果在使用这些文件运行更新之前使用不同的设置创建文件,munin 将如何反应。在最坏的情况下,您可以删除 RRD 文件并让 munin 重新创建它们。 最后,所有设置就绪后,您可以按照与上述“简单方法”相同的方式更改 cron 更新频率。
我假设您实际上想要比默认的五分钟更快地采样数据,因为每小时图表不会显示比当前每日图表更多的细节。
对此有一个简单的答案,也有一个困难的答案。
简单的方法
只需更频繁地运行 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
属性记录在每个插件自定义 rrd 大小调整中,但该页面有点令人困惑,所以让我看看我是否可以澄清一下。该
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
,含义如下:这都受
update_rate
属性设置的影响,因为它控制每个测量跨度的时间。因此,对于一个具体的例子,默认设置如下:
因此,这两个设置是等价的:
和
对于一分钟采样,您必须决定您感兴趣的间隔类型。要简单地添加一个每小时记录八小时数据的图表,您可以使用以下命令:
请注意,在默认的 munin 配置中,每个间隔都是前一个间隔的整数倍(30 = 5 * 6、120 = 30 * 4 和 1440 = 120 * 12)。我不知道该规则有多重要,但我建议将其保留在您的配置中,以防万一。
另请注意,设置
update_rate
和graph_data_size
是在每个图形的基础上完成的。我不知道有什么方法可以指定跨多个图形的默认值,所以如果你想对所有图形都这样做,你将不得不进行大量的输入。此外,您应该确保所有这些设置在您第一次
munin-update
运行之前就位;它们会影响 RRD 文件的创建方式,我不知道如果在使用这些文件运行更新之前使用不同的设置创建文件,munin 将如何反应。在最坏的情况下,您可以删除 RRD 文件并让 munin 重新创建它们。最后,所有设置就绪后,您可以按照与上述“简单方法”相同的方式更改 cron 更新频率。