Перейти к основному содержанию
 

vCenter — режим обслуживания хоста с vCLS

VMware

В vCenter 7U1 появилась такая штука как vSphere Cluster Services (vCLS). Это такие мелкие виртуалки, которые сами заводятся в кластере и поддерживают его работу. Если vCenter отвалится, то благодаря vCLS кластер продолжит функционировать. Вся эта система самоорганизуется. Виртуалки автоматически создаются, запускаются, удаляются.

В vSphere 7 Update 3 появилось несколько хороших обновлений vCLS для повышения эффективности таких операций, как размещение агентских vCLS на хостах и хранилищах данных.

Всё прекрасно, пока мы не решим перевести хост в vCLS на борту в режим обслуживания. Гасим все виртуалки, пытаемся перевести хост в Maintenance Mode, а vCLS машина сама включилась и не даёт ничего сделать. Удалить vCLS мы тоже не можем. Что делать? Есть несколько способов.

Migrate vCLS

Если ваша лицензия позволяет мигрировать машины, то можно переместить vCLS на другой хост в том же кластере.

vcls

При миграции нас ругают и отправляют читать KB 79892, в этой статье пишут зачем vCLS нужны и как мы можем своими руками поломать функциональность DRS кластера.

https://kb.vmware.com/s/article/79892

Если мы уверены в том что делаем, жмём YES.

vmware

Нам говорят не рулить этой машиной вручную. Жмём YES.

Машина смигрируется, можно ввести хост в Maintenance Mode. Однако, никто не гарантирует что в это момент не начнётся деплой новой vCLS на тот же хост, в этом случае он может зависнуть. Так что этот метод не очень хороший. Если не хотим рисковать или наша лицензия не позволяет мигрировать машины, то нужно придумать что-то ещё.

Retreat Mode

Второй неправильный метод — отключить в кластере режим Retreat Mode. Тогда все виртуалки vCLS в этом кластере сами удалятся. Естественно, при этом функционал DRS и HA перестанет работать.

​Заходим в vSphere Client. Тыкаем на нужный кластер. Из URL вытаскиваем его номер: domain-c<number>. Получится нечто такое: "domain-c1006".

vmware

Тыкаем в vCenter. Configure → Advanced setting → Edit settings. Откроется окно "Edit Advanced vCenter Server Settings". Добавляем новое значение, подставив номер кластера:

  • name = config.vcls.clusters.domain-c<number>.enabled
  • value = False

Save.

Теперь vCLS виртуалки кластера начнут самоуничтожаться. После удаления всех виртуалок vCLS можно ввести хост в Maintenance Mode, сменить значение на True и вернуть всё как было.

Выбор ​Datastore для vCLS VMs

А теперь более правильный метод.

Хранилище данных для виртуальных машин vCLS выбирается автоматически на основе ранжирования всех хранилищ, подключенных к хостам внутри кластера. Хранилище данных с большей вероятностью будет выбрано, если в кластере есть хосты со свободными зарезервированными слотами DRS, подключенными к хранилищу данных. Алгоритм пытается разместить виртуальные машины vCLS в общем хранилище данных, если это возможно, прежде чем выбрать локальное хранилище данных. Предпочтительно хранилище данных с большим свободным пространством, и алгоритм старается не размещать более одной виртуальной машины vCLS в одном хранилище данных.

Мы можем переопределить размещение хранилища данных виртуальной машины vCLS по умолчанию.

Выбираем наш кластер, в котором находится нужный хост. Configure → vSphere Cluster Service → Datastores.

vcls

Здесь во вкладке VCLS ALLOWED находится список хранилищ, на которых можно размещать vCLS. По умолчанию список пуст, это означает, что для размещения vCLS доступны все хранилища.

Во вкладке SOLUTION BLOCKED находится список хранилищ, в которых нельзя размещать vCLS независимо от нашего желания, этот список настраивается автоматически. К примеру, туда попадают хранилища SRM или VSAN в режиме обслуживания. Нам эта вкладка сейчас не интересна.

Возвращаемся к VCLS ALLOWED. Здесь можно нажать кнопку ADD и явно указать те хранилища, на которых разрешено размещать vCLS машины. На всех остальных хранилищах размещение vCLS будет запрещено. ADD.

vcls

Поступаю просто. Галками выбираю все хранилища, кнопе хранилищ хоста, который собираюсь ввести в режим обслуживания. ADD.

Не успеваю сделать пару глотков кофе, как vCLS с моего хоста удаляется и деплоится на другой хост. Переводим хост в Maintenance Mode.

Примечание

Ещё можно настроить машине vCLS теги или атрибуты, сделать правила, с помощью Compute Policy убрать их с нужного хоста. Это также часто используется для того, чтобы vCLS не мешали обычным рабочим виртуалкам под нагрузкой.

Ссылки

https://docs.vmware.com/en/VMware-vSphere/7.0/com.vmware.vsphere.resmgmt.doc/GUID-96BD6016-4BE7-4B1C-8269-568D1555B08C.html

https://core.vmware.com/blog/vsphere-7-update-3-vcls-updates

 

Похожие материалы

Добавление шаблона vSphere 6.0 в центр сертификации

Если у вас есть собственный центр сертификации, то сертификат для vSphere 6.0 удобно сгенерировать в нём. Для этого потребуется создать шаблон в центре сертификации. В этой статье распишу как это делать. Саму инструкцию я нагуглил где-то на просторах Интернета, но она на английском языке. Поэтому мне придётся заняться переводом. Скриншоты возьму те что есть, потому как шаблон в центре сертификации я уже внёс. И сертификат был успешно сгенерирован этим шаблоном. Так что инструкция - рабочая, что не может не радовать.

Установка VMware Tools на Ubuntu

VMware Tools - бесплатный набор утилит для улучшения взаимодействия виртуальной машины и платформы VMware. В Интернете пишут про то, что от установки VMware Tools улучшается производительность виртуальной машины. В качестве примера указывают на то, что только в этом наборе утилит есть драйвера для сетевой карты vmxnet3. Не согласен, драйвера можно и отдельно поставить. В linux так и без этих драйверов сетевая карта работает нормально. А вот если у вас Windows Server - рекомендую vmxnet3, меньше глюков.

Установка VMware Tools на Windows Server 2012 R2

VMware Tools - бесплатный набор утилит для улучшения взаимодействия виртуальной машины и платформы VMware. Если у вас Windows Server, то рекомендую установить VMware Tools для смены сетевой карты на vmxnet3, меньше глюков. Как показала практика, другие сетевые карты работают не очень стабильно.