группы Масштабируемые наборы виртуальных машин и размещения
Примечание.
В этом документе рассматриваются Масштабируемые наборы виртуальных машин выполнение в режиме единой оркестрации. Мы рекомендуем использовать гибкую оркестрацию для новых рабочих нагрузок. Дополнительные сведения см. в режимах Orchesration для Масштабируемые наборы виртуальных машин в Azure.
Теперь вы можете создать Azure Масштабируемые наборы виртуальных машин с емкостью до 1000 виртуальных машин. В этом документе большой масштабируемый набор виртуальных машин определяется как масштабируемый набор , способный масштабировать до более чем 100 виртуальных машин. Эта возможность задается с помощью свойства масштабируемого набора (singlePlacementGroup=False).
Поведение некоторых компонентов, например балансировки нагрузки и доменов сбоя, в крупных масштабируемых наборах отличается по сравнению со стандартными масштабируемыми наборами. В этом документе рассматриваются особенности крупных масштабируемых наборов и приведены сведения, которые необходимо знать, чтобы успешно использовать эти наборы в приложениях.
Распространенный метод развертывания облачной инфраструктуры в крупных масштабах — создать набор единиц масштабирования, например путем создания нескольких масштабируемых наборов виртуальных машин в нескольких виртуальных сетях и учетных записях хранения. Этот метод обеспечивает более удобное управление, чем при использовании отдельных виртуальных машин. Кроме того, несколько единиц масштабирования полезны для многих приложений, особенно тех, которым требуются другие наращиваемые компоненты, например несколько виртуальных сетей и конечных точек. Однако если приложению требуется один большой кластер, проще развернуть один масштабируемый набор, включающий до 1000 виртуальных машин. К примерам сценариев относятся централизованные развертывания больших данных или сетки вычислений, требующие простого управления крупным пулом рабочих узлов. В сочетании с подключенными дисками данных масштабируемого набора виртуальных машин большие масштабируемые наборы позволяют развертывать масштабируемую инфраструктуру, состоящую из тысяч виртуальных ЦП и петабайтов хранилища в виде одной операции.
Группы размещения
Главное в крупном масштабируемом наборе не число виртуальных машин, а число содержащихся в нем групп размещения. Группа размещения — это конструкция, подобная группе доступности Azure, с собственными доменами сбоя и доменами обновления. По умолчанию масштабируемый набор содержит одну группу размещения максимум со 100 виртуальными машинами. Если для свойства singlePlacementGroup масштабируемого набора задано значение false, масштабируемый набор может состоять из нескольких групп размещения и содержать от 0 до 1000 виртуальных машин. Если задано значение true (по умолчанию), масштабируемый набор состоит из одной группы размещения и может содержать от 0 до 100 виртуальных машин.
Контрольный список для использования крупных масштабируемых наборов
Чтобы определить, целесообразно ли использовать для приложения крупные масштабируемые наборы, рассмотрите следующие требования:
- Если вы планируете развернуть много виртуальных машин, может потребоваться увеличить квоту на виртуальные ЦП.
- Масштабируемые наборы, созданные из образов Azure Marketplace или образов коллекции вычислений Azure, могут масштабировать до 1000 виртуальных машин.
- Масштабируемые наборы, созданные на базе пользовательских образов (образов виртуальных машин, которые вы создаете и отправляете самостоятельно), сейчас можно масштабировать до 600 виртуальных машин.
- Крупные масштабируемые наборы необходимо создавать с управляемыми дисками Azure. В противном случае для них требуется несколько учетных записей хранения (по одной на каждые 20 виртуальных машин). Крупные масштабируемые наборы предназначены для работы исключительно с управляемыми дисками. Это позволяет снизить расходы на управление хранилищем и избежать риска достичь ограничений подписки для учетных записей хранения.
- Крупномасштабная (SPG=false) не поддерживает сеть InfiniBand
- Для масштабируемых наборов, состоящих из нескольких групп, размещения требуется балансировка нагрузки уровня 4 с помощью Azure Load Balancer с номером SKU "Стандартный". Подсистема балансировки нагрузки с номером SKU "Стандартный" обеспечивает дополнительные преимущества, включая возможность распределять нагрузку между несколькими масштабируемыми наборами. Для номера SKU "Стандартный" также необходимо, чтобы масштабируемый набор был связан с группой безопасности сети. В противном случае пулы NAT работают неправильно. Если вам необходимо использовать Azure Load Balancer с номером SKU "Базовый", масштабируемый набор должен быть настроен для использования одной группы размещения, что является настройкой по умолчанию.
- Балансировка нагрузки уровня 7 с использованием шлюза приложений Azure не поддерживается для всех масштабируемых наборов.
- Масштабируемый набор определяется с одной подсетью, поэтому она должна иметь достаточное адресное пространство для необходимого числа виртуальных машин. По умолчанию масштабируемый набор выполняет избыточную подготовку (создает дополнительные виртуальные машины, плата за которые не взимается, во время развертывания или при масштабировании) для повышения надежности и производительности развертывания. Настройте адресное пространство так, чтобы оно было на 20 % больше, чем количество виртуальных машин, которые планируете развернуть.
- Домены сбоя и домены обновления согласованы только в пределах группы размещения. Эта архитектура не влияет на общую доступность масштабируемого набора, потому что виртуальные машины равномерно распределяются между отдельным физическим оборудованием. Однако это означает, что, если необходимо гарантировать размещение двух виртуальных машин на разном оборудовании, они должны находиться в разных доменах сбоя в одной группе размещения. Перейдите по ссылке, чтобы узнать о параметрах доступности.
- Идентификатор домена сбоя и группы размещения можно просмотреть в представлении экземпляра виртуальной машины масштабируемого набора. Представление экземпляра виртуальной машины масштабируемого набора доступно в обозревателе ресурсов Azure.
Создание крупного масштабируемого набора
При создании масштабируемого набора на портале Azure просто укажите в поле Число экземпляров значение до 1000. Если это значение превышает 100 экземпляров, для параметра, включающего масштабирование свыше 100 экземпляров, будет присвоено значение Да. Это позволит выполнить масштабирование в нескольких группах размещения.
Вы можете создать большой масштабируемый набор виртуальных машин с помощью команды azure CLI az vmss create . Эта команда задает интеллектуальные значения по умолчанию, такие как размер подсети, на основе аргумента instance-count:
az group create -l southcentralus -n biginfra
az vmss create -g biginfra -n bigvmss --image Ubuntu2204 --instance-count 1000
Команда vmss create задаст определенные значения конфигурации по умолчанию, если их не указать. Чтобы узнать, какие параметры можно переопределить, используйте следующую команду:
az vmss create --help
Если для создания крупного масштабируемого набора используется шаблон Azure Resource Manager, он должен создавать масштабируемый набор на основе управляемых дисков Azure. Вы можете задать для свойства singlePlacementGroup значение false в разделе properties ресурса Microsoft.Compute/virtualMachineScaleSets. В следующем фрагменте JSON показано начало шаблона масштабируемого набора, включая параметры "capacity": 1000 и "singlePlacementGroup": false:
{
"type": "Microsoft.Compute/virtualMachineScaleSets",
"location": "australiaeast",
"name": "bigvmss",
"sku": {
"name": "Standard_DS1_v2",
"tier": "Standard",
"capacity": 1000
},
"properties": {
"singlePlacementGroup": false,
"upgradePolicy": {
"mode": "Automatic"
}
Полный пример шаблона крупного масштабируемого набора доступен по адресу https://github.com/gbowerman/azure-myriad/blob/main/bigtest/bigbottle.json.
Преобразование существующего масштабируемого набора для поддержки нескольких групп размещения
Чтобы сделать существующий масштабируемый набор виртуальных машин, способный масштабировать более 100 виртуальных машин, необходимо изменить свойство singlePlacementGroup на false в модели масштабируемого набора. Вы можете попробовать изменить это свойство в обозревателе ресурсов Azure. Найдите существующий масштабируемый набор, выберите Изменить и измените свойство singlePlacementGroup. Если вы не видите это свойство, возможно, вы открыли масштабируемый набор в более старой версии Microsoft.Compute API.
Примечание.
Масштабируемый набор с поддержкой одной группы размещения (по умолчанию) можно преобразовать в масштабируемый набор с поддержкой нескольких групп размещения, но не наоборот. Поэтому прежде чем выполнять преобразование, разберитесь со свойствами крупных масштабируемых наборов.