Назад | Перейти на главную страницу

Можно ли настроить Munin для отображения почасовых графиков?

По умолчанию Munin (я использую 1.4.5) показывает графики за день, неделю, месяц и год.

Могу ли я настроить его для дополнительного отображения почасового графика?

Я предполагаю, что вы действительно хотите отбирать данные быстрее, чем пять минут по умолчанию, потому что в противном случае почасовой график не показал бы вам больше деталей, чем текущий дневной график.

На этот вопрос есть простой и трудный ответ.

Легкий путь

Просто запускайте munin-update почаще и не обновляйтесь до версии Munin 1.5.

Во многих системах Linux это просто означает редактирование /etc/cron.d/munin и изменив первый */5 к */1 (что то же самое, что и просто * но делает немного более очевидным, что вы делаете это намеренно).

Это своего рода взлом. Munin по-прежнему будет создавать графики в предположении, что он получает данные каждые пять минут, а не каждую минуту, поэтому его расчеты скорости могут быть отключены и некоторые метки будут неправильными, но вы будете получать данные каждую минуту. Кроме того, это, вероятно, не будет работать в последних версиях Munin (по крайней мере, в прошлой версии 2.0 и, возможно, в предыдущей версии 1.5), потому что они имеют значение по умолчанию 300 для update_rate атрибут, который обсуждается более подробно ниже.

Трудный путь

Во-первых, вам нужно перейти на 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 - количество точек данных, которые необходимо сохранить для первого графика. Каждая из этих точек представляет собой единичное измерение (более или менее; Мунин пытается учесть задержки в получении измерений с помощью небольшого количества подделок данных).
  • 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 таким же образом, как описано выше в разделе «Простой способ».