Visão geral do recurso Iniciar/Parar VMs v2
O recurso Iniciar/Parar VMs v2 inicia ou interrompe VMs (máquinas virtuais) do Azure em várias assinaturas. Ele inicia ou interrompe VMs do Azure conforme agendamentos definidos pelo usuário, fornece informações por meio do Azure Application Insights e envia notificações opcionais usando grupos de ações. Na 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 de Iniciar/Parar VMs v2 fornece uma opção descentralizada de automação de baixo custo para clientes que querem otimizar os custos de VM. Ele oferece todas as mesmas funcionalidades da versão original disponível com o Azure Automation, mas foi projetado para aproveitar as vantagens da tecnologia mais recente do Azure. O Start/Stop VMs v2 depende de vários serviços do Azure e será cobrado com base nos serviços implantados e consumidos.
Atualizações importantes de Iniciar/Parar VMs v2
Nenhum desenvolvimento, aprimoramentos ou atualizações adicionais estará disponível para o Start/Stop v2, exceto quando necessário para permanecer em versões com suporte de componentes e serviços do Azure.
As funções TriggerAutoUpdate e UpdateStartStopV2 foram preteridas e serão removidas no futuro. Para atualizar o Start/Stop v2, recomendamos que você interrompa o site, instale para a versão mais recente do nosso repositório GitHub e inicie o site. Para desabilitar a funcionalidade de atualização automática, defina a configuração do aplicativo AzureClientOptions:EnableAutoUpdate do Aplicativo de Funções como false. Nenhum sistema de notificação interno está disponível para atualizações. Depois que uma atualização do Start/Stop v2 estiver disponível, atualizaremos o readme.md no repositório do GitHub. Observadores de arquivos do GitHub de terceiros podem estar disponíveis para notificar você sobre as alterações.
Desde 19 de agosto de 2024, o Start/Stop v2 foi atualizado para o modelo de trabalho isolado do.NET 8.
Visão geral
Iniciar/parar VMs v2 é reprojetado e não depende de logs Automação do Azure ou Azure Monitor, conforme exigido pela versão anterior. Essa versão depende do Azure Functions para lidar com a execução de início e parada da VM.
Uma identidade gerenciada é criada no Microsoft Entra ID para este aplicativo do Azure Functions e permite que Iniciar/Parar VMs v2 acesse facilmente outros recursos protegidos pelo Microsoft Entra, como os aplicativos lógicos e as VMs do Azure. Para saber mais sobre identidades gerenciadas no Microsoft Entra ID, confira Identidades gerenciadas para recursos do Azure.
Uma ponto de extremidade da função de gatilho HTTP é criada para dar suporte aos cenários de agendamento e sequência incluídos com o recurso, conforme mostrado na tabela a seguir.
Nome | Gatilho | Descrição |
---|---|---|
Agendado | HTTP | Essa função é para cenário agendado e sequenciado (diferenciado pelo esquema de carga). É a função de ponto de entrada chamada do aplicativo lógico, e usa a carga para processar a operação de início ou de parada da VM. |
AutoStop | HTTP | Essa função dá suporte ao cenário AutoStop, que é a função de ponto de entrada chamada do Aplicativo Lógico. |
AutoStopVM | HTTP | Essa função é disparada automaticamente pelo alerta da VM quando a condição de alerta é verdadeira. |
VirtualMachineRequestOrchestrator | Fila | Essa função obtém as informações de conteúdo da função Agendada e orquestra as solicitações de início e parada da VM. |
VirtualMachineRequestExecutor | Fila | Essa função executa a operação de início e de parada real na VM. |
CreateAutoStopAlertExecutor | Fila | Essa função obtém as informações de conteúdo da função AutoStop para criar o alerta na VM. |
HeartBeatAvailabilityTest | Temporizador | Esta função monitora a disponibilidade das funções HTTP primárias. |
CostAnalyticsFunction | Temporizador | Essa função é usada pela Microsoft para estimar o custo agregado de Start/Stop V2 entre os clientes. Essa função não afeta a funcionalidade de Start/Stop V2. |
SavingsAnalyticsFunction | Temporizador | Essa função é usada pela Microsoft para estimar a economia agregada de Start/Stop V2 entre os clientes. Essa função não afeta a funcionalidade de Start/Stop V2. |
VirtualMachineSavingsFunction | Fila | Esta função executa o cálculo de economia real em uma VM obtida pela solução Iniciar/Parar V2. |
TriggerAutoUpdate | Temporizador | Preterido. Essa função inicia o processo de atualização automática com base na configuração do aplicativo "AzureClientOptions:EnableAutoUpdate=true". |
UpdateStartStopV2 | Fila | Preterido. Essa função realiza a execução de atualização automática real, que valida sua versão atual com a versão disponível e decide a ação final. |
Por exemplo, a função de gatilho HTTP Agendada é usada para lidar com cenários de agendamento e sequência. Da mesma forma, a função de gatilho HTTP Autostop manipula 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 para monitorar a integridade do sistema.
O aplicativo lógico do Azure é usado para configurar e gerenciar as agendas de início e de término para a VM executar a ação chamando a função usando uma carga JSON. 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 agendadas de início e parada são baseadas em um agendamento que você especifica em relação a Azure Resource Manager e VMs clássicas. ststv2_vms_Scheduled_start e ststv2_vms_Scheduled_stop configuram o início e a parada agendados.
Sequenciado - as ações de início e parada são baseadas em um agendamento que visa VMs com marcas de sequenciamento predefinidas. Somente duas marcas nomeadas têm suporte –
sequencestart
esequencestop
. ststv2_vms_Sequenced_start e ststv2_vms_Sequenced_stop configuram o início e a parada sequenciados.A maneira correta de usar a funcionalidade de sequência é criar uma marca chamada
sequencestart
em cada VM que você deseja iniciar em uma sequência. O valor da marca deve ser um número inteiro que varia de 1 a N para cada VM no respectivo escopo. A marca é opcional e, se não estiver presente, a VM simplesmente não participará do sequenciamento. Os mesmos critérios se aplicam para parar as VMs com apenas o nome da marca sendo diferente e usarsequencestop
nesse caso. Você precisa configurar ambas as marcas em cada VM para começar a ação de iniciar e parar. Se duas ou mais VMs compartilharem o mesmo valor da marca, essas VMs serão iniciadas ou interrompidas ao mesmo tempo.Por exemplo, a tabela a seguir mostra que as ações iniciar e parar são processadas em ordem crescente pelo valor da marca.
Observação
Esse cenário só dá suporte a VMs do Azure Resource Manager.
AutoStop - essa funcionalidade é usada apenas para executar uma ação de parada em relação às VMs do Azure Resource Manager e clássicas com base em sua utilização de CPU. Ela também pode ser uma ação de execução com base em agendamento, que cria alertas em VMs e com base na condição. O alerta é disparado para executar a ação de parada. ststv2_vms_AutoStop configura a funcionalidade de parada automática.
Cada ação iniciar/parar dá suporte à atribuição de uma ou mais assinaturas, grupos de recursos ou uma lista de VMs.
Uma conta de Armazenamento do Microsoft Azure, que é exigida pelas funções, também é usada por iniciar/parar VMs v2 para duas finalidades:
Usa o armazenamento de tabelas 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 a Azure Functions gatilhos baseados em fila.
Todos os dados de rastreamento da execução do aplicativo de funções são enviados para sua instância do Application Insights conectada. Você pode exibir os dados de telemetria armazenados no Application Insights de um conjunto de visualizações pré-definidas apresentadas em um painel compartilhado do Azure.
As notificações por email também são enviadas como resultado das ações executadas nas VMs.
Lançamentos
Quando uma nova versão de Iniciar/Parar VMs v2 é lançada, sua instância é atualizada automaticamente sem precisar reimplantar manualmente.
Opções de definição de scoping com suporte
Subscription
O scoping para uma assinatura pode ser usado quando você precisa executar a ação de iniciar e parar em todas as VMs em uma assinatura inteira e você pode selecionar várias assinaturas, se necessário.
Você também pode especificar uma lista de VMs a excluir e ela as ignorará da ação. Você também pode usar caracteres curinga para especificar todos os nomes que podem ser ignorados simultaneamente.
Grupo de recursos
O scoping 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 excluir e ela as ignorará da ação. Você também pode usar caracteres curinga para especificar todos os nomes que podem ser ignorados simultaneamente.
VMList
Especificar uma lista de VMs pode ser usada quando você precisa executar a ação de iniciar e parar em um conjunto específico de máquinas virtuais e em várias assinaturas. Essa opção não dá suporte à especificação de uma lista de VMs a excluir.
Pré-requisitos
Tenha uma conta do Azure com uma assinatura ativa. Crie uma conta gratuitamente.
Para implantar a solução, sua conta deve receber a permissão Proprietário na assinatura.
Iniciar/parar VMs v2 está disponível em todas as regiões de nuvem globais e do Governo dos EUA do Azure listadas na página Produtos disponíveis por região para Azure Functions.
Próximas etapas
Para implantar esse recurso, confira Implantar o recurso Iniciar/Parar VMs.