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

Функция запуска и остановки виртуальных машин версии 2 запускает или останавливает экземпляры Azure Виртуальные машины в нескольких подписках. Она запускает или останавливает виртуальные машины в пользовательских расписаниях, предоставляет аналитические сведения через приложение Azure Аналитика и отправляет необязательные уведомления с помощью групп действий. В большинстве сценариев виртуальные машины запуска и остановки могут управлять виртуальными машинами, развернутыми и управляемыми как Azure Resource Manager, так и Azure Service Manager (классической), которая устарела.

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

Важные виртуальные машины запуска и остановки версии 2 Обновления

  • Мы обновили ресурс приложения-функции "Запуск и остановка виртуальных машин версии 2", чтобы использовать Функции Azure версии 4.x, и вы получите эту версию по умолчанию при установке виртуальных машин Start/Stop версии 2 из Marketplace. Существующие клиенты должны выполнить миграцию с Функций версии 3.x на версию 4.x с помощью функции автоматического обновления. Эта функция получает последнюю версию, выполнив функцию таймера TriggerAutoUpdate один раз вручную или дождившись выполнения расписания, если она включена.

  • Мы добавили план (AZ - зона доступности) в наше решение "Запуск и остановка виртуальных машин версии 2", чтобы обеспечить более надежное предложение. Теперь перед началом развертывания можно выбрать между планами потребления и планами зоны доступности. В большинстве случаев ежемесячная стоимость плана зоны доступности выше по сравнению с планом потребления.

  • Функция автоматического обновления появилась 28 апреля 2022 г. Она позволяет поддерживать актуальность версий вашего решения. Эта функция по умолчанию включается в процессе новой установки.
    Если вы развернули решение до этой даты, вы можете переустановить последнюю версию из нашего репозитория GitHub

Обзор

Функция запуска и остановки виртуальных машин версии 2 переработана и не зависит от службы автоматизации Azure или журналов Azure Monitor, как предыдущая версия. Эта версия использует Функции Azure для обработки запуска и остановки выполнения виртуальной машины.

Управляемое удостоверение создается в идентификаторе Microsoft Entra для этого приложения Функции Azure и позволяет запускать и останавливать виртуальные машины версии 2 для легкого доступа к другим защищенным ресурсам Microsoft Entra, таким как приложения логики и виртуальные машины Azure. Дополнительные сведения об управляемых удостоверениях в идентификаторе Microsoft Entra см. в разделе "Управляемые удостоверения" для ресурсов Azure.

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

Имя Триггер Description
Запланированные HTTP Эта функция предназначена для запланированного и последовательного сценария (отличающегося схемой полезных данных). Это функция точки входа, вызванная из приложения логики, и принимает полезные данные для обработки операции запуска или остановки виртуальной машины.
AutoStop HTTP Эта функция поддерживает сценарий AutoStop, который является функцией точки входа, которая вызывается из приложения логики.
AutoStopVM HTTP Эта функция активируется автоматически оповещением виртуальной машины, если выполняется условие оповещения.
VirtualMachineRequestOrchestrator Очередь Эта функция получает сведения о полезных данных из функции Scheduled и управляет запросами на запуск и остановку виртуальных машин.
VirtualMachineRequestExecutor Очередь Эта функция выполняет фактическую операцию запуска и остановки на виртуальной машине.
CreateAutoStopAlertExecutor Очередь Эта функция получает сведения о полезной нагрузке из функции AutoStop для создания оповещения на виртуальной машине.
HeartBeatAvailabilityTest Таймер Эта функция отслеживает доступность основных функций HTTP.
CostAnalyticsFunction Таймер Эта функция используется корпорацией Майкрософт для оценки совокупной стоимости запуска и остановки версии 2 для клиентов. Эта функция не влияет на функциональные возможности Start/Stop версии 2.
SavingsAnalyticsFunction Таймер Эта функция используется корпорацией Майкрософт для оценки совокупной экономии начальной и стоп-версии 2 для клиентов. Эта функция не влияет на функциональные возможности Start/Stop версии 2.
VirtualMachineSavingsFunction Очередь Эта функция выполняет фактическое вычисление экономии для виртуальной машины, достигнутой за счет решения запуска и завершения V2.
TriggerAutoUpdate Таймер Эта функция запускает процесс автоматического обновления на основе параметра приложения EnableAutoUpdate=true.
UpdateStartStopV2 Очередь Эта функция фактически запускает на выполнение процедуру автоматического обновления, которая сравнивает текущую версию с доступной и принимает окончательное решение.

Например, для управления сценариями планирования и последовательности используется функция для триггеров HTTP Scheduled. Аналогично, функция для триггеров AutoStop обрабатывает сценарий автоматической остановки.

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

Azure Logic Apps используется для настройки и управления расписаниями запуска и остановки для виртуальной машины путем вызова функции с помощью полезных данных JSON. По умолчанию во время первоначального развертывания создается пять приложений логики для следующих сценариев:

  • Запланировано: действия запуска и отмены основаны на заданном вами расписании для Azure Resource Manager и классических виртуальных машин. ststv2_vms_Scheduled_start и ststv2_vms_Scheduled_stop настраивают запланированное время запуска и остановки.

  • Последовательно — действия запуска и останова основываются на расписании целевых виртуальных машин с предварительно определенными тегами последовательностей. Поддерживаются только два именованных тега — sequencestart и sequencestop. ststv2_vms_Sequenced_start и ststv2_vms_Sequenced_stop настраивают запуск и останов в последовательности.

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

    Например, в следующей таблице показано, что действия запуска и остановки обрабатываются в порядке возрастания по значению тега.

    Table that shows sequence settings tag examples

    Примечание.

    Этот сценарий поддерживает только виртуальные машины Azure Resource Manager.

  • AutoStop — эта функция используется только для выполнения действия останова для виртуальных машин Azure Resource Manager и классических виртуальных машин в зависимости от использования ЦП. Она также может быть запланированным действием, которое создает оповещения на виртуальных машинах, и, в зависимости от условия, оповещение срабатывает для выполнения действия остановки. ststv2_vms_AutoStop настраивает функцию автоматической остановки.

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

Учетная запись службы хранилища Azure, которая необходима для функций, также используется для запуска и остановки виртуальных машин версии 2 в двух целях:

  • Использует Хранилище таблиц Azure для хранения метаданных операции выполнения (то есть действия запуска и остановки виртуальной машины).

  • Использует Хранилище очередей Azure для поддержки триггеров на основе очереди в Функциях Azure.

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

Start/Stop VMs shared status dashboard

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

Новые выпуски

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

Поддерживаемые параметры области

Подписка

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

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

Группа ресурсов

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

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

VMList

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

Необходимые компоненты

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

Чтобы повторно включить эту функцию, прочитайте статью Развертывание функции запуска и остановки виртуальных машин.