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

Несколько демонов munin-node с разными плагинами на одной машине

моя компания недавно перешла к новому поставщику инфраструктуры. У нас там есть частично управляемый сервер с базовой установкой Ubuntu 14.04. У провайдера также установлен munin-node (munin версии 2.0.19) с некоторыми настраиваемыми плагинами для их мониторинг.

Теперь мы хотели бы использовать наш мониторинг, который у нас был до смены провайдера. У нас есть мунин-мастер. В наш мониторинг входит еще несколько плагинов, которые мы разработали сами для мониторинга наших приложений. Итак, хотя мне не нужны их плагины, им не нужны наши. Некоторые из наших плагинов также используют счетчики сброса при чтении.
Это означает, что просто разрешить нашему munin-master на munin-node и дополнительно прочитать статистику оттуда - нет решения.

На самом деле мне нужен второй демон munin-node, работающий на машине. Я мог бы сделать это, просто скопировав сценарии запуска init.d, изменив порты и т. Д., Создав другой каталог плагинов и поместив туда наши дополнительные плагины.

Однако я не могу найти способ изменить каталог плагина Мунин использует. Я могу настроить другой файл конфигурации для чтения, но, похоже, нет возможности указать местоположение плагина. Также нет опции командной строки для munin-node (хотя в других скриптах, таких как munin-run и munin-node-configure, похоже, они есть). Я пробовал поискать в Google, я был в исходном коде, но не могу найти никакого способа добиться этого.

Это лучшее, что я придумал, возможно, это не лучшее решение, но оно работает:

  • копировать /etc/munin к /etc/munin2
  • изменить настройки в munin-node.conf
    • log_file: изменить на .../munin-node2.log
    • pid_file: изменить на .../munin-node2.pid
    • порт: изменить на 4948 (или что вам больше подходит)
  • добавить / удалить плагины в plugins/ по мере необходимости
  • изменить настройки в plugin-conf.d/ и munin-node.conf по мере необходимости
  • копировать /usr/sbin/munin-node к /usr/sbin/munin-node2
  • в munin-node2, вставить $Munin::Common::Defaults::MUNIN_CONFDIR='/etc/munin2'; после последнего use ...;
  • копировать /etc/init/munin-node.conf к /etc/init/munin-node2.conf
  • в munin-node2.conf, изменить
    • [ -r /etc/default/munin-node ] && . /etc/default/munin-node к [ -r /etc/default/munin-node2 ] && . /etc/default/munin-node2
    • exec /usr/sbin/munin-node $DAEMON_ARGS к exec /usr/sbin/munin-node2 $DAEMON_ARGS

Теперь у вас должна быть возможность запустить второй узел munin, service munin-node2 start, и ps ax|grep munin-node должен показать, что он работает рядом с основным.

Все, что теперь нужно, - это указать другой порт для этого конкретного munin-узла внутри вашего munin.conf или munin-conf.d/ на вашем мунин-мастере.