LINUX.ORG.RU
ФорумAdmin

Автообнаружение VM в zabbix

 ,


1

3

Добрый день!

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

Всю документацию заббикса перерыл, так и не нашёл элемента данных выводящих тип машины.

Подайте идею, как это можно реализовать?



Последнее исправление: DEZERTIRs (всего исправлений: 2)
Ответ на: комментарий от anonymous

Если там мост физического хоста мак адрес виртуального интерфейса всё равно есть.

Часть возможных решению требуют выполнения команд на самом узле сети, часть возможны выполнением команд на стороне zabbix.

kostik87 ★★★★★
()
Ответ на: комментарий от mord0d

С чего вдруг?

С того, почитай что такое MAC и зачем он нужен. На основе него идёт адресация в рамках одного сегмента сети.

Коллега, если есть мост и сетевой интерфейс виртуалки подключен к мосту и пакеты с него не NAT`ятся, то в рамках L2 сегмента сети будет виден и доступен MAC адрес виртуального интерфейса, без этого пакеты ходить не будут от виртуалки / сервера.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 2)

Если есть возмозможность обновлять конфигурацию заббикс агентов через ansible/puppet, то можно попробовать авторегистрацию с HostMetadata

Можно задать несколько действий и по значению HostMetadata в условиях назначать необходимый шаблон.

dober
()

Так, немного проверив тестовую машинку и кастомный юзерпараметр, все же можно использовать автообнаружение с кастомными ключами.

На тестовой машинке с агентом

/etc/zabbix# cat /etc/zabbix/zabbix_agent2.d/system_detect.conf
UserParameter=virt-hw-discovery, /usr/bin/systemd-detect-virt

Юзерпараметр возвращает значение none для физических машин и kvm для виртуальных в моем случае

Ну и далее в правилах автообнаружения задается на заббикс сервере:

Тип проверки - Zabbix agent Диапазон портов - 10050 Ключ - virt-hw-discovery

В действиях автообнаружения в нужно задать условие, к примеру Полученное значение равно kvm и в операциях по желанию какой шаблон.

dober
()
Последнее исправление: dober (всего исправлений: 1)
Ответ на: комментарий от kostik87

Другой вариант - по мак адресу сетевой карты.

Тогда уж dmidecode -s system-manufacturer. Но тут нужен sudo. И только для ВМ испопользовал. С контейнерами не проверял

router ★★★★★
()
Ответ на: комментарий от router

Есть, это уже частный случай. Используй комплекс вариантов предложенных мной и другими комментаторами.

Такого софта и соответственно виртуализированных физических серверов будет раз и всё.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 1)