munin
Ansible Роль: Munin
Устанавливает munin, систему мониторинга, на серверах RedHat/CentOS/Rocky Linux или Debian/Ubuntu Linux.
Требования
Если вы используете дистрибутив на основе RedHat, вам нужно установить репозиторий EPEL, который можно просто установить с помощью роли geerlingguy.repo-epel
.
Если вы хотите просматривать графики и вывод munin через HTTP, вам потребуется HTTP сервер, например Apache или Nginx.
Переменные роли
Доступные переменные перечислены ниже, вместе с значениями по умолчанию (см. defaults/main.yml
):
munin_packages:
- python3-passlib
- munin
Пакеты, устанавливаемые для Munin. Если вы используете Python 3, вам следует переопределить эту переменную и установить первый элемент на python3-passlib
.
munin_dbdir: /var/lib/munin
munin_htmldir: /var/www/html/munin
munin_logdir: /var/log/munin
munin_rundir: /var/run/munin
munin_includedir: /etc/munin/conf.d
Некоторые стандартные пути для файлов, которые генерирует Munin, конфигураций, логов и т.д.
munin_html_strategy: cron
munin_graph_strategy: cron
munin_max_processes: 12
Смотрите официальную документацию Munin для munin.conf для получения дополнительной информации о этих и других необязательных директивах.
munin_cron_job: present
Определяет, должен ли быть активным cron-задание munin (которое выполняется каждые 5 минут). Установив это значение на absent
, вы можете оставить munin установленным и настроенным на сервере, но фактически отключить его. Это позволяет быстро включать или отключать мониторинг munin.
munin_admin_user: munin
munin_admin_password: munin
Эти значения будут использованы для создания пользователя через htpasswd, под которым страницы munin будут защищены паролем с помощью базовой HTTP аутентификации. (Примечание: Этот метод работает только если Munin использует стандартные конфигурации Apache; если вы используете Nginx или кастомизированный Apache сервер, вам нужно будет самостоятельно настроить аутентификацию).
munin_hosts:
- name: "localhost"
address: "127.0.0.1"
extra: ["use_node_name yes"]
Список хостов, к которым munin будет подключаться и мониторить. Каждый элемент в списке будет добавлен в конфигурацию munin следующим образом (при условии, что вы используете приведенный выше пример):
[localhost]
address: 127.0.0.1
use_node_name yes
Смотрите документацию по Определениям узлов Munin для получения более подробной информации о том, какие значения использовать здесь.
munin_alerts:
- name: "JohnDoe"
email: "[email protected]"
subject: "Определение Munin для ${var:group} :: ${var:host}"
level: "warning critical"
Вы можете настроить уведомления по электронной почте, используя переменную munin_alerts
.
Зависимости
Отсутствуют.
Пример Playbook
- hosts: servers
roles:
- geerlingguy.munin
Лицензия
MIT / BSD
Информация об авторе
Эта роль была создана в 2014 году Джеффом Гирлингом, автором Ansible for DevOps.
ansible-galaxy install geerlingguy/ansible-role-munin