Развертывание виртуальных машин и масштабируемых наборов на выделенных узлах
Мақала
Область применения: ✔️ Виртуальные машины Linux ✔️ Виртуальные машины Windows ✔️ Универсальные масштабируемые наборы
В этой статье рассказывается, как создать выделенный узел Azure для размещения виртуальных машин и экземпляров масштабируемых наборов.
Ограничения
Размеры и типы оборудования, доступные для выделенных узлов, зависят от региона. Дополнительные сведения см. на странице с ценами узлов.
Не все номера SKU виртуальных машин Azure, регионы и зоны доступности поддерживают диски ценовой категории "Ультра". Дополнительные сведения см. в статье о дисках Azure ценовой категории "Ультра".
Дополнительные ограничения применяются при использовании дисков категории "ультра" на следующих размерах виртуальных машин: LSv2, M, Mv2, Msv2, Mdsv2, NVv3, NVv4 на выделенном узле.
Число доменов сбоя масштабируемого набора виртуальных машин не может превышать число доменов сбоя группы узлов.
Пользователи не могут выбирать аппаратные возможности, такие как ускорение сети при создании выделенного узла.
Пользователи не смогут создавать виртуальные машины и виртуальные машины с поддержкой ускорения сети на выделенном узле.
Создание группы узлов
Группа узлов — это ресурс, который представляет собой коллекцию выделенных узлов. Группа узлов создается в регионе и зоне доступности, и в нее добавляются узлы. С целью обеспечения высокого уровня доступности для выделенных узлов можно использовать один или оба приведенных ниже варианта.
Развертывание в нескольких зонах доступности. В этом случае группа узлов должна быть в каждой из зон, которую необходимо использовать.
Развертывание в нескольких доменах сбоя, сопоставленных с физическими стойками.
В любом случае необходимо указать количество доменов сбоя для группы узлов. Если группа не должна охватывать несколько доменов сбоя, используйте число доменов сбоя, равное 1.
Можно также использовать как зоны доступности, так и домены сбоя.
Включение дисков ценовой категории "Ультра" является параметром уровня группы узлов. Его нельзя изменить после создания группы узлов.
Выполните поиск Группы узлов, а затем выберите Группы узлов в результатах.
На странице Группы узлов выберите Создать.
Выберите подписку, которую нужно использовать, а затем щелкните Создать, чтобы создать новую группу ресурсов.
В поле Имя введите myDedicatedHostsRG и нажмите кнопку ОК.
В поле Имя группы узлов введите myHostGroup.
В поле Расположение выберите Восточная часть США.
В поле Зона доступности выберите 1.
Выберите Включить совместимость с дисками SSD ценовой категории "Ультра", чтобы использовать такие диски с поддерживаемыми виртуальными машинами.
В поле Число доменов сбоя выберите 2.
Выберите Automatic placement (Автоматическое размещение), чтобы автоматически назначить виртуальные машины и экземпляры масштабируемых наборов для доступного узла в этой группе.
Выберите Проверить и создать, а затем дождитесь окончания проверки.
После появления сообщения Проверка пройдена выберите команду Создать, чтобы создать группу узлов.
Создание группы узлов займет всего несколько секунд.
Не все номера SKU узлов доступны во всех регионах и зонах доступности. Прежде чем приступать к подготовке выделенных узлов, получите сведения о доступности узлов и ограничениях предложений.
az vm list-skus -l eastus2 -r hostGroups/hosts -o table
Кроме того, можно проверить, поддерживает ли серия виртуальных машин диски ценовой категории "Ультра".
subscription="<mySubID>"
# example value is southeastasia
region="<myLocation>"
# example value is Standard_E64s_v3
vmSize="<myVMSize>"
az vm list-skus --resource-type virtualMachines --location $region --query "[?name=='$vmSize'].locationInfo[0].zoneDetails[0].Name" --subscription $subscription
В этом примере мы используем команду az vm host group create для создания группы узлов с использованием как зон доступности, так и доменов сбоя.
az vm host group create \
--name myHostGroup \
-g myDHResourceGroup \
-z 1 \
--platform-fault-domain-count 2
Добавьте параметр --automatic-placement true, чтобы виртуальные машины и экземпляры масштабируемых наборов автоматически размещались на узлах, в определенной группе узлов. Дополнительные сведения см. в разделе Сравнение ручного и автоматического размещения.
Добавьте параметр --ultra-ssd-enabled true, чтобы разрешить создание виртуальных машин, которые могут поддерживать диски ценовой категории "Ультра".
Другие примеры
Вы также можете использовать команду az vm host group create для создания группы узлов в зоне доступности 1 (без доменов сбоя).
az vm host group create \
--name myAZHostGroup \
-g myDHResourceGroup \
-z 1 \
--platform-fault-domain-count 1
В приведенном ниже фрагменте кода команда az vm host group create применяется для создания группы узлов с использованием только доменов сбоя (для регионов, где зоны доступности не поддерживаются).
az vm host group create \
--name myFDHostGroup \
-g myDHResourceGroup \
--platform-fault-domain-count 2
В следующем фрагменте кода команда az vm host group create используется для создания группы узлов, которая поддерживает диски ценовой категории "Ультра" и автоматическое размещение виртуальных машин.
az vm host group create \
--name myFDHostGroup \
-g myDHResourceGroup \
-z 1 \
--ultra-ssd-enabled true \
--platform-fault-domain-count 2 \
--automatic-placement true
В этом примере создается группа узлов New-AzHostGroup в зоне 1 с двумя доменами сбоя.
Добавьте параметр -SupportAutomaticPlacement true, чтобы виртуальные машины и экземпляры масштабируемых наборов автоматически размещались на узлах, в определенной группе узлов. Дополнительные сведения по этой теме см. в разделе Сравнение ручного и автоматического размещения.
Добавьте параметр -EnableUltraSSD, чтобы разрешить создание виртуальных машин, которые могут поддерживать диски ценовой категории "Ультра".
Создание выделенного узла
Теперь создайте выделенный узел в группе узлов. Помимо имени узла, необходимо указать его номер SKU. Номер SKU узла определяет поддерживаемую серию виртуальных машин, а также поколение оборудования для выделенного узла.
Найдите Выделенный узел, а затем выберите Выделенные узлы из результатов.
На странице Выделенные узлы выберите Создать.
Выберите идентификатор подписки, которую вы хотите использовать.
Выберите myDedicatedHostsRG в поле Группа ресурсов.
В поле Подробности об экземпляре введите myHost в поле Имя и выберите Восточная часть США для расположения.
В разделе Профиль оборудования выберите Семейство Standard ES3 — тип 1 для Семейство размеров, выберите myHostGroup в поле Группы узлов, а затем выберите 1 для параметра Домен сбоя. Для остальных полей используйте значения по умолчанию.
Оставьте узел автоматической замены на параметре сбоя включено, чтобы служба автоматически исправляла узел в случае сбоя уровня узла.
По завершении выберите Проверить и создать и дождитесь окончания проверки.
После появления сообщения Проверка пройдена выберите команду Создать, чтобы создать узел.
Создайте узел с помощью команды az vm host create. Если для группы узлов задано число доменов сбоя, вам будет предложено указать домен сбоя для узла.
Если вы хотите создать виртуальную машину с поддержкой дисков ценовой категории "Ультра", убедитесь, что группа узлов, в которую будет помещена виртуальная машина,поддерживает диски ценовой категория "Ультра". Убедившись в приведенном выше, создайте виртуальную машину в той же группе узлов. Инструкции по подключению диска ценовой категории "Ультра" к виртуальной машине см. в статье Развертывание диска ценовой категории "Ультра".
В верхнем левом углу окна портала Azure выберите Создать ресурс.
В поле поиска над списком ресурсов Azure Marketplace найдите и выберите нужный образ, а затем щелкните Создать.
На вкладке Основное в разделе Сведения о проекте проверьте, что выбрана правильная подписка, и выберите myDedicatedHostsRG в поле Группа ресурсов.
В разделе Подробности об экземпляре введите myVM в поле Имя виртуальной машины и выберите Восточная часть США в поле Расположение.
В области Параметры доступности выберите Зона доступности и в раскрывающемся списке выберите 1.
В поле "Размер" выберите Изменить размер. В списке доступных размеров выберите одну из серий ESv3, например Standard E2s v3. Возможно, потребуется очистить фильтр, чтобы увидеть все доступные размеры.
При необходимости заполните остальные поля на вкладке Основное.
Если вы хотите указать, какой узел использовать для виртуальной машины, в верхней части страницы перейдите на вкладку Дополнительно и в разделе Узел выберите myHostGroup для параметра Группа узлов и myHost для параметра Узел. В противном случае виртуальная машина будет автоматически размещена на узле с емкостью.
Оставьте остальные значения по умолчанию и нажмите кнопку Просмотр и создание, расположенную в нижней части страницы.
Когда появится сообщение об успешной проверке, выберите Создать.
Развертывание виртуальной машины может занять несколько минут.
Создайте виртуальную машину в выделенном узле с помощью команды az vm create. Если при создании группы узлов была указана зона доступности, при создании виртуальной машины необходимо использовать ту же зону. Укажите правильные значения образа, имени узла и других параметров. Если вы создаете виртуальную машину Windows, удалите --generate-ssh-keys, чтобы получать запрос на ввод пароля.
Чтобы разместить виртуальную машину на определенном узле, используйте --host вместо указания группы узлов с помощью --host-group.
Предупреждение
Если виртуальная машина создается в узле, в котором недостаточно ресурсов, она будет создана в состоянии сбоя.
Создайте на узле новую виртуальную машину, используя команду New-AzVM. В нашем примере виртуальную машину следует создавать в зоне 1, так как в ней находится группа узлов.
Если виртуальная машина создается в узле, в котором недостаточно ресурсов, она будет создана в состоянии сбоя.
Создание масштабируемого набора
Вы также можете создать на узле масштабируемый набор.
Внимание
Начиная с ноября 2023 года масштабируемые наборы виртуальных машин, созданные с помощью PowerShell и Azure CLI, по умолчанию будут использоваться в режиме гибкой оркестрации, если режим оркестрации не указан. Дополнительные сведения об этом изменении и о действиях, которые необходимо предпринять, см. в руководстве по критическим изменениям для клиентов VmSS PowerShell/CLI — Microsoft Community Hub
При развертывании масштабируемого набора необходимо указывать группу узлов.
Найдите Масштабируемый набор и выберите в списке Масштабируемые наборы виртуальных машин.
Нажмите кнопку Добавить, чтобы создать новый масштабируемый набор.
Заполните как обычно поля на вкладке Основное, но убедитесь, что выбран размер виртуальной машины из серии, выбранной для выделенного узла, например Standard E2s v3.
На вкладке Дополнительно для параметра Алгоритм распространения выберите Максимальное распространение.
В поле Группа узлов в раскрывающемся списке выберите группу узлов. Если вы создали группу недавно, добавление в список может занять около минуты.
При развертывании масштабируемого набора с помощью az vmss create необходимо указать группу узлов в параметре --host-group. В этом примере мы развертываем образ Linux. Чтобы развернуть образ Windows, замените значение --image и удалите --generate-ssh-keys, чтобы получить запрос на ввод пароля.
Если вы хотите вручную выбрать узел для развертывания масштабируемого набора, добавьте --host и имя узла.
Переназначение существующей виртуальной машины
Можно переназначить существующую мультитенантную виртуальную машину или выделенную виртуальную машину узла другому выделенному узлу, но сначала виртуальная машина должна быть остановлена\Deallocated. Перед перемещением виртуальной машины на выделенный узел убедитесь, что конфигурация виртуальной машины поддерживается.
Размер виртуальной машины должен быть в том же семействе размеров, что и выделенный узел. Например, если на выделенном узле используется виртуальная машина DSv3, ее размером может быть Standard_D4s_v3, но не Standard_A4_v2.
Виртуальная машина должна находиться в том же регионе, что и выделенный узел.
Виртуальная машина не может входить в группу размещения с учетом расположения. Удалите виртуальную машину из группы размещения с учетом расположения, прежде чем перемещать ее на выделенный узел. Дополнительные сведения об этом разделе см. в разделе "Перемещение виртуальной машины из группы размещения близкого взаимодействия".
Виртуальная машина не может находиться в группе доступности.
Если виртуальная машина находится в группе доступности, она должна быть в той же зоне доступности, что и группа узлов. Параметры зоны доступности для виртуальной машины и группы узлов должны совпадать.
Переместите виртуальную машину на выделенный узел с помощью портала.
Откройте страницу для виртуальной машины.
Выберите пункт Остановить, чтобы остановить или отключить виртуальную машину.
В меню слева выберите Конфигурация.
Выберите группу узлов и узел в раскрывающихся меню.
После завершения выберите команду Сохранить в верхней части страницы.
После добавления виртуальной машины на узел выберите команду Обзор в меню слева.
В верхней части страницы щелкните Запустить, чтобы перезапустить виртуальную машину.
Переместите существующую виртуальную машину на выделенный узел с помощью CLI. Чтобы назначить виртуальную машину выделенному узлу, для нее необходимо выполнить остановку или отменить выделение с помощью команды az vm deallocate.
Подставьте собственные значения.
az vm deallocate -n myVM -g myResourceGroup
az vm update - n myVM -g myResourceGroup --host myHost
az vm start -n myVM -g myResourceGroup
Для автоматически размещенных виртуальных машин нужно всего лишь обновить группу узлов. Дополнительные сведения по этой теме см. в разделе Сравнение ручного и автоматического размещения.
Подставьте собственные значения.
az vm deallocate -n myVM -g myResourceGroup
az vm update -n myVM -g myResourceGroup --host-group myHostGroup
az vm start -n myVM -g myResourceGroup
Замените значения переменных собственными данными.
Перемещение виртуальной машины из выделенного узла в мультитенантную инфраструктуру
Вы можете переместить виртуальную машину, которая работает на выделенном узле в мультитенантную инфраструктуру, но виртуальная машина должна быть остановлена\Deallocated.
Убедитесь, что у вашей подписки достаточно квоты виртуального ЦП для виртуальной машины в регионе, где
Мультитенантная виртуальная машина будет запланирована в том же регионе и зоне, что и выделенный узел.
Переместите виртуальную машину из выделенного узла в мультитенантную инфраструктуру с помощью портала.
Откройте страницу для виртуальной машины.
Выберите пункт Остановить, чтобы остановить или отключить виртуальную машину.
В меню слева выберите Конфигурация.
Выберите "Нет" в раскрывающемся меню группы узлов.
После завершения выберите команду Сохранить в верхней части страницы.
После перенастройки виртуальной машины в виде мультитенантной виртуальной машины выберите "Обзор " в меню слева.
В верхней части страницы щелкните Запустить, чтобы перезапустить виртуальную машину.
Перемещение виртуальной машины из выделенного узла в мультитенантную инфраструктуру с помощью интерфейса командной строки. Виртуальная машина должна быть остановлена или освобождена с помощью az vm deallocate , чтобы назначить ее для перенастройки в качестве мультитенантной виртуальной машины.
Подставьте собственные значения.
az vm deallocate -n myVM -g myResourceGroup
az vm update -n myVM -g myResourceGroup --set host.id=None
az vm start -n myVM -g myResourceGroup
Перемещение виртуальной машины из выделенного узла в мультитенантную инфраструктуру с помощью PowerShell.
Замените значения переменных собственными данными.
На странице Обзор для этого узла прокрутите вниз и изучите список оставшихся доступных размеров для узла. Это должно выглядеть примерно так:
Вы можете проверить состояние работоспособности узла и оставшееся количество виртуальных машин, которое можно развернуть в нем, с помощью команды az vm host get-instance-view.
az vm host get-instance-view \
-g myDHResourceGroup \
--host-group myHostGroup \
--name myHost
Выходные данные будут выглядеть приблизительно так:
Вы можете проверить состояние работоспособности узла и оставшееся количество виртуальных машин, которое можно на нем развернуть, выполнив командлет Get-AzHost с параметром -InstanceView.
Перезапуск узла не полностью отключает узел. При перезапуске узла базовые виртуальные машины также перезагрузятся. Узел останется на том же базовом физическом оборудовании, а идентификатор узла и идентификатор ресурса останутся неизменными после перезапуска. Номер SKU узла также останется прежним после перезапуска.
В верхней строке меню нажмите кнопку Перезапустить.
Во время перезапуска в разделе Основные компоненты области ресурсов узла состояние узла изменится на Host undergoing restart (Выполняется перезапуск узла).
После завершения перезапуска восстановится состояние узла Узел доступен.
az vm host restart \
--resource-group myResourceGroup \
--host-group myHostGroup \
--name myDedicatedHost
Чтобы просмотреть состояние перезапуска, можно использовать команду az vm host get-instance-view. Во время перезапуска для параметра DisplayStatus будет установлено значение Host undergoing restart (Выполняется перезапуск узла). После завершения перезагрузки для параметра displayStatus вернется значение Узел доступен.
az vm host get-instance-view --resource-group myResourceGroup --host-group myHostGroup --name myDedicatedHost
Чтобы просмотреть состояние перезапуска, можно использовать командлет Get-AzHost с помощью параметра InstanceView. Во время перезапуска для параметра DisplayStatus будет установлено значение Host undergoing restart (Выполняется перезапуск узла). После завершения перезагрузки для параметра displayStatus вернется значение Узел доступен.
Перемещение узла и всех связанных виртуальных машин в новое оборудование поколения можно выполнить с помощью функции изменения размера узла. Изменение размера упрощает процесс миграции и позволяет избежать необходимости вручную создавать новые узлы и перемещать все виртуальные машины по отдельности.
Ограничения изменения размера:
Узел может быть изменен только на ADH в одном семействе виртуальных машин. Узел Dsv3-Type3 можно изменить в dsv3-Type4, но не на Esv3-Type4.
Вы можете изменить размер только на более новое поколение оборудования. Узел Dsv3-Type3 можно изменить в dsv3-Type4, но не Dsv3-Type2.
Изменение размера идентификатора ресурса узла. Идентификатор узла остается неизменным.
Узел и все связанные виртуальные машины становятся недоступными во время операции изменения размера.
Предупреждение
Операция изменения размера приводит к потере любых не постоянных данных, таких как временные данные диска. Сохраните всю работу в постоянном хранилище данных перед активацией изменения размера.
Примечание.
Если исходный узел уже запущен на последнем оборудовании, страница "Размер" будет отображать пустой список. Если вы ищете улучшенную производительность, рассмотрите возможность переключения на другую семью виртуальных машин.
Если виртуальная машина или базовый узел остаются неответственными после выполнения всех возможных действий по устранению неполадок, пользователи могут активировать восстановление службы узла и не ожидать запуска восстановления платформы. Повторное развертывание узла переместит узел и все связанные виртуальные машины на другой узел одного номера SKU. Ни один из параметров узла не изменится, кроме идентификатора ресурса узла, соответствующего базовому идентификатору узла.
Предупреждение
Операция повторного развертывания включает восстановление службы, следовательно, приведет к потере любых непрестанных данных, таких как данные, хранящиеся на временных дисках. Сохраните работу перед повторной развертыванием.
az vm host redeploy \
--resource-group myResourceGroup \
--host-group myHostGroup \
--name myDedicatedHost
Поддержка PowerShell в ближайшее время.
Удаление узла
Вы платите за выделенные узлы, даже если виртуальные машины не развернуты на узле. Для экономии затрат следует удалить все узлы, которые в настоящее время не используются.
Узел можно удалить только в том случае, если он больше не используется виртуальными машинами.
Когда все виртуальные машины будут удалены, вернитесь на страницу Обзор для узла и щелкните Удалить в меню сверху.
Когда удаление узла завершится, откройте страницу для группы узлов и щелкните Удалить группу узлов.
Удалите виртуальные машины с помощью команды az vm delete.
az vm delete -n myVM -g myDHResourceGroup
После удаления виртуальных машин можно удалить узел с помощью команды az vm host delete.
az vm host delete -g myDHResourceGroup --host-group myHostGroup --name myHost
После удаления всех узлов можно удалить группу узлов с помощью команды az vm host group delete.
az vm host group delete -g myDHResourceGroup --host-group myHostGroup
Вы также можете удалить всю группу ресурсов одной командой. Выполнение этой команды приведет к удалению всех ресурсов, созданных в группе, включая все виртуальные машины, узлы и группы узлов.
az group delete -n myDHResourceGroup
Удалите виртуальные машины с помощью командлета Remove-AzVM.
Remove-AzVM -ResourceGroupName $rgName -Name myVM
После удаления виртуальных машин можно удалить узел с помощью командлета Remove-AzHost.
Вы можете также удалить всю группу ресурсов одной командой, используя командлет Remove-AzResourceGroup. Выполнение этой команды приведет к удалению всех ресурсов, созданных в группе, включая все виртуальные машины, узлы и группы узлов.
Remove-AzResourceGroup -Name $rgName
Следующие шаги
Дополнительные сведения по этой теме см. в обзоре выделенных узлов.
В Шаблонах быстрого запуска Azure имеются шаблоны, в которых используются как зоны, так и домены сбоя для обеспечения максимальной устойчивости в регионе.