Azure Spot Виртуальные машины для Масштабируемые наборы виртуальных машин

Использование Точечных виртуальных машин Azure в масштабируемых наборах позволяет применить неиспользуемую емкость наших ресурсов со значительной экономией. В любой момент времени, когда Azure нуждается в емкости, инфраструктура Azure вытесняет экземпляры точечных виртуальных машин Azure. Это означает, что точечные экземпляры виртуальных машин Azure прекрасно подходят для рабочих нагрузок, для которых допустимы прерывания, например, для заданий пакетной обработки, сред разработки или тестирования, больших вычислительных рабочих нагрузок и т. п.

Объем доступной емкости может варьироваться в зависимости от размера, региона, времени суток и других параметров. При развертывании экземпляров точечных виртуальных машин Azure в масштабируемых наборах Azure выделяет экземпляр только в том случае, если доступной емкостью, но для этих экземпляров нет соглашение об уровне обслуживания. Масштабируемый набор виртуальных машин Azure развертывается в одном домене сбоя и не обеспечивает высокий уровень доступности.

Ограничения

Приведенные ниже размеры не поддерживаются для Точечных виртуальных машин Azure:

  • серия B;
  • Рекламные версии любого размера (например, рекламные размеры Dv2, NV, NC и H)

Точечные виртуальные машины Azure можно развернуть в любом регионе, кроме Microsoft Azure, работающей в 21Vianet.

В настоящее время поддерживаются следующие типы предложений:

  • Соглашение Enterprise
  • Код предложения с оплатой по мере использования (003P)
  • Спонсируемый (0036P и 0136P)
  • Для поставщика облачных служб (CSP) обратитесь к Центру партнеров или обратитесь непосредственно к своему партнеру.

Цены

Цены на точечные экземпляры виртуальных машин Azure могут различаться в зависимости от региона и ценовой категории. Дополнительные сведения см. на страницах с информацией о ценах на виртуальные машины Linux и Windows.

Переменное ценообразование позволяет вам задать максимальную цену в долларах США (USD) с точностью до 5 знаков после запятой. Например, значение 0.98765 определяет максимальную цену 0,98765 долларов США в час. Если вы укажете для максимальной цены значение -1, экземпляр не будет вытесняться по критерию цены. Цена для экземпляра будет текущей ценой на точечные виртуальные машины Azure или ценой для стандартного экземпляра, который когда-либо меньше, если есть емкость и квота доступны.

Политика вытеснения

При создании масштабируемого набора с Точечными виртуальными машинами Azure, в качестве политики вытеснения можно задать Отменить распределение (по умолчанию) или Удалить.

Политика Отменить распределение переводит вытесненные экземпляры в остановленное состояние (отменяет распределение), что позволяет повторно развернуть вытесненные экземпляры. Однако нет гарантии, что распределение будет выполнено успешно. Освобожденные виртуальные машины учитывают квоту экземпляра масштабируемого набора и взимается плата за базовые диски.

Если вы хотите, чтобы ваши экземпляры были удалены при их вытеснении, можно настроить для политики вытеснения действие Удалить. Если установлена политика вытеснения с действием удаления, то можно создавать новые виртуальные машины, увеличивая свойство количества экземпляров масштабируемого набора. Вытесненные виртуальные машины удаляются вместе со своими базовыми дисками, поэтому плата за хранилище не взимается. Вы также можете использовать функцию автомасштабирования масштабируемых наборов для автоматической попытки и компенсации вытеснения виртуальных машин, однако нет никаких гарантий успешного выделения. Рекомендуется использовать только функцию автомасштабирования в azure Spot Масштабируемые наборы виртуальных машин при установке политики вытеснения, чтобы избежать затрат на диски и ограничения квоты.

Пользователи могут согласиться получать уведомления в ВМ через механизм Запланированных событий Azure. Это уведомляет вас, если виртуальные машины вытесняются, и у вас есть 30 секунд для завершения любых заданий и выполнения задач завершения работы до вытеснения.

Журнал вытеснений

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

Диаграмма

Screenshot of the region options with the difference in pricing and eviction rates as a chart.

Table.

Screenshot of the region options with the difference in pricing and eviction rates as a table.

Попробуйте и восстановить

Эта функция уровня платформы использует ИИ для автоматического восстановления вытесненных экземпляров виртуальных машин Azure в масштабируемом наборе для поддержания количества целевых экземпляров.

Попробовать и восстановить — преимущества функции:

  • Попытка восстановить Точечные виртуальные машины Azure, исключенные по критерию емкости.
  • Ожидается, что восстановленные Точечные виртуальные машины Azure будут выполняться дольше с более низкой вероятностью вытеснения по критерию емкости.
  • Увеличивается время существования точечной виртуальной машины Azure, поэтому рабочие нагрузки выполняются дольше.
  • Помогает Масштабируемым наборам виртуальных машин поддерживать целевое количество Точечных виртуальных машин Azure аналогично функции поддержания количества целевых ВМ, которая уже существует для ВМ с оплатой по мере использования.

"Попробовать и восстановить" отключена в масштабируемых наборах, использующих Автомасштабирование. Количество ВМ в масштабируемом наборе определяется правилами автомасштабирования.

Группы размещения

Группа размещения — это конструкция, подобная группе доступности Azure, с собственными доменами сбоя и доменами обновления. По умолчанию масштабируемый набор содержит одну группу размещения максимум со 100 виртуальными машинами. Если для свойства singlePlacementGroup масштабируемого набора задано значение false, масштабируемый набор может состоять из нескольких групп размещения и содержать от 0 до 1000 ВМ.

Важно!

Если вы не используете InfiniBand с HPC, настоятельно рекомендуется установить свойство масштабируемого набора singlePlacementGroup в значение false, чтобы включить несколько групп размещения для более эффективного масштабирования по регионам или зонам.

Развертывание Точечных виртуальных машин Azure в масштабируемых наборах

Чтобы развернуть Точечные виртуальные машины Azure в масштабируемых наборах, можно установить для нового флага Priority значение Spot. Все виртуальные машины в масштабируемом наборе будут настроены как точечные. Чтобы создать масштабируемый набор с Точечными виртуальными машинами Azure, используйте один из следующих способов:

Портал

Процесс создания масштабируемого набора с Точечными виртуальными машинами Azure такой же, как описано в статье о начале работы. При развертывании масштабируемого набора можно задать флаг спотов, тип вытеснения, политику вытеснения и при попытке восстановить экземпляры: Create a scale set with Azure Spot Virtual Machines

Azure CLI

Важно!

Начиная с ноября 2023 года масштабируемые наборы виртуальных машин, созданные с помощью PowerShell и Azure CLI, по умолчанию будут использоваться в режиме гибкой оркестрации, если режим оркестрации не указан. Дополнительные сведения об этом изменении и о действиях, которые необходимо предпринять, см. в руководстве по критическим изменениям для клиентов VmSS PowerShell/CLI — Microsoft Community Hub

Процесс создания масштабируемого набора с Точечными виртуальными машинами Azure такой же, как описано в статье о начале работы. Просто добавьте '--Priority Spot' и --max-price. В этом примере мы используем -1 для --max-price, чтобы экземпляр не был исключен по критерию цены.

az vmss create \
    --resource-group myResourceGroup \
    --name myScaleSet \
    --image Ubuntu2204 \
    --orchestration-mode Flexible \
    --single-placement-group false \
    --admin-username azureuser \
    --generate-ssh-keys \
    --priority Spot \
    --eviction-policy Deallocate \
    --max-price -1 \
    --enable-spot-restore True \
    --spot-restore-timeout PT1H

PowerShell

Важно!

Начиная с ноября 2023 года масштабируемые наборы виртуальных машин, созданные с помощью PowerShell и Azure CLI, по умолчанию будут использоваться в режиме гибкой оркестрации, если режим оркестрации не указан. Дополнительные сведения об этом изменении и о действиях, которые необходимо предпринять, см. в руководстве по критическим изменениям для клиентов VmSS PowerShell/CLI — Microsoft Community Hub

Процесс создания масштабируемого набора с Точечными виртуальными машинами Azure такой же, как описано в статье о начале работы. Просто добавьте Priority Spot' и передайте -max-price в New-AzVmssConfig.

$vmssConfig = New-AzVmssConfig `
    -Location "East US 2" `
    -SkuCapacity 2 `
    -OrchestrationMode "Flexible" `
    -SkuName "Standard_DS2" `
    -Priority "Spot" `
    -max-price -1 `
    -EnableSpotRestore `
    -SpotRestoreTimeout 60 `
    -EvictionPolicy delete

Шаблоны Resource Manager

Процесс создания масштабируемого набора с Точечными виртуальными машинами Azure такой же, как описано в статье о начале работы для Linux или Windows.

Для развертываний шаблона точечной виртуальной машины Azure выберите "apiVersion": "2019-03-01" или более поздней версии.

Добавьте свойства priority, evictionPolicy, billingProfile и spotRestoryPolicy в раздел "virtualMachineProfile":, а свойство "singlePlacementGroup": false, — в раздел "Microsoft.Compute/virtualMachineScaleSets" вашего шаблона:


{
  "type": "Microsoft.Compute/virtualMachineScaleSets",
  },
  "properties": {
    "singlePlacementGroup": false,
    }

        "virtualMachineProfile": {
              "priority": "Spot",
                "evictionPolicy": "Deallocate",
                "billingProfile": {
                    "maxPrice": -1
                },
                "spotRestorePolicy": {
                  "enabled": "bool",
                  "restoreTimeout": "string"
    },
            },

Чтобы удалить экземпляр после его вытеснения, измените значение параметра evictionPolicy на Delete.

Имитация вытеснения

Вы можете имитировать вытеснение виртуальной машины Azure, чтобы проверить, насколько хорошо ваше приложение реагирует на внезапное вытеснение.

Замените следующие данные реальными значениями:

  • subscriptionId
  • resourceGroupName
  • vmName
POST https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachines/{vmName}/simulateEviction?api-version=2020-06-01

Response Code: 204 означает, что имитация вытеснения прошла успешно.

Дополнительные сведения см. в разделе Проверка уведомлений при имитации вытеснения.

Вопросы и ответы

Вопрос. После создания экземпляр точечной виртуальной машины Azure аналогичен стандартному экземпляру?

Ответ. Да, за исключением того, что для точечных виртуальных машин Azure не предоставляется соглашение об уровне обслуживания и они могут быть вытеснены в любое время.

Вопрос. Что делать, если вытеснена виртуальная машина, а емкость по-прежнему нужна?

Ответ. Если емкость вам нужна без промедлений, используйте стандартные виртуальные машины вместо Точечных виртуальных машин Azure.

Вопрос. Как управляются квоты для Точечных виртуальных машин Azure?

Ответ. Экземпляры виртуальных машин Azure и стандартные экземпляры имеют отдельные пулы квот. Квота точечных виртуальных машин Azure совместно используется между виртуальными машинами и экземплярами масштабируемого набора. Дополнительные сведения см. в статье Подписка Azure, границы, квоты и ограничения службы.

Вопрос. Можно ли запросить дополнительную квоту для точечной виртуальной машины Azure?

Ответ. Да, вы можете отправить запрос, чтобы увеличить квоту для Azure Spot Виртуальные машины через стандартный процесс запроса квоты.

Вопрос. Можно ли преобразовать существующие масштабируемые наборы в Масштабируемые наборы виртуальных машин Azure Spot?

Ответ. Нет, установить флаг Spot можно только во время создания.

Вопрос. Если использовался low для масштабируемых наборов с низким приоритетом, нужно начать использовать Spot вместо этого?

Ответ. В настоящее время будут работать low и Spot, но следует начать переход на использование Spot.

Вопрос. Можно ли создать масштабируемый набор с обычными ВМ и Точечными виртуальными машинами Azure?

Ответ. Нет, масштабируемый набор не поддерживает более одного типа приоритета.

Вопрос. Можно ли использовать автомасштабирование с Масштабируемые наборы виртуальных машин Azure Spot?

Ответ. Да, вы можете задать правила автомасштабирования в масштабируемом наборе виртуальных машин Azure. Если ВМ вытеснены, автомасштабирование может попытаться создать новые Точечные виртуальные машины Azure. Однако помните, что получение этой емкости не гарантируется.

Вопрос. Учитываются ли при автомасштабировании обе политики вытеснения (отмена распределения и удаление)?

Ответ. При использовании автомасштабирования рекомендуется установить для политики вытеснения действие удаления. Причина этого состоит в том, что экземпляры, распределение которых отменено, учитываются в емкости масштабируемого набора. При использовании автомасштабирования, скорее всего, вы быстро достигнете целевого количества из-за вытесненных экземпляров, распределение которых отменено. Кроме того, операции масштабирования могут повлиять на выполнение точечных вытеснений. Например, экземпляры масштабируемого набора виртуальных машин могут быть ниже заданного минимального количества из-за нескольких точечных вытеснений во время операций масштабирования.

Вопрос. Где можно задать вопрос?

Ответ. Вы можете опубликовать и пометить свой вопрос с azure-spot помощью Q&A.

Следующие шаги

Ознакомьтесь со страницей цен на масштабируемый набор виртуальных машин для получения сведений о ценах.