20 Янв

VMware VCSA (vCenter Server Appliance) & Zabbix agent

Следуйте инструкциям на свой страх и риск!
ВАЖНО! Перед тем, как лезть шаловливыми ручками в VCSA, особенно в продакш, ОБЯЗАТЕЛЬНО сделайте снапшот!

Zabbix предлагает мониторинг кластера VMware vSphere из коробки, но функционал его достаточно ограничен. Управляет кластером у меня VCSA (vCenter Server Appliance) — это linux-based решение, по сути SUSE Linux Enterprise с добавками от VMware. У меня был плохой опыт с простым vCenter на Windows Server, да и вообще я линуксоид, так что сразу решил разворачивать кластер с использованием VCSA. В версии 5.5 были некоторые ограничения VCSA относительно решения на винде, но версия 6 этих ограничений не имеет и позиционируется как production-ready. Вот и славненько.

Так вот… немного отошел от темы. Потроха — Суся, zypper есть, только репы не подключены. Вообще, можно установить на VCSA что угодно, но систему убить таким образом можно, причем не сложно.

Для начала смотрим на какой версии Суси вертится VCSA:

vc:~ # cat /etc/SuSE-release
SUSE Linux Enterprise Server 11 (x86_64)
VERSION = 11
PATCHLEVEL = 3

Теперь идем на software.opensuse.org, ищем zabbix-agent и подбираем подходящий реп. Зачастую для SLE подойдет реп от Opensuse:
vcsa-zabbix

Копируем ссылку на RPM-файл, включаем SSH-доступ на VCSA, врубаем и запускаем shell. Нам из ссылки нужно получить только путь до репа. Добавляем реп в систему:

vc:~ # zypper ar -f http://download.opensuse.org/repositories/server:/monitoring/SLE_11_SP3/ monitoring
Adding repository 'monitoring' [done]
Repository 'monitoring' successfully added
Enabled: Yes
Autorefresh: Yes
GPG check: Yes
URI: http://download.opensuse.org/repositories/server:/monitoring/SLE_11_SP3/

Обновляем реп:
vc:~ # zypper ref

После этого можно ставить софт как в обычно Сусе. Например:

vc:~ # zypper se zabbix
Loading repository data...
Reading installed packages...
S | Name | Summary | Type
--+--------------------------+--------------------------------------------------------------+-----------
| percona-zabbix-templates | Percona MySQL Monitoring Plugins for Zabbix | package
| zabbix | Enterprise-class open source distributed monitoring solution | srcpackage
| zabbix-agent | The Zabbix agents | package
| zabbix-debuginfo | Debug information for package zabbix | package
| zabbix-debugsource | Debug sources for package zabbix | package
| zabbix-java-gateway | Zabbix java gateway | package
| zabbix-phpfrontend | Zabbix web frontend (php) | package
| zabbix-proxy | The Zabbix proxy | package
| zabbix-proxy-mysql | Zabbix proxy with MySQL support | package
| zabbix-proxy-postgresql | Zabbix proxy with PostgreSQL support | package
| zabbix-proxy-sqlite | Zabbix proxy with SQLite support | package
| zabbix-server | The Zabbix server | package
| zabbix-server-mysql | Zabbix server with MySQL support | package
| zabbix-server-postgresql | Zabbix server with PostgreSQL support | package
| zabbix-server-sqlite | Zabbix server with SQLite support | package
vc:~ # zypper in zabbix-agent

Правим файл /etc/zabbix/zabbix-agent.conf, запускаем сервис через /etc/init.d/zabbix-agentd start… А работает только активная проверка. То есть только тогда, когда агент связывается с сервером, на VCSA входящие соединения закрыты фаерволлом, кроме отдельных портов. Можно добавить правило в iptables, но оно слетит при перезагрузке VCSA, либо при редактировании настроек сетевого фильтра через веб-интерфейс.

Идем в /etc/vmware/appliance и первым делом бэкапим файл, который собираемся редактировать:

vc:~ # cd /etc/vmware/appliance/
vc:/etc/vmware/appliance # cp services.conf services.conf.bak

Теперь через vim редактируем файл и добавляем правило. Готовый вариант:

vc:/etc/vmware/appliance # diff services.conf.bak services.conf
70a71,84
> },
> "zabbix-agent": {
> "firewall": {
> "enable": true,
> "rules": [
> {
> "direction": "inbound",
> "protocol": "tcp",
> "porttype": "dst",
> "port": "10050",
> "portoffset": 0
> }
> ]
> }

Перегружаем правила фаерволла:

vc:~ # /usr/lib/applmgmt/networking/bin/firewall-reload

Все, готово. В Zabbix добавляем хост, применяем стандартный шаблон для linux-систем и радуемся показателям и графика.
Но после обновления VCSA файл services.conf перезапишется, так что лучше сохранить актуальную версию:

vc:/etc/vmware/appliance # cp services.conf services.conf.new

Так что после обновления можно будет в две строки актуализировать правила фаерволла.

One thought on “VMware VCSA (vCenter Server Appliance) & Zabbix agent

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *