По работе потребовалось мониторить состояние гипервизора VMware ESXi 6.0 FreeEdition.
Дело оказалось не очень простым: с одной стороны статей много на эту тему, с другой в них не всё детально описано.
Я взял за основу одну статью и немного ее доработал, т.к. имели какие-то затыки и ошибки.
Начнем… Ссылки на ориганалы статей, а так же сохраненные копии в конце заметки.
Что у меня на борту:
- zabbix_server (Zabbix) 3.0.4
Revision 61185 15 July 2016, compilation time: Jul 24 2016 07:09:30 - OS: Linux zbx-srv 3.13.0-92-generic #139-Ubuntu SMP Tue Jun 28 20:42:26 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
- Distributor ID: Ubuntu
Description: Ubuntu 14.04.4 LTS
Release: 14.04
Codename: trusty - Гипервизор: VMkernel esxi_gip 6.0.0 #1 SMP Release build-2494585
1) начнем с настройки zabbix server. Необходимо включить поддержку VMWare. Для этого в конфигурационном файле включаем всё это дело:
1 | nano /etc/zabbix/zabbix_server.conf |
помните: что у вас может быть другой путь до конфига или имя конфиг-файла.
### Option: StartVMwareCollectors
# Number of pre-forked vmware collector instances.
#
# Mandatory: no
# Range: 0-250
# Default:
# StartVMwareCollectors=0
StartVMwareCollectors=2
### Option: VMwareFrequency
# How often Zabbix will connect to VMware service to obtain a new data.
#
# Mandatory: no
# Range: 10-86400
# Default:
# VMwareFrequency=60
VMwareFrequency=60
### Option: VMwareCacheSize
# Size of VMware cache, in bytes.
# Shared memory size for storing VMware data.
# Only used if VMware collectors are started.
#
# Mandatory: no
# Range: 256K-2G
# Default:
# VMwareCacheSize=8M
VMwareCacheSize=8M
Красным я выделил строки которые добавил. Значения и описание параметров взято с официального руководства — ссылка на руководство Zabbix-server. | pdf-вариант
после этого сохраняем конфиг и перезапускаем zabbix server
1 | sudo service zabbix-server restart |
2) теперь создадим пользователя в нашем ESXi с правами read-only. Для этого запустим VMware vSphere Client, авторизируемся пользователем имеющим права на добавление новых пользователей, перейдем на вкладку users, правой клавишей мыши — «Add…» и увидим вот такое окно
где надо заполнить следующие поля:
User Information
login — логин для пользователя,
User Name — имя пользователя (опционально, необязательно);
Enter Password
Password — задаем пароль пользователя;
Confirm — подтверждаем пароль.
Всё, пользователь добавлен. Далее, переходим на следующую вкладку Permissions. Кликаем правой кнопкой, выбираем «Add…» открывается окно
в колонке «Users and Groups» жмем «Add…» Откроется окно выбора пользователя или группы. Здесь выбираем ранее созданного пользователя (у меня zabbix) и жмем «Add». В строке «Users» должно появиться имя пользователя — теперь жмем OK.
Соответственно в «Assigned Role» должно быть «Read-only». Жмем — OK. Пользователь успешно добавлен в группу «Только для чтения» (read-only).
3) следующий шаг — узнать UUID нашего гипервизора. Для этого необходимо перейти по ссылке:
https://[your_esxi_server]/mob/?moid=ha-host&doPath=hardware.systemInfo
И вот тут у меня возникли сложности. Т.к. при переходу по этому URL я увидел следующую ошибку:
503 Service Unavailable (Failed to connect to endpoint: [N7Vmacore4Http20NamedPipeServiceSpecE:0x3651c348] _serverNamespace = /mob _isRedirect = false _pipeName =/var/run/vmware/proxy-mob)
Благо на одном форуме я нашел ответ на свой вопрос, правда там не было сказано как же это сделать. Оказалось, что в ESXi 6.0 по умолчанию не включена Managed Object Browser. Пришлось гуглить как же его включить. Всё оказалось просто.
В VMware vSphere Client заходим в Configuration — Advanced Configuration. В открывшемся окне раскрываем config — HostAgent — plugins и выбираем solo. Далее отмечаем checkbox Config.HostAgent.plugins.solo.enableMob.
Жмем OK и снова переходим по ссылке. Теперь должно открыться окно авторизации, где вводим логин и пароль пользователя из «пункта 2».
В поле UUID то, что нам надо. Идем дальше.
4) создаем хост в Zabbix.
В web-интерфейсе переходим: Настройка — Узел сети — Создать узел сети.
добавляем шаблон (у меня он уже был в списке шаблонов)
- Template Virt VMware
Вкладка «макросы»: добавим 3 макроса. «Макрос» — «Значение».
{$URL} — https://[your_esxi_server]/sdk
{$USERNAME} — логин созданного пользователя,
{$PASSWORD} — пароль созданного пользователя.
Теперь нажимаем «Добавить». Должно вылезти сообщение, что узел успешно добавлен. Далее, переходим Мониторинг — Последние данные и отфильтровываемся по созданному гипервизору. Значения должны быть не пустыми.
Основная статья по которой делал. | Сохраненная копия.
Вторая статья | Сохраненная копия.
Включение MOB в ESXi. | Сохраненная копия.
If you found an error, highlight it and press Shift + Enter or to inform us.