nagios

Ansible Роль: Nagios

Устанавливает Nagios, NRPE (как клиент, так и сервер) и автоматически настраивает Nagios на основе существующего списка хостов Ansible. Цель состоит в том, чтобы иметь полную систему мониторинга Nagios в одной роли Ansible и без излишней ручной конфигурации.

Предварительные условия

Убедитесь, что работает разрешение имен DNS или /etc/hosts. Например, вы можете выполнить ping на web3 по адресу web3.example.com. Рекомендуется наличие электронной почты, доступны варианты Exim, Postfix и другие.

Переменные роли

Все переменные в директории defaults/ могут быть переопределены или изменены.

Контакты/Пользователи:

Добавьте пользователей, которые должны иметь возможность входить в веб-интерфейс Nagios в переменной nagios_users:
nagios_users:

Другой и лучший способ добавить контакты и администраторов Nagios - это переменная users, совместимая с https://github.com/mivok/ansible-users.

Этот плейбук будет искать пользователей в группе sysadmin, и они станут администраторами Nagios.

Создайте переменную users, хорошим местом для этого является group_vars/all. Вот пример.

users:

  • username: foo
    name: Foo Barrington
    groups: ['sysadmin']
    uid: 1001
    ssh_key:

Откуда пришло значение htpasswd? Сгенерируйте htpasswd вручную, а затем вставьте его в users.
htpasswd -n mario
mario:$apr1$SheSL4Et$xry6RljdWWvUVrh42s7OA0

Вы должны настроить как минимум одного пользователя sysadmin, как было уже объяснено, иначе контакты Nagios не будут работать.

Команды Nagios:

Команды nagios находятся в переменной nagios_commands, см. defaults/main.yml. Вы можете добавить больше команд, добавив к переменной или переопределив её.

Сервисы Nagios:

Сервисы nagios в данный момент находится в "checks" для каждой группы хостов в nagios_host_groups, см. defaults/main.yml. Вы можете добавить больше сервисов, добавив к переменной или переопределив её. Проверки сервисов для каждого хоста обрабатываются аналогично в переменной nagios_hosts в defaults/main.yml.

Хосты Nagios:

Хосты Ansible в группе 'all' преобразуются в хосты, находящиеся под мониторингом Nagios. Конфигурация не требуется.

Группы хостов Nagios:

Группы Ansible преобразуются в группы хостов Nagios. Конфигурация не требуется.

Пропуск хостов и групп хостов

Следующие значения установлены в defaults/main.yml:

nagios_hosts_ignore: ""
nagios_groups_ignore: ""

Их можно переопределить, чтобы включить хосты или группы хостов, которые следует полностью пропустить. Примеры:

nagios_hosts_ignore:
  - host1_skip_this_host
nagios_groups_ignore:
  - hostgroup_dev_to_skip
  - and_this_one

Это определяет, какие хосты сервер Nagios будет игнорировать/пропускать, потому что эти хосты будут исключены из конфигураций.

Также стоит учитывать, должен ли плейбук Ansible выполняться на всех серверах. В примерном плейбуке default.yml указано "- hosts: all", что устанавливает клиент Nagios на всех известных серверах. Вы можете настроить свой верхний плейбук и установить другую директиву "hosts: ". Однако, вероятно, нормально устанавливать клиент мониторинга на все сервера.

Пример плейбука

Смотрите default.yml в корне этой роли.

Чтобы установить клиент:
roles:
- { role: 'sdarwin.nagios', run_nagios_client: true }

Чтобы установить сервер:
roles:
- { role: 'sdarwin.nagios', run_nagios_server: true }

Добавьте серверы Nagios в группу monitoring-servers в инвентаре Ansible. Пример:

[monitoring-servers]
monitor.example.com

URL Nagios будет иметь следующий формат: http://monitor.example.com/nagios/

Лицензия

BSD

Информация об авторе

Автор: Сэм Дарвин, 2016. Основано на существующих ролях, смотрите файл ACKNOWLEDGEMENTS.md. Отзывы и сообщения об ошибках приветствуются.

Аналитика

О проекте

Install Nagios 4.x on Ubuntu or CentOS

Установить
ansible-galaxy install sdarwin/Ansible-Nagios
Лицензия
isc
Загрузки
528
Владелец