Удаление distributed switch без vCenter.

Если у вас есть хосты ESXi с настроенным vSphere Distributed Switch (VDS), но нет самого vCenter Server, то администрирование сети сильно усложняется. А при добавлении хостов в новый vCenter вы видите такую ошибку: «The host proxy switch associated with ХХХХХХХХ no longer exists in vCenter Server. vCenter Server is not able to automatically remove the host proxy switch because it is still in use. To resolve the issue, disconnect any VMs and VMkernel network adapters that might be connected to the switch and remove the switch.»

 

 

При этом конфигурация Distributed Switch видна только при подключении напрямую к хосту ESXi:

Решение — переподключить (мигрировать)  сетевые интерфейсы ВМ и kernel-адаптер на стандартный switch, после чего удалить Distributed Switch.

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

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

  1. Удаляем аплинк из Distributed Switch.

2. Создаем стандартный Switch, подключаем к нему аплинк.

3. Мигрируем VMkernel и переподключаем сетевые адаптеры виртуальных машин

4. Проверяем, что все поргруппы на Distributed Switch свободны (кроме одного, занятого оставшимся аплинком)

5. Удаляем оставшийся аплинк и подключаем его к Switch.

Управляемость восстановлена, теперь можно удалить Distributed Switch из vCenter client и при желании создать новый  Distributed Switch.

  1. Выведем информацию о Distributed Switch

Итак, что провести инвентаризацию своих датасторе на предмет версии VMFS и размера блока нужно выполнить в PowerCLI следующий командлет:

esxcli network vswitch dvs vmware list
Как видим, у свитча  два аплинка: vmnic2 и vmnic3.
Удалим с номером 3
esxcfg-vswitch -V 23 -Q vmnic3 DSwitch
Где 23 — ID dvportgroup.
Теперь видим что vmnic3 удален.
Через графический интерфейс:
Примечание: на втором хосте эта команда не сработала, поэтому я использовал Port ID
esxcfg-vswitch -V 1 -Q vmnic3 DSwitch

2. Создаем стандартный Switch, подключаем к нему аплинк.

3. Мигрируем VMkernel

Теперь изменяем настройки сетевых интерфейсов виртуальных машин

4. Проверяем, что все поргруппы на Distributed Switch свободны (кроме одного, занятого оставшимся аплинком)

5. Удаляем оставшийся аплинк и подключаем его к Switch.


Когда все группы портов свободны мы можем удалить Switch из графического интерфйса клиента vCenter. (как удалить из командной строки я не нашел).

Теперь можно создавать новый  Distributed Switch.

 

комментария 2

  1. Почему не сработала команда на втором аплинке? Зачем и как создавать заново dvs, если нет vcentre?

  2. itpilot:

    «Почему не сработала команда на втором аплинке» — хосты идентичны, поэтому почему не сработала сказать не могу.
    vCenter есть, в нем и создается новый Distributed Switch.
    Но новый vCenter уже существующий VDS не видит.
    Настройки VDS хранятся в базе данных vCenter. Но также локальная копия базы хранится на хостах в /etc/vmware/dvsdata.db (настройки VDS хранятся и в других местах на хосте). Суть в том, что после развертывания нового vCenter он эту локальную базу не подхватывает. Вот и получается что для vCenter никакого Distributed Switch нет, а хост утверждает что есть. Поэтому и требуется зайти на каждый ESXi и выполнить указанные выше команды.

Добавить комментарий для Василий Отменить ответ

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.

Добро пожаловать в блог IT-пилот

Введите Ваш Email чтобы подписаться

Подписка оформлена!