ansible_nagios4_server_config

Статус сборки

Имя Роли

Роль, которая настраивает Nagios и синхронизирует конфигурацию Nagios из репозиториев git. Эта роль подготовлена и совместима с другими плагинами ролей Nagios от ansiblecoffee, интерфейсом Thruk, pnp4nagios и т.д.

Требования

Нет требований, просто поддерживайте свою систему в обновленном состоянии. В настоящее время тестировалось только на Ubuntu 14.04.

Поддержка распределения роли

Ubuntu: все работает RedHat: не готово

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

Смотрите все в defaults/main.yml

Добавьте в ваши host_vars или group_vars:

Дополнительные параметры конфигурации Nagios

И добавьте в только для чтения:

nagios_cgi_authorized_for_read_only: user1, user2

Или измените указанные разрешения:

nagios_cgi_authorized_for_system_information: nagiosadmin
nagios_cgi_authorized_for_configuration_information: nagiosadmin
nagios_cgi_authorized_for_system_commands: nagiosadmin
nagios_cgi_authorized_for_all_services: nagiosadmin,user1,user2
nagios_cgi_authorized_for_all_hosts: nagiosadmin,user1,user2
nagios_cgi_authorized_for_all_service_commands: nagiosadmin
nagios_cgi_authorized_for_all_host_commands: nagiosadmin

Отключите уведомления для хостов, для которых они не требуются, используя host_vars/имя_хоста

nagios_config_enable_notifications: 0

Функция клонирования репозиториев

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

  • Репозиторий сети, директория: "net"
  • Репозиторий серверов, директория: "servers"
  • Репозиторий серверных услуг, директория: "services"

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

  • Удаленный хост без проверки услуг
  • Тестовый сервер с тестовым репозиторием, директория: "testing" и все предыдущие репозитории.

Затем вы можете использовать тег: "config_nagios" в задаче ansible-playbook для синхронизации всех ваших серверов каждый раз, когда вы обновляете репозитории.

Еще лучше: используйте что-то вроде githook Jenkins, чтобы автоматически запускать задачу, которая вызывает тег: config_nagios, и все ваши серверы будут автоматически синхронизированы каждый раз, когда вы добавляете что-то новое в ваши репозитории Nagios с новой конфигурацией.

Пример:

nagios_config_cfg_dirs_git:
  - { repo: "http://server/user/repo.git", version: "master", dir: "repo"}
  - { repo: "http://users:password@server/user/repo2.git", version: "master", dir: "repo2"}

Вы также можете использовать другую переменную с ключом ssh:

Сначала создайте директорию для ключей на удаленном сервере для удаленного пользователя ansible.

cd
mkdir keys

Затем сгенерируйте ключи и сохраните их как nagios_key_rsa

nagios_config_cfg_dirs_git_rsa:
  - { repo: "git@server:user/repo.git", version: "master", dir: "repo"}

Когда переменная nagios_config_cfg_dirs_git_rsa существует, роль будет искать /home/remoteuser/keys/nagios_key_rsa для использования.

Зависимости

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

Пример Playbook

Полный список ролей:

- name: применить настройки Nagios
  hosts: nagios4_servers
  become: yes
  become_method: sudo
  roles:
    - { role: nagios4_server, tags: ["install", "nagios4_server_all", "nagios4_server"] }
    - { role: nagios4_server_plugins, tags: ["install", "nagios4_server_all", "nagios4_server_plugins"] }
    - { role: nagios4_server_pnp4nagios, tags: ["install", "nagios4_server_all", "nagios4_server_pnp4nagios"] }
    - { role: nagios4_server_snmptrap, tags: ["install", "nagios4_server_all", "nagios4_server_snmptrap"] }
    - { role: ANXS.mysql, tags: ["install", "nagios4_server_all", "nagios4_server_thruk", "ANXS.mysql"] }
    - { role: nagios4_server_thruk, tags: ["install", "nagios4_server_all", "nagios4_server_thruk"] }
    - { role: postfix_client, tags: ["install", "nagios4_server_all", "postfix_client"] }
# Дополнительные теги: роль/тег
# nagios4_server             - config_nagios
# nagios4_server             - nagios4_server_main_config
# nagios4_server             - config_nagios_cron
# nagios4_server_plugins     - config_nagios_plugins
# nagios4_server_plugins     - test_nagios_plugins
# nagios4_server_pnp4nagios  - test_nagios_pnp4nagios
# nagios4_server_thruk       - config_nagios_thruk_cron
# nagios4_server_thruk       - test_nagios_thruk
# nagios4_server_thruk_git   - config_nagios_thruk_git_cron

теги:

nagios4_server_main_config
nagios_config
config_nagios_cron

За Фаерволами

Для клиентов к защищенным фаерволом хостам вам необходимо открыть эти порты:

TCP:

  • Ping: проверка работоспособности хоста
  • 5666: nrpe (Windows и Linux)
  • 1248: nsclient (только Windows)
  • 9666: для пользовательского nrpe, когда используется 5666
  • 22: проверка ssh
  • 80, 443: проверки http, https

UDP:

  • 161: проверки SNMP

Лицензия

BSD

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

Основные авторы: Диего Дагерре, Пабло Эстигаррибия. Сайт: https://github.com/ansiblecoffee

О проекте

Configure nagios, prepared to be compatible with thruk, pnp4nagios, nagios_plugins. Has feature to clone nagios config from git repos.

Установить
ansible-galaxy install CoffeeITWorks/ansible_nagios4_server_config
Лицензия
mit
Загрузки
459
Владелец
IT Works group