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

9

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

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

Авраам Вег
источник

Ответы:

10

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

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

Легкий путь

Просто запускайте 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атрибутом, который задокументирован для каждого размера плагина , но эта страница немного сбивает с толку, так что давайте посмотрим, смогу ли я немного прояснить ситуацию.

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 пытается учесть задержки в получении измерений с небольшим количеством фальсификаций данных).
  • multip_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 таким же образом, как «Простой путь» выше.

asciiphil
источник