Visão geral de Iniciar/Parar VMs v2

O recurso Start/Stop VMs v2 inicia ou interrompe instâncias de Máquinas Virtuais do Azure em várias assinaturas. Ele inicia ou para máquinas virtuais em agendas definidas pelo usuário, fornece informações por meio do Azure Application Insights e envia notificações opcionais usando grupos de ações. Para a maioria dos cenários, as VMs Start/Stop podem gerenciar máquinas virtuais implantadas e gerenciadas pelo Azure Resource Manager e pelo Azure Service Manager (clássico), que foi preterido.

Esta nova versão do Start/Stop VMs v2 fornece uma opção de automação descentralizada de baixo custo para clientes que desejam otimizar seus custos de VM. Ele oferece a mesma funcionalidade da versão original disponível com a Automação do Azure, mas foi projetado para aproveitar a tecnologia mais recente do Azure. As VMs Start/Stop v2 dependem dos serviços mutiple do Azure e serão cobradas com base no serviço implantado e consumido.

Atualizações importantes de Start/Stop VMs v2

  • Atualizámos o nosso recurso de aplicação de função Start/Stop VMs v2 para utilizar o Azure Functions versão 4.x e obterá esta versão por predefinição quando instalar Start/Stop VMs v2 a partir do mercado. Os clientes existentes devem migrar do Functions versão 3.x para a versão 4.x usando nossa funcionalidade de atualização automática. Essa funcionalidade obtém a versão mais recente executando a função de temporizador TriggerAutoUpdate uma vez manualmente ou aguardando a execução do agendamento, se você a tiver habilitado.

  • Adicionámos um plano (AZ - Zona de Disponibilidade) à nossa solução Start/Stop VMs v2 para permitir uma oferta mais fiável. Agora você pode escolher entre os planos de Zona de Consumo e Disponibilidade antes de iniciar a implantação. Na maioria dos casos, o custo mensal do plano de Zona de Disponibilidade é maior quando comparado ao plano de Consumo.

  • A funcionalidade de atualização automática foi introduzida em 28 de abril de 2022. Esta nova funcionalidade de atualização automática ajuda-o a manter-se na versão mais recente da solução. Esse recurso é habilitado por padrão quando você executa uma nova instalação.
    Se você implantou sua solução antes dessa data, poderá reinstalar na versão mais recente a partir do nosso repositório GitHub

Descrição geral

As VMs Start/Stop v2 foram redesenhadas e não dependem da Automação do Azure ou dos Logs do Azure Monitor, conforme exigido pela versão anterior. Esta versão depende do Azure Functions para lidar com o início e a interrupção da execução da VM.

Uma identidade gerenciada é criada na ID do Microsoft Entra para este aplicativo do Azure Functions e permite que as VMs Start/Stop v2 acessem facilmente outros recursos protegidos pelo Microsoft Entra, como os aplicativos lógicos e as VMs do Azure. Para obter mais informações sobre identidades gerenciadas no Microsoft Entra ID, consulte Identidades gerenciadas para recursos do Azure.

Um ponto de extremidade de função de gatilho HTTP é criado para dar suporte aos cenários de agendamento e sequência incluídos no recurso, conforme mostrado na tabela a seguir.

Nome Acionar Descrição
Agendado HTTP Esta função é para cenários agendados e seqüenciados (diferenciados pelo esquema de carga útil). É a função de ponto de entrada chamada a partir do Logic App e leva a carga útil para processar a operação de início ou parada da VM.
Paragem automática HTTP Esta função suporta o cenário AutoStop , que é a função de ponto de entrada que é chamada de Logic App.
AutoStopVM HTTP Essa função é acionada automaticamente pelo alerta da VM quando a condição de alerta é verdadeira.
VirtualMachineRequestOrchestrator Fila Esta função obtém as informações de carga útil da função Scheduled e orquestra as solicitações de início e parada da VM.
VirtualMachineRequestExecutor Fila Esta função executa a operação real de início e parada na VM.
CreateAutoStopAlertExecutor Fila Esta função obtém as informações de carga útil da função AutoStop para criar o alerta na VM.
HeartBeatAvailabilityTest Temporizador Esta função monitoriza a disponibilidade das funções HTTP primárias.
Função CostAnalyticsFunction Temporizador Esta função é usada pela Microsoft para estimar o custo agregado do Start/Stop V2 entre os clientes. Esta função não afeta a funcionalidade do Start/Stop V2.
Função SavingsAnalyticsFunction Temporizador Esta função é utilizada pela Microsoft para estimar as poupanças agregadas de Start/Stop V2 entre os clientes. Esta função não afeta a funcionalidade do Start/Stop V2.
VirtualMachineSavingsFunction Fila Esta função executa o cálculo da economia real em uma VM alcançada pela solução Start/Stop V2.
TriggerAutoUpdate Temporizador Esta função inicia o processo de atualização automática com base na configuração do aplicativo "EnableAutoUpdate=true".
UpdateStartStopV2 Fila Esta função executa a execução real da atualização automática, que valida a sua versão atual com a versão disponível e decide a ação final.

Por exemplo, a função de gatilho HTTP agendado é usada para lidar com cenários de agendamento e sequência. Da mesma forma, a função de gatilho HTTP AutoStop lida com o cenário de parada automática.

As funções de gatilho baseadas em fila são necessárias para dar suporte a esse recurso. Todos os gatilhos baseados em temporizador são usados para executar o teste de disponibilidade e monitorar a integridade do sistema.

Os Aplicativos Lógicos do Azure são usados para configurar e gerenciar as agendas de início e parada para a ação de tomada de ação da VM chamando a função usando uma carga JSON útil. Por padrão, durante a implantação inicial, ele cria um total de cinco Aplicativos Lógicos para os seguintes cenários:

  • Agendado - As ações Start e Stop são baseadas em uma agenda especificada no Azure Resource Manager e nas VMs clássicas. ststv2_vms_Scheduled_start e ststv2_vms_Scheduled_stop configurar o início e a parada agendados.

  • Sequenciado - As ações Start e Stop são baseadas em um cronograma direcionado a VMs com tags de sequenciamento predefinidas. Apenas duas tags nomeadas são suportadas - sequencestart e sequencestop. ststv2_vms_Sequenced_start e ststv2_vms_Sequenced_stop configurar o início e a parada seqüenciados.

    A maneira correta de usar a funcionalidade de sequência é criar uma tag nomeada sequencestart em cada VM que você deseja que seja iniciada em uma sequência. O valor da tag precisa ser um número inteiro que varia de 1 a N para cada VM no respetivo escopo. A tag é opcional e, se não estiver presente, a VM simplesmente não participará do sequenciamento. Os mesmos critérios se aplicam a parar VMs com apenas o nome da tag sendo diferente e usar sequencestop nesse caso. Você precisa configurar ambas as tags em cada VM para iniciar e parar a ação. Se duas ou mais VMs compartilharem o mesmo valor de tag, essas VMs serão iniciadas ou interrompidas ao mesmo tempo.

    Por exemplo, a tabela a seguir mostra que as ações start e stop são processadas em ordem crescente pelo valor da tag.

    Table that shows sequence settings tag examples

    Nota

    Este cenário suporta apenas VMs do Azure Resource Manager.

  • AutoStop - Esta funcionalidade só é usada para executar uma ação stop no Azure Resource Manager e em VMs clássicas com base em sua utilização da CPU. Também pode ser uma ação de tomada baseada em agendamento, que cria alertas em VMs e, com base na condição, o alerta é acionado para executar a ação de parada. ststv2_vms_AutoStop configura a funcionalidade de parada automática.

Cada ação Iniciar/Parar suporta a atribuição de uma ou mais assinaturas, grupos de recursos ou uma lista de VMs.

Uma conta de Armazenamento do Azure, que é exigida pelo Functions, também é usada por Start/Stop VMs v2 para duas finalidades:

  • Usa o Armazenamento de Tabela do Azure para armazenar os metadados da operação de execução (ou seja, a ação iniciar/parar VM).

  • Usa o Armazenamento de Filas do Azure para dar suporte aos gatilhos baseados em fila do Azure Functions.

Todos os dados de log de rastreamento da execução do aplicativo de função são enviados para sua instância conectada do Application Insights. Você pode exibir os dados de telemetria armazenados no Application Insights a partir de um conjunto de visualizações predefinidas apresentadas em um painel compartilhado do Azure.

Start/Stop VMs shared status dashboard

As notificações por e-mail também são enviadas como resultado das ações executadas nas VMs.

Novos lançamentos

Quando uma nova versão do Start/Stop VMs v2 é lançada, sua instância é atualizada automaticamente sem precisar reimplantar manualmente.

Opções de escopo suportadas

Subscrição

O escopo para uma assinatura pode ser usado quando você precisa executar a ação de iniciar e parar em todas as VMs de uma assinatura inteira, e você pode selecionar várias assinaturas, se necessário.

Você também pode especificar uma lista de VMs a serem excluídas e ela as ignorará da ação. Você também pode usar caracteres curinga para especificar todos os nomes que simultaneamente podem ser ignorados.

Grupo de recursos

O escopo para um grupo de recursos pode ser usado quando você precisa executar a ação de iniciar e parar em todas as VMs, especificando um ou mais nomes de grupo de recursos e em uma ou mais assinaturas.

Você também pode especificar uma lista de VMs a serem excluídas e ela as ignorará da ação. Você também pode usar caracteres curinga para especificar todos os nomes que simultaneamente podem ser ignorados.

VMList

A especificação de uma lista de VMs pode ser usada quando você precisar executar a ação de iniciar e parar em um conjunto específico de máquinas virtuais e em várias assinaturas. Esta opção não suporta a especificação de uma lista de VMs a serem excluídas.

Pré-requisitos

Próximos passos

Para implantar esse recurso, consulte Implantar VMs Start/Stop.