Установка Zabbix Agent на VCSA 6.5

Автор: vik_kr Дата: . Категория: Статьи

Не так давно VMware выпустила VCSA 6.5, которую рекомендовала к использованию, вместо традиционной инсталляции vCenter на платформу Windows. Соответственно у некоторых мог появиться вопрос, а как мониторить VCSA?

Инфа под катом: Как собрать и установить Zabbix Agent на VCSA + Немного информации об устройстве VCSA.


Лирика:

Кто уже разворачивал VCSA 6.5 и пытался смотреть что там под капотом, знает, что VMware теперь решила применять PhotonOS вместо своих «традиционных» сборок Suse.
Если почитать доки к PhotonOS, можно выяснить что их дистрибьютив RPM based, однако они используют свою реализацию пакетного менеджера tdnf.

Условия:

Никто не хочет мусорить на VCSA. VCSA не использует пакетный менеджер для контроля компонентов VCSA, при установке всех необходимых компонентов, для сборки zabbix agent есть вероятность сломать VCSA и резко увеличить уровень «энтропии» внутри. Поэтому его надо добыть в таком виде, чтобы он завёлся на PhotonOS.

Порядок действий:

1. Нужно установить PhotonOS-1.0 Full версию, чтобы там был предустановлен обвес для компиляции (gcc, make & etc). Чтобы получить ISO образ для инсталяции, отправляемся на: vmware.github.io/photon. Находим ссылку на скачивание: Photon OS, Version 1.0 — Full ISO ~ 2.4Gb. Скачиваем образ.

2. Создаём чистую VM под PhotonOS в любой удобной среде виртуализации. Важная деталь:

!!!root диск на который будет производится установка, должен определяться как sda!!!

Т.к. инсталлятор у PhotonOS ищет /dev/sda и если не находит, просто выпадает в консоль
Собственно производим стандартную установку (Пример: Офф доки)
Инсталятор спросит тип устанавливаемой системы выбираем просто «PhotonOS Full».

Ждём окончания установки и перезагружаем систему.

3. Компиляция Zabbix Agent.
Открываем консоль VM с PhotonOS и логинимся. По желанию включаем удалённый логин для root в /etc/ssh/sshd_config

→ Нужно скачать архив с исходниками Zabbix
→ Прямая ссылка на SourceForge
 

Т.к. в случае с VCSA удалённо закинуть данные по SSH не получится
(там свой shell, требующей отдельной команды, чтобы открыть обычный bash)
Вместо того, чтобы подключаться к VM, будем подключаться к самому себе.


Распаковываем архив:
 

tar -xvf zabbix-3.2.3.tar.gz /tmp/zabbix/


Забираем данные на VM (команды должны выполняться на PhotonOS машине):
 

scp -r your_user@your_machine:/tmp/zabbix/ /root/zabbix/


Забрав исходники, остаётся сделать:
 

# cd /root/zabbix/
# ./configure --enable-agent
# make


После завершения компиляции получится бинарник, который будет работать на VCSA:

./src/zabbix_agent/zabbix_agentd — сам бинарь
./conf/zabbix_agentd.conf — конфиг к бинарю, который обычно лежит в /etc/zabbix/zabbix_agentd.conf

VCSA использует systemd в качестве init, поэтом для работы Zabbix Agent нужен будет сервис, пример сервиса:
 

# /etc/systemd/system/zabbix-agent.service
[Unit]
Description=Zabbix Agent
Documentation=man:zabbix_agentd
After=network.target

[Service]
Type=simple
ExecStart=/usr/sbin/zabbix_agentd -f -c /etc/zabbix/zabbix_agentd.conf
Restart=always
RestartSec=5s

[Install]
WantedBy=multi-user.target


Перемещаем необходимые из VM:
 

# scp ./src/zabbix_agent/zabbix_agentd your_user@your_machine:/tmp/zabbix_agentd
# scp ./conf/zabbix_agentd.conf your_user@your_machine:/tmp/zabbix_agentd.conf


4. Установка Zabbix Agent на VCSA. Подключаемся по ssh на VCSA, появится приглашение ввода, вводим shell, чтобы получить доступ к Linux консоли.
 

# scp your_user@your_machine:/tmp/zabbix_agentd /usr/sbin/zabbix_agentd
# mkdir -p /etc/zabbix
# scp your_user@your_machine:/tmp/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf
# tee /etc/systemd/system/zabbix-agent.service - вставляем содержимое systemd сервиса, и прерываем ввод Ctrl+C
# systemctl enable zabbix-agent
# vim /etc/zabbix/zabbix_agentd.conf - редактируем по необходимости
# systemctl restart zabbix-agent