Skip to content

Скрипты и шаблоны для расширенной интеграции Ansible и Zabbix через механизм Dynamic Inventory

License

Notifications You must be signed in to change notification settings

bashlakov/ansible-zabbix

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ansible-Zabbix

Скрипты и шаблоны для расширенной интеграции Ansible и Zabbix через механизм Dynamic Inventory

В отличае от оригинального скрипта интеграции из репозитория Ansible, в данном скрипте в дополнение к передачи хостов и групп, также передаётся информация о шаблонах. Отличительная особонность - в хостах и шаблонах происходит попытка чтения поля Description как YAML и в случае успеха, прочитанные данные передаются в Ansible как hostvars и groupvars соответственно. Также поддерживается наследование и переопределение в шаблонах и хостах.

Установка на примере Ubuntu 14.04

Подготовка хоста с Zabbix

Устанавливаем ODBC драйвер: $ sudo apt-get install python-pip

Правим файлы /etc/odbc.ini и /etc/odbcinst.ini в соответствии с вашей конфигурацией DB. Примеры конфигов для PostgreSQL установленном на Localhost приведены в папке odbc.

Подготовка Zabbix Server

Настройка интеграции с Ansible

Создаём пользователя ansible и предоставляем ему права пользователя на необходимые группы

Настройка мониторинга поля Description в хостах и шаблонах

Импортируем шаблон из папки Zabbix и подключаем его к хосту с Zabbix Server

Подготовка хоста с Ansible

Устанавливаем необходимые пакеты для Python:

$ sudo apt-get install python-pip

$ sudo pip install zabbix-api

Копируем содержимое папки ansible в /etc/ansible

Правим конфигурационный файл zabbix_extended.ini в соответствии с настройками пользователя в Zabbix Server

Делаем файл hosts исполняемым: cmod +x /etc/ansible/hosts

Для проверки необходимо выполнить файл hosts /etc/ansible/hosts В случае корректной настройки вы получите JSON ответ с вашими группами, шаблонами и хостами

Troubleshooting

Нет информации о части хостов или групп

Если вы не получаете информации о части хостов или групп, проверьте настройки прав пользователя в Zabbix

Будте осторожны с переменными, интерпретируемые YAML’ом!

True = Yes = Y = On = true = yes = y = on = …

Если используете их в плейбуке для вставки в конфиг - задавайте их как строки!

About

Скрипты и шаблоны для расширенной интеграции Ansible и Zabbix через механизм Dynamic Inventory

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages