Как установить инструмент мониторинга Munin в Ubuntu 14.04

Вступление

Munin - это приложение для мониторинга системы, сети и инфраструктуры, которое предоставляет информацию в виде графиков через веб-браузер. Он разработан на основе клиент-серверной архитектуры и может быть настроен на мониторинг компьютера, на котором он установлен (Munin master), и любого количества клиентских компьютеров, которые, на языке Munin, называются Munin node.

В этой статье мы установим и настроим Munin для мониторинга сервера, на котором он установлен, и одного узла. Чтобы установить Munin на нескольких узлах, просто следуйте инструкциям по созданию узла в каждой системе.

Предпосылки

  • Две капли Ubuntu 14.04. Один из серверов будет мастером Munin. Другим будет узел Мунина.

  • Для каждой капли - пользователь без полномочий root с правами sudo

Все команды в этом руководстве должны выполняться от имени пользователя без полномочий root. Если для этой команды требуется root-доступ, ему будет предшествовать + sudo +. Initial Server Setup с Ubuntu 14.04 объясняет, как добавлять пользователей и предоставлять им доступ sudo.

Шаг 1 - Установка необходимых пакетов

Мы начнем работать над мастером Munin в первую очередь. Перед установкой Munin необходимо установить несколько зависимостей.

Хотя Munin может работать с большинством популярных веб-серверов, таких как Nginx и Lighttpd, по умолчанию он предназначен для работы с веб-сервером Apache. Поэтому убедитесь, что Apache установлен и настроен на главном компьютере Munin. Если он еще не установлен, сделайте это с помощью:

sudo apt-get update
sudo apt-get install -y apache2 apache2-utils

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

sudo apt-get install -y libcgi-fast-perl libapache2-mod-fcgid

После установки этих двух пакетов модуль + fcgid + должен быть включен. Чтобы перепроверить, введите:

/usr/sbin/apachectl -M | grep -i cgi

Выход должен быть:

fcgid_module (shared)

Если вывод пуст, значит, он не включен. Затем вы можете включить его, используя:

sudo a2enmod fcgid

При выполнении команды + apachectl + вы можете игнорировать следующее предупреждение:

Could not reliably determine the server's fully qualified domain name ...

Apache все еще будет работать с Munin с этим предупреждением.

Остальная часть конфигурации, которая будет правильно выполнять масштабирование графика, будет описана в шаге 3.

Шаг 2 - Установка Munin на Munin Master

Установочные пакеты для Munin доступны в официальном репозитории Ubuntu, поэтому их можно установить с помощью менеджера пакетов дистрибутива. На этом этапе вы установите основной пакет Munin. Версия в репозитории является последней стабильной версией.

Чтобы установить его для мониторинга сервера, на котором он установлен, введите:

sudo apt-get install -y munin

Шаг 3 - Настройка Munin Master

Основной конфигурационный файл Munin + munin.conf + и другие файлы, необходимые для его работы, находятся в каталоге + + etc / munin + и его подкаталогах. На этом шаге мы изменим основной файл конфигурации для мастера Munin и его конфигурацию Apache `+ apache.conf +.

Основной файл конфигурации состоит как минимум из двух разделов - * global * и хотя бы из одного * host * раздела. При желании может быть раздел * group *. Разделы хоста и группы начинаются с соответствующих имен в квадратных скобках. Этот файл содержит определения переменных, директивы, которые определяют, как Munin контролирует серверы и службы, а также какие серверы следует отслеживать.

Для начала откройте основной файл конфигурации:

cd /etc/munin
sudo nano munin.conf

Ищите эти строки и раскомментируйте их - удалите знак * # *, который предшествует им. * Dbdir * хранит все rrd-файлы, содержащие фактическую информацию мониторинга; * htmldir * хранит изображения и файлы сайта; * logdir * поддерживает журналы; * rundir * содержит файлы состояния; и * tmpldir * - расположение шаблонов HTML. Обязательно измените htmldir из + / var / cache / munin / www + в ваш веб-каталог. В этом примере мы будем использовать + / var / www / munin +:

/etc/munin/munin.conf

dbdir     /var/lib/munin
htmldir
logdir    /var/log/munin
rundir    /var/run/munin

tmpldir /etc/munin/templates

Поскольку + htmldir + не существует, давайте создадим и chown, чтобы он принадлежал системному пользователю + munin +:

sudo mkdir /var/www/munin
sudo chown munin:munin /var/www/munin

Наконец, в + munin.conf + найдите первое дерево хостов. Он определяет, как получить доступ и контролировать хост-машину. Следует читать:

/etc/munin/munin.conf

[localhost.localdomain]
   address 127.0.0.1
   use_node_name yes

Измените имя этого дерева на то, которое однозначно идентифицирует сервер. Это имя, которое будет отображаться в веб-интерфейсе Munin. В этом примере мы будем использовать * MuninMaster *, но вы также можете использовать имя хоста сервера:

/etc/munin/munin.conf

[]
   address 127.0.0.1
   use_node_name yes

Это все для файла конфигурации, поэтому сохраните и закройте его.

В том же каталоге + / etc / munin + следующий файл, который мы будем изменять, - это + apache.conf , который является файлом конфигурации Apache Munin. Он связан с ` / etc / apache2 / conf-available / munin.conf `, который, в свою очередь, связан с ` / etc / apache2 / conf-enabled / munin.conf `. Чтобы начать его изменение, откройте его с помощью ` nano +`:

sudo nano apache.conf

В самом верху файла измените первую строку, чтобы она отражала путь * htmldir *, который вы указали в + munin.conf + и создали ранее. Исходя из пути к каталогу, использованного в этой статье, он должен выглядеть следующим образом, поэтому вы можете получить доступ к веб-интерфейсу Munin, добавив * munin * к IP-адресу сервера или домену, размещенному на сервере:

/etc/munin/apache.conf

Alias /munin /var/www/munin

Затем найдите раздел * Directory * и измените каталог на + / var / www / munin +. Также закомментируйте (или удалите) первые четыре строки, а затем добавьте две новые директивы, чтобы они выглядели так:

/etc/munin/apache.conf

<Directory >
       #Order allow,deny
       #Allow from localhost 127.0.0.0/8 ::1
       #Allow from all
       #Options None




       ...

       ...

</Directory>

Найдите предпоследний раздел местоположения, закомментируйте или удалите первые две строки и добавьте две новые, чтобы они выглядели так:

/etc/munin/apache.conf

<Location /munin-cgi/munin-cgi-graph>
       #Order allow,deny
       #Allow from localhost 127.0.0.0/8 ::1




       ...

       ...

</Location>

Сделайте то же самое с последним разделом местоположения:

/etc/munin/apache.conf

<Location /munin-cgi/munin-cgi-html>
       #Order allow,deny
       #Allow from localhost 127.0.0.0/8 ::1




       ...

       ...

</Location>

Сохраните и закройте файл. Затем перезапустите Apache и Munin.

sudo service apache2 restart
sudo service munin-node restart

Теперь вы можете получить доступ к веб-интерфейсу Munin, указав в браузере / munin

изображение: https: //assets.digitalocean.com/articles/munin_install/MuninMaster1.png [веб-интерфейс Munin]

Шаг 4 - Добавление узла в Munin Master

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

Давайте начнем с узла Munin - второй созданной вами капли Ubuntu.

Войдите в узел * Munin *, обновите базу данных пакета и установите пакет узла Munin:

sudo apt-get update
sudo apt-get install -y munin-node

После успешного завершения установки файл конфигурации узла должен находиться в каталоге + / etc / munin +. Откройте его с помощью + nano +:

sudo nano /etc/munin/munin-node.conf

В середине файла найдите строку * allow ^ 127.0.0.1 $ * и измените ее так, чтобы она отражала IP-адрес мастера Munin. Обратите внимание, что IP-адрес представлен в формате регулярных выражений, поэтому при условии, что IP-адрес главного сервера равен 123.46.78.100, строка должна выглядеть следующим образом:

[label  /etc/munin/munin-node.conf}
allow

Сохраните и закройте файл. Затем перезапустите Munin:

sudo service munin-node restart

Вернитесь на * Munin master *, откройте основной файл конфигурации:

sudo nano /etc/munin/munin.conf

Все, что нам нужно сделать в этом файле, это вставить дерево хостов для (удаленного) узла. Самый простой подход к этому - скопировать и изменить дерево хостов мастера. Обязательно замените IP-адресом узла, который вы добавляете:

/etc/munin/munin.conf

[MuninNode]
   address
   use_node_name yes

Сохраните и закройте файл. Затем перезапустите Apache:

sudo service apache2 restart

Мунин проверяет наличие новых узлов каждые 5 минут. Подождите несколько минут, а затем перезагрузите веб-интерфейс мастера Munin. Вы должны увидеть запись для узла. Если вы еще этого не видели, повторите попытку через 5 минут. Используя этот метод, вы можете добавить столько узлов, сколько вам нужно для мониторинга.

изображение: https: //assets.digitalocean.com/articles/munin_install/MuninNode2.png [добавлен узел Munin]

Шаг 5 - Включение дополнительных плагинов

Munin контролирует систему, используя скрипты плагинов, и по умолчанию около десятка наборов плагинов установлены и активны. Полный список доступных плагинов находится в каталоге + / usr / share / munin / plugins +. Чтобы увидеть, какие плагины можно использовать в вашей системе, Munin предоставляет следующую команду:

sudo munin-node-configure --suggest

Вывод должен быть такого рода:

Plugin                     | Used | Suggestions
------                     | ---- | -----------
cps_                       | no   | no
cpu                        | yes  | yes
cpuspeed                   | no   | no [missing /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state]
cupsys_pages               | no   | no [could not find logdir]
df                         | yes  | yes
df_inode                   | yes  | yes
fail2ban                   | no   | yes
ip_                        | no   | yes

Плагин с * yes * в столбце Used означает только то, что он указывает, а плагин с * yes * в столбце Suggestions означает, что его можно использовать. Один с * no * в обоих столбцах означает, что он не используется и не может использоваться в системе. Наконец, если плагин имеет * no * в столбце Used и * yes * в Suggestions, то он не используется, но может быть включен и использован в системе.

На главном узле Munin вы также можете увидеть список установленных плагинов в каталоге + / etc / munin / plugins +.

Пакет + munin-plugins-extra + должен быть установлен при установке Munin. Если это не так, сделайте это, используя.

sudo apt-get install munin-plugins-extra

Чтобы включить доступный плагин, который в данный момент не используется, создайте для него символическую ссылку из каталога + / usr / share / munin / plugins + в каталог + / etc / munin / plugin +.

Например, чтобы включить плагин Fail2ban, сначала установите Fail2ban:

sudo apt-get install fail2ban

Затем создайте символическую ссылку, которая включает плагин Munin:

sudo ln -s /usr/share/munin/plugins/fail2ban /etc/munin/plugins

Перезапустите Munin:

sudo service munin-node restart

Подождите несколько минут, перезагрузите веб-интерфейс, и вы увидите графики для Fail2ban под заголовком * Хосты, занесенные в черный список fail2ban * в категории * network * для мастера Munin.

Поиск проблемы

Если у вас возникли проблемы с настройкой мастера Munin, узла Munin или при обращении мастера к узлу, проверьте файлы журнала на наличие сообщений об ошибках:

  • Мастер Munin: + / var / log / munin / munin-update.log +

  • Узел Munin: + / var / log / munin / munin-node.log +

Вы также можете проверить http://munin-monitoring.org/wiki/MuninTrou устранение неполадок на странице[project] для получения дополнительных советов по устранению неполадок.

Заключение

Munin можно настроить для мониторинга системы, на которой он установлен. Чтобы добавить удаленные серверы в отслеживаемую систему, достаточно просто установить пакет «+ munin-node +» на удаленном сервере (или узле), а затем изменить файлы конфигурации сервера и узла, указав другой IP-адрес.

Munin работает с использованием плагинов, но не все включены из коробки. Информация о плагинах доступна на странице project.

Related