Мониторинг процессов на Windows-машинах по WMI

Enterprise версия Zenoss помимо многих вкусностей также добавляет возможность мониторинга Windows-устройств при помощи WMI. Несмотря на то, что этот мониторинг сделан хорошо, в его реализации присутствует один существенный пробел: инженеры Zenoss до сих пор не реализовали мониторинг процессов (компонент OSProcess на странице устройства).

Но не все так плохо. На радость нам в коммьюнити Zenoss присутствует такой человек, как Egor Puzanov, благодаря которому мониторинг процессов больше не является проблемой.

Он разработал два зенпака, которые помогут нам в мониторинге процессов:

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

Итак, устанавливаем зенпаки в указанной последовательности и после перезапуска zopectl обнаруживаем, что у нас появился новый класс устройств /CIM/WMI, в который, по задумке автора, и следует помещать устройства, для которых необходим WMI-мониторинг. В случае, если Вы используете Zenoss Core, это не должно вызвать каких-либо проблем, однако, если у Вас Zenoss Enterprise, то новый класс устройств несколько выбивается из общего дерева устройств, предлагаемых для Windows-устройств в этой версии (напомню, что в Enterprise версии для Windows-устройств, которые мониторятся по WMI, имеется класс /Server/Windows/WMI).

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

1) в дереве классов выбираем класс /Server/Windows/WMI, нажимаем кнопку Details и выбираем Modeler Plugins. Затем удаляем плагин zenoss.wmi.ProcessMap, а вместо него вставляем community.wmi.ProcessMap.

2) теперь идем в Advanced/Monitoring Templates, группируем по Device Class и в классе CIM/WMI выбираем темлейт OSProcess. Затем кликаем по кнопке с шестеренкой слева внизу, выбираем пункт Override Template и в качестве Target указываем /Server/Windows/WMI. Нажимаем ОК.

На этом все! Теперь можно идти в Infrastructure/Processes и добавлять необходимые процессы, а затем наслаждаться их мониторингом!

1172

Комментарии

А подобный метод распространяется на системные службы? Например, если на сервере работает DHCP и DNS, то можно ли мониторить их работу? Также инетерсует вопрос о мониоринге произвольных служб, возможно нестандартных.

Windows-сервисы прекрасно мониторятся по WMI в enterprise-версии zenoss и без подобных допиливаний. Это касается как DHCP и DNS, так и любых других процессов, запущенных на windows-машине как сервис. Кроме того, в zenoss, причем в core-версии, присутствует zenpack, добавляющий monitoring template для получения дополнительной информации о работе DNS, причем ему не важно, какая ОС на хосте.

Если же у Вас имеется только core-версия, где WMI мониторинг отсутствует в принципе, то указанные в статье 2 зенпака помогут Вам и в части мониторинга windows-сервисов тоже.

Если я правильно понял, то все Windows службы появляются на вкладке Windows services. И для них тоже есть графики потребления ресурсов?

Да, это так.

Что касается графиков потребления ресурсов, то их, к сожалению, нет. Выходом может быть добавление исполняемого файла нужного сервиса в качестве обычного процесса в zenoss, тогда он также появится и в компоненте OSProcesses, и для него будут присутствовать графики ресурсов.