Поделиться через


Виртуальные машины Azure Spot

Применимо к: ✔️ Виртуальные машины Linux ✔️ Виртуальные машины Windows ✔️ Гибкие масштабируемые наборы ✔️ Унифицированные масштабируемые наборы

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

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

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

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

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

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

Если вы хотите, чтобы ваша виртуальная машина удалялась при вытеснении, настройте политику вытеснения на Удалить. Вытесненные виртуальные машины удаляются вместе с их базовыми дисками, и поэтому вы не будете платить за хранение.

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

Вариант Результат
Максимальная цена устанавливается на >, что равно текущей цене. Виртуальная машина будет развернута, пока есть доступная емкость и не превышена квота.
Максимальная цена установлена на <, равная текущей цене. Виртуальная машина не будет развернута. Вы получите сообщение об ошибке с информацией о том, что максимальная цена должна быть не ниже текущей цены.
Перезапуск остановленной или освобожденной виртуальной машины, если максимальная цена >= текущей цены. Если есть доступная емкость и не превышена квота, виртуальная машина будет развернута.
Перезапуск остановленной или разосвобожденной виртуальной машины, если максимальная цена < текущей цены. Вы получите сообщение об ошибке с информацией о том, что максимальная цена должна быть ≤ текущей цены.
Цена на виртуальную машину выросла и теперь > является максимальной ценой. Виртуальная машина выселяется. Azure попытается осуществить запланированную доставку событий за 30 секунд до фактического вытеснения.
После вытеснения цена на виртуальную машину возвращается к < максимальной цене. Виртуальная машина не будет автоматически перезапущена. Вы можете запустить виртуальную машину вручную, и она будет оплачиваться по текущей цене.
Если установлена максимальная цена -1 Виртуальная машина не будет вытесняться по критерию цены. Максимальной ценой всегда будет считаться текущая цена, вплоть до уровня стандартной цены на виртуальные машины. Цена никогда не будет превышать стандартную цену.
Изменение максимальной цены Чтобы изменить максимальную цену, необходимо освободить ресурсы виртуальной машины. Освободите ресурсы виртуальной машины, установите новую максимальную цену, а затем обновите её.

Совет

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

Ограничения

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

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

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

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

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

Цены

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

Вы также можете запросить сведения о ценах на Spot с помощью API розничных цен Azure. Обе переменные meterName и skuName будут содержать Spot.

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

История цен и выселений

Портал

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

Совет

Тарифы на выдворение указываются в час. Например, коэффициент вытеснения 10% означает, что вероятность вытеснения виртуальной машины в течение следующего часа составляет 10%, на основе данных о вытеснениях за последние 7 дней.

Диаграмма

Снимок экрана: параметры региона с разницей в ценах и частотах вытеснения в виде диаграммы.

Таблица:

Снимок экрана с параметрами региона, где различия в ценах и уровнях вытеснения представлены в таблице.

Граф ресурсов Azure

Вы можете с помощью программных средств получить доступ к соответствующим данным об SKU Точечной виртуальной машины, используя Azure Resource Graph. Получите историю цен за последние 90 дней и частоту удаления за последние 28 дней, чтобы выявить SKU, которые лучше соответствуют вашим конкретным требованиям.

Основные преимущества:

  • запрос данных о частоте вытеснения точечных виртуальных машин и ценах на эти виртуальные машины с помощью программных средств (ARM или обозревателя ARG на портале Azure); 
  • Создайте пользовательский запрос для извлечения определенных данных, относящихся к вашему сценарию, с возможностью фильтрации по различным параметрам, таким как SKU и регион
  • Простое сравнение данных между несколькими регионами и номерами SKU
  • Найдите другой номер Spot SKU или регион с более низкой ценой и/или уровнем вытеснения

Попробуйте следующие примеры запросов для истории цен точечного ценообразования и коэффициентов вытеснения, используя обозреватель ARG в портале Azure. Данные истории цен на спотовые виртуальные машины и частоты выселения доступны в таблице SpotResources. 

Пример запроса истории спотового ценообразования:

SpotResources 
| where type =~ 'microsoft.compute/skuspotpricehistory/ostype/location' 
| where sku.name in~ ('standard_d2s_v4', 'standard_d4s_v4') 
| where properties.osType =~ 'linux' 
| where location in~ ('eastus', 'southcentralus') 
| project skuName = tostring(sku.name), osType = tostring(properties.osType), location, latestSpotPriceUSD = todouble(properties.spotPrices[0].priceUSD) 
| order by latestSpotPriceUSD asc 

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

SpotResources 
| where type =~ 'microsoft.compute/skuspotevictionrate/location' 
| where sku.name in~ ('standard_d2s_v4', 'standard_d4s_v4') 
| where location in~ ('eastus', 'southcentralus') 
| project skuName = tostring(sku.name), location, spotEvictionRate = tostring(properties.evictionRate) 
| order by skuName asc, location asc

Кроме того, попробуйте получить данные журнала цен и частоты вытеснения с помощью REST API ARG.

Часто задаваемые вопросы

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

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

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

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

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

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

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

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

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

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

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

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

Q: Можно ли преобразовать существующие виртуальные машины в точечные виртуальные машины?

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

Q: Можно ли преобразовать точечные виртуальные машины в стандартные виртуальные машины?

A: Нет, не удается напрямую преобразовать точечные виртуальные машины в стандартные виртуальные машины.

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

Используйте интерфейс командной строки, портал, шаблон ARM или PowerShell для развертывания точечных виртуальных машин Azure.

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

Если при выполнении возникнут ошибки, изучите статью Коды ошибок.