- Zabbix агент windows обновление
- Конфигурация zabbix агента
- Установка и запуск службы zabbix
- RDP dog
- Zabbix Helper Kit и автоматизация обновления Zabbix Agent
- Что же такое Zabbix?
- Но есть одно нО
- Как обычно происходит развёртывание агента на Windows машины:
- Чем это грозит?
- Какой самый общий недостаток?
- Как должно выглядеть идеальное решение?
- Встречайте! Zabbix Helper Kit!
- Zabbix Helper Kit скачать
Zabbix агент windows обновление
После установки Zabbix сервера , произведем установку, настройку zabbix клиента на операционной системе Windows. Zabbix клиент обеспечит передачу и обработку данных на сервере.
Установка, настройка и удаление zabbix агента
1. Скачиваем с сайта zabbix дистрибутив zabbix агента для операционной системы Windows.
2. Разархивируем архив и переименовываем папку, например Zabbix_agent.
3. Перемещаем папку в нужную директорию, например С:\Program Files\.
.
Конфигурация zabbix агента
4. Следующим шагом необходимо сконфигурировать zabbix агент, чтобы была возможность работы связки клиент-сервер. Для этого открываем конфигурационный файл zabbix_agentd.win.conf.
5. Меняем путь до лог файла, например LogFile=C:\Program Files\Zabbix_agent\zabbix_agentd.log.
6. Для того, чтобы определить ip адрес сервера, открываем терминал на сервере и набираем команду ip addr.
7. В конфигурационном файле zabbix агента в секции «Option Server» указываем ip адрес сервера:
Server=192.168.20.158
8. В секции «Option: ServerActive» также указываем ip адрес сервера zabbix:
Server=192.168.20.158
В секции «Option: Hostname» указываем имя компьютера, например Hostname=Int.
Установка и запуск службы zabbix
9. После того, как сохранили конфигурационный файл, открываем командную строку с административными правами. Для установки и запуска службы Zabbix agent в командной строке набираем:
«C:\Program Files\Zabbix_agent\bin\zabbix_agentd.exe» — config «C:\Program Files\Zabbix_agent\conf\zabbix_agentd.win.conf» — install
C:\Program Files\Zabbix_agent\bin\zabbix_agentd.exe — путь до программы;
C:\Program Files\Zabbix_agent\conf\zabbix_agentd.win.conf — путь до конфигурационного файла.
После успешного применения команды появится вывод:
zabbix_agent.exe [18168]: service [Zabbix Agent] installed successfully
zabbix_agent.exe [18168]: event source [Zabbix Agent] installed successfully
Если командную строку запустить не с правами администратора, то получим ошибку:
zabbix_agentd.exe [20260]: ERROR: cannot connect to Service Manager: .
Для запуска службы «Zabbix Agent» выполняем следующую команду:
net start «Zabbix agent»
После успешного выполнения команды в командной строке появится:
Служба «Zabbix Agent» успешно запущена.
Прописываем правила соединения в брандмауэре Защитника Windows
10. Для того, чтобы обеспечить передачу данных с клиента на сервер, необходимо разрешить zabbix агенту связываться с сервером. Пропишем необходимые правила для сетевого соединения в брандмауэре Windows. Открываем «Панель управления» далее «Брандмауэр Защитника Windows«.
11. Далее выбираем «Дополнительные параметры«.
12. В следующем окне выбираем «Правила для входящих подключений» — «Создать правило«.
13. В открывшемся окне делаем выбор «Для программы«, нажимаем «Далее«.
14. Указываем с помощью кнопки «Обзор. » путь до программы, например %ProgramFiles%\Zabbix_agent\bin\zabbix_agentd.exe, нажимаем «Далее«.
15. Выбираем «Разрешить подключение» — «Далее«.
16. В новом окне задаем «Имя«, например: «Zabbix_agent_in» — «Готово«.
17. Затем открываем вновь созданное соединение Zabbix_agent_in, затем выбираем вкладку «Протоколы и порты«
Тип протокола: TCP
Специальные порты:
10050
Затем нажимаем «ОК«.
Добавление узла сети на сервере Zabbix
18. Для добавления узла сети на сервере Zabbix заходим в веб-панель сервера с помощью логина и пароля, далее выбираем: «Настройка» — «Узлы сети» — «Создать узел сети«.
19. В новом окне указываем:
Имя узла сети: например, Int
Группы: выбираем из списка с помощью кнопки «Выбрать» или пишем новое имя группы
Интерфейсы агента: задаем IP адреса клиента (в командной строке клиента надо набрать ipconfig /all)
20. Переходим на вкладку «Шаблоны«, нажимаем «Выбрать» и из списка шаблонов, выбираем нужный, в данном случае «Template OS Windows«, нажимаем «Выбрать«.
21. Далее выбираем » Добавить » для присоединения выбранного шаблона, затем ниже нажимаем «Добавить» для добавления нового узла сети.
22. В списке появится новый узел сети, и через некоторое время узел сети станет зеленым. Это значит, что все настроено правильно и связь с клиентом установлена.
23. Если узел сети остается красным, то необходимо разбираться, в чем дело. Для этого наводим на значок в графе «Доступность» и читаем диагностическое объявление.
24. Далее переходим к клиенту и открываем лог файл zabbix агента (C:\Program Files\Zabbix_agent\conf\zabbix_agentd.win.conf).
Смотрим проблему, в данном случае:
failed to accept an incoming connection: connection from «192.168.11.49» rejected, allowed hosts: «192.168.20.158»
25. Для решения проблемы прописываем IP адрес клиента в конфигурационный файл zabbix агента:
Option: Server
Server=192.168.11.69, 192.168.20.158
26. Для применения измененных настроек перезапускаем службу Zabbix agent:
net stop «Zabbix agent»
net start «Zabbix agent»
27. Проверяем лог файл.
28. Если нет проблем, на сервере появится зеленый значок клиента.
Удаление zabbix агента
29. Для удаления zabbix агента, удаляем узел сети на сервере.
30. Останавливаем службу «Zabbix agent» на клиенте.
net stop «Zabbix Agent»
31. Удаляем папку с компонентами zabbix агента.
32. Удаляем правило для входящих подключений для zabbix агента.
Посмотреть видео как произвести установку, настройку и удаление zabbix агента можно здесь:
RDP dog
При использовании Zabbix есть небольшая проблемма. Как и многие развивающиеся OpenSource проекты, дистрибутив программы постоянно обновляется, выходят новые версии. Для того, чтобы использовать новые «плюшки» надо обновлять Windows агенты Zabbix. Автоматически они не обновляются. А жаль.
Итак, вопрос как автоматически обновить агент состоит из двух частей:
1. Как автоматически обновить файлы;
2. Как автоматически обновить файлы на всех системах в сети;
Первая часть проблем не составляет. Давненько я не брал в руки WinRar!
Для начала я собрал необходимый набор файлов:
*не сомневаясь в тех кто это читает, все таки, напомню, zabbix_agentd.conf должен содержать Вашу конфигурацию, т.е. его надо взять с рабочей системы. У меня таких 2 — для систем внутри домена и снаружи.
Затем написал cmd- файл, который эти файлы скопирует в нужную папку.
Вообще я этот файл создавал для установки Zabbix-агента, но с минимальными изменениями он справится и с обновлением:
inst.cmd
Осталось только упаковать набор файлов и командный файл в «установщик» дабы проще было его копировать по сети и удаленно запускать. Просто создаем Winrar SFX архив, со следующими параметрами:
Называем это zabbix_agent_int_x64.exe.
Собственно и все.
Не думаю, что данным постом я сорвал покровы со страшных тайн. Пишу больше для себя в копилку.
Тем более, как мне думается, люди использующие и настроившие Zabbix способны и сами написать скрипт.
У нас осталось только проблема, как распространить обновление агента на все наблюдаемые системы.
Пути как минимум два:
В следующей маленькой статье рассмотрим вариант с psexec.
Zabbix Helper Kit и автоматизация обновления Zabbix Agent
Zabbix Helper Kit и автоматизация обновления Zabbix Agent’a должны облегчить жизнь начинающим админам мастдая. ZHK нужно использовать тогда, когда необходимо использовать кастомизируемую энтерпрайз систему мониторинга, но вы испытываете трудности с обновлением непосредственно Заббикс агента, а так же его файлов конфигурации на подконтрольных вам машинах. Собственно избавлению от этих трудностей и будет посвящена серия статей о Zabbix Helper Kit, сей пост – небольшое лирическое отступление.
Что же такое Zabbix?
Эти 6 букв скрывают под собой, для многих новый, дивный мир агент-серверной телеметрии энтерпрайз класса, которой может пользоваться каждый. Прекраснейшая, всеобъемлющая справка на множестве языков. Огромное комьюнити. Открытые исходники. Возможность использовать в продакшене в небольших сетях, просто скачав готовый образ для виртмашины.
Но есть одно нО
Принимая во внимание тот факт, что сам заббикс агент можно не обновлять годами, всё равно есть ситуация, столкновение с которой приводит либо к функционированию сего чудесного продукта в ограниченном режиме, либо к постепенному вымиранию всей системы мониторинга в целом по причине того что админы просто забивают на её обслуживание и обновление. И имя этой ситуации “Изменение конфигурации агента”
Как обычно происходит развёртывание агента на Windows машины:
- Админ(ы) пробегают по нескольким десяткам компьютеров, ручками копируют на них агент с конфигом и регистрируют его в системе.
- Zabbix Agent и его файл конфигурации разворачиваются через GPO.
- Админ(ы) тем или иным способом, к установленному в системе агенту, монтируют сетевую шару с файлом конфигурации и различными скриптами\расширениями, которые заббикс агент подгружает при старте тем самым получая в своё распоряжение новые UserParameters.
- Всевозможные psexec и msi решения.
Чем это грозит?
- Необходимость добавить новый UserParameter. Изменить файл конфигурации чтобы например добавить запасной сервер или включить забытые изначально, активные проверки. Обновление агента. Любая подобная операция приводит к повторному забегу по всем компьютерам.
- Необходимость ждать пока обновятся групповые политики. Теоретически возможные проблемы если сеть построена на основе линуксовых AD DC. Невозможность работы с компьютерами не входящими в домен вообще. Геморрой с обновлением агента или применением изменений в его настройках, до момента повторной отработки групповых политик.
- Если в момент запуска агента шара не будет доступна, агент не запустится. Когда шара сменит свой адрес – повторный забег по всем компьютерам. Ну и исходя из этого, если шара перестала работать в процессе работы агента, мы лишаемся телеметрии.
- Не такой стандартизированный метод как например GPO, но самый гибкий из всех. Потенциальные проблемы ограничиваются лишь фантазией человека занимающегося конкретной реализацией.
Какой самый общий недостаток?
- Во-первых, проблема с регулярной, централизованной и единовременной доставкой обновлений как самого агента, так и его конфигурации с расширениями.
- Во-вторых, даже если мы доставили обновление конфигурации и расширений агента, они не вступят в силу до его перезапуска.
- В третьих, мы не можем обновить агент не остановив службу.
Как должно выглядеть идеальное решение?
- Zabbix Agent со всеми файлами должен храниться на наблюдаемой машине.
- Обновление агента и его файлов не должно влиять на работу системы.
- Агент должен запускаться вне зависимости от наличия у машины соединения с сетью.
- Первоначальная установка агента должна быть максимально проста.
- Обслуживание агента должно быть не сложнее его установки.
- Необходима изменять конфигурацию агента и расширять его функционал на лету.
- Самым важным из всего, я бы отметил возможность делать всё вышеперечисленное не отрывая задницы от кресла, калории ведь не казённые, надо экономить.
Встречайте! Zabbix Helper Kit!
Собственно это набор утилит написанных на языке AutoIt, разрабатываемый мною и используемый в сфере коммерческой эксплуатации Zabbix на протяжение многих лет. Поэтому он предназначен для решения всех проблем обслуживания Zabbix Agent Windows и еще чуть-чуть. Основной его целью является упрощение превращения Zabbix в средство управления инфраструктурой предприятия. В один прекрасный день я решил начать с нуля, систематизировать код, провести рефакторинг и опубликовать исходники для свободного использования.
Что умеет Zabbix Helper Kit на момент написания статьи:
- Выкачивать из указанного в настройках репозитория (FTP сервера):
- Zabbix Agent в зависимости от битности OS Windows.
- Файл конфигурации агента.
- Устанавливать Zabbix Agent как сервис мастдая.
- Создавать правило для него в брандмауэре Windows.
- Записвывать в брандмауэр правило для себя.
- Запиливаться в планировщик задач и запускаться каждый час:
- Если компьютер в домене то имени заданной учётной записи.
- Если в рабочей группе то от имени системы.
- Сравнивать локальную версию репозитория с удалённой.
- В случае обнаружения в репозитории новой версии, скачивать содержимое репозитория к себе в папку.
- Останавливать Zabbix Agent, применять скачанные обновления и запускать его снова.
Реализовывает весь описанный функционал утилита Zabbix Helper Updater.
Zabbix Helper Kit скачать
Распространяется Zabbix Helper Kit через GitHub в виде исходников AutoIt и в будущем в виде скомпилированных exe файлов. Для работы необходим FTP сервер. Так же необходимо для скомпилированных файлов прописывать исключения в антивирусах.