Översikt över Starta/stoppa virtuella datorer v2
Funktionen Starta/stoppa virtuella datorer v2 startar eller stoppar Azure Virtual Machines-instanser i flera prenumerationer. Den startar eller stoppar virtuella datorer enligt användardefinierade scheman, ger insikter via Azure Application Insights och skickar valfria meddelanden med hjälp av åtgärdsgrupper. I de flesta scenarier kan virtuella start-/stoppdatorer hantera virtuella datorer som distribueras och hanteras både av Azure Resource Manager och Azure Service Manager (klassiskt), vilket är inaktuellt.
Den här nya versionen av Start/Stop VMs v2 tillhandahåller ett decentraliserat automatiseringsalternativ med låg kostnad för kunder som vill optimera sina vm-kostnader. Den erbjuder samma funktioner som den ursprungliga versionen som var tillgänglig med Azure Automation, men den är utformad för att dra nytta av nyare teknik i Azure. De virtuella start-/stoppdatorerna v2 förlitar sig på flera Azure-tjänster och debiteras baserat på de tjänster som distribueras och används.
Viktiga uppdateringar för start/stopp av virtuella datorer v2
Ingen ytterligare utveckling, förbättringar eller uppdateringar är tillgängliga för Start/Stop v2 förutom när det krävs för att finnas kvar på versioner av komponenter och Azure-tjänster som stöds.
Funktionerna TriggerAutoUpdate och UpdateStartStopV2 är nu inaktuella och tas bort i framtiden. Om du vill uppdatera Start/Stop v2 rekommenderar vi att du stoppar webbplatsen, installerar till den senaste versionen från vår GitHub-lagringsplats och sedan startar webbplatsen. Om du vill inaktivera funktionen för automatisk uppdatering anger du inställningen För funktionsappens AzureClientOptions:EnableAutoUpdate-program till false. Det finns inget inbyggt meddelandesystem för uppdateringar. När en uppdatering av Start/Stop v2 blir tillgänglig uppdaterar vi readme.md på GitHub-lagringsplatsen. GitHub-filbevakare från tredje part kan vara tillgängliga för att meddela dig om ändringar.
Från och med den 19 augusti 2024 har Start/Stop v2 uppdaterats till den isolerade arbetsmodellen .NET 8.
Översikt
Starta/stoppa virtuella datorer v2 är omdesignat och det beror inte på Azure Automation- eller Azure Monitor-loggar, vilket krävs av den tidigare versionen. Den här versionen förlitar sig på Azure Functions för att hantera start- och stoppkörningen av den virtuella datorn.
En hanterad identitet skapas i Microsoft Entra-ID för det här Azure Functions-programmet och gör det möjligt för Start/Stop VMs v2 att enkelt komma åt andra Microsoft Entra-skyddade resurser, till exempel logikappar och virtuella Azure-datorer. Mer information om hanterade identiteter i Microsoft Entra-ID finns i Hanterade identiteter för Azure-resurser.
En HTTP-utlösarfunktionsslutpunkt skapas för att stödja schema- och sekvensscenarier som ingår i funktionen, enligt följande tabell.
Name | Utlösare | beskrivning |
---|---|---|
Har schemalagts | HTTP | Den här funktionen är för både schemalagt och sekvenserat scenario (differentierat efter nyttolastschemat). Det är startpunktsfunktionen som anropas från logikappen och tar nyttolasten för att bearbeta den virtuella datorns start- eller stoppåtgärd. |
AutoStop | HTTP | Den här funktionen stöder AutoStop-scenariot , som är startpunktsfunktionen som anropas från logikappen. |
AutoStopVM | HTTP | Den här funktionen utlöses automatiskt av VM-aviseringen när aviseringsvillkoret är sant. |
VirtualMachineRequestOrchestrator | Queue | Den här funktionen hämtar nyttolastinformationen från funktionen Schemalagd och samordnar start- och stoppbegäranden för den virtuella datorn. |
VirtualMachineRequestExecutor | Queue | Den här funktionen utför den faktiska start- och stoppåtgärden på den virtuella datorn. |
CreateAutoStopAlertExecutor | Queue | Den här funktionen hämtar nyttolastinformationen från funktionen AutoStop för att skapa aviseringen på den virtuella datorn. |
HeartBeatAvailabilityTest | Timer | Den här funktionen övervakar tillgängligheten för de primära HTTP-funktionerna. |
CostAnalyticsFunction | Timer | Den här funktionen används av Microsoft för att beräkna den sammanlagda kostnaden för Start/Stop V2 mellan kunder. Den här funktionen påverkar inte funktionerna i Start/Stop V2. |
SavingsAnalyticsFunction | Timer | Den här funktionen används av Microsoft för att beräkna aggregerade besparingar av Start/Stop V2 mellan kunder. Den här funktionen påverkar inte funktionerna i Start/Stop V2. |
VirtualMachineSavingsFunction | Queue | Den här funktionen utför den faktiska besparingsberäkningen på en virtuell dator som uppnås av lösningen Start/Stop V2. |
TriggerAutoUpdate | Timer | Inaktuell. Den här funktionen startar den automatiska uppdateringsprocessen baserat på programinställningen "AzureClientOptions:EnableAutoUpdate=true". |
UpdateStartStopV2 | Queue | Inaktuell. Den här funktionen utför den faktiska körningen av automatisk uppdatering, som verifierar din aktuella version med den tillgängliga versionen och bestämmer den slutliga åtgärden. |
Till exempel används funktionen Schemalagd HTTP-utlösare för att hantera schema- och sekvensscenarier. På samma sätt hanterar funktionen AutoStop HTTP-utlösare scenariot för automatisk stopp.
De köbaserade utlösarfunktionerna krävs till stöd för den här funktionen. Alla timerbaserade utlösare används för att utföra tillgänglighetstestet och för att övervaka systemets hälsotillstånd.
Azure Logic Apps används för att konfigurera och hantera start- och stoppscheman för den virtuella datorn genom att anropa funktionen med hjälp av en JSON-nyttolast. Under den första distributionen skapar den som standard totalt fem Logic Apps för följande scenarier:
Schemalagd – Start- och stoppåtgärder baseras på ett schema som du anger mot Azure Resource Manager och klassiska virtuella datorer. ststv2_vms_Scheduled_start och ststv2_vms_Scheduled_stop konfigurera schemalagd start och stopp.
Sekvenserat – Start- och stoppåtgärder baseras på ett schema som riktar sig till virtuella datorer med fördefinierade sekvenseringstaggar. Endast två namngivna taggar stöds –
sequencestart
ochsequencestop
. ststv2_vms_Sequenced_start och ststv2_vms_Sequenced_stop konfigurera den sekvenserade start och stopp.Det rätta sättet att använda sekvensfunktionen är att skapa en tagg med namnet
sequencestart
på varje virtuell dator som du vill ska startas i en sekvens. Taggvärdet måste vara ett heltal mellan 1 och N för varje virtuell dator i respektive omfång. Taggen är valfri och om den inte finns kommer den virtuella datorn helt enkelt inte att delta i sekvenseringen. Samma villkor gäller för att stoppa virtuella datorer där endast taggnamnet är annorlunda och användssequencestop
i det här fallet. Du måste konfigurera båda taggarna i varje virtuell dator för att få start- och stoppåtgärd. Om två eller flera virtuella datorer delar samma taggvärde startas eller stoppas de virtuella datorerna samtidigt.I följande tabell visas till exempel att både start- och stoppåtgärder bearbetas i stigande ordning efter taggens värde.
Kommentar
Det här scenariot stöder endast virtuella Azure Resource Manager-datorer.
AutoStop – Den här funktionen används endast för att utföra en stoppåtgärd mot både Azure Resource Manager och klassiska virtuella datorer baserat på processoranvändningen. Det kan också vara en schemalagd åtgärd som skapar aviseringar på virtuella datorer och baserat på villkoret utlöses aviseringen för att utföra stoppåtgärden. ststv2_vms_AutoStop konfigurerar funktionen för automatisk stopp.
Varje start-/stoppåtgärd stöder tilldelning av en eller flera prenumerationer, resursgrupper eller en lista över virtuella datorer.
Ett Azure Storage-konto, som krävs av Functions, används också av Start/Stop VMs v2 för två syften:
Använder Azure Table Storage för att lagra körningsåtgärdens metadata (det vill: åtgärden starta/stoppa virtuell dator).
Använder Azure Queue Storage för att stödja köbaserade utlösare i Azure Functions.
Alla spårningsloggningsdata från funktionsappens körning skickas till din anslutna Application Insights-instans. Du kan visa telemetridata som lagras i Application Insights från en uppsättning fördefinierade visualiseringar som visas på en delad Azure-instrumentpanel.
E-postmeddelanden skickas också som ett resultat av de åtgärder som utförs på de virtuella datorerna.
Nya versioner
När en ny version av Starta/stoppa virtuella datorer v2 släpps uppdateras din instans automatiskt utan att behöva distribueras om manuellt.
Omfångsalternativ som stöds
Prenumeration
Omfång för en prenumeration kan användas när du behöver utföra start- och stoppåtgärden på alla virtuella datorer i en hel prenumeration, och du kan välja flera prenumerationer om det behövs.
Du kan också ange en lista över virtuella datorer som ska undantas och ignorera dem från åtgärden. Du kan också använda jokertecken för att ange alla namn som kan ignoreras samtidigt.
Resursgrupp
Omfång för en resursgrupp kan användas när du behöver utföra start- och stoppåtgärden på alla virtuella datorer genom att ange ett eller flera resursgruppsnamn och i en eller flera prenumerationer.
Du kan också ange en lista över virtuella datorer som ska undantas och ignorera dem från åtgärden. Du kan också använda jokertecken för att ange alla namn som kan ignoreras samtidigt.
VMList
Du kan ange en lista över virtuella datorer när du behöver utföra start- och stoppåtgärden på en specifik uppsättning virtuella datorer och över flera prenumerationer. Det här alternativet har inte stöd för att ange en lista över virtuella datorer som ska undantas.
Förutsättningar
Du måste ha ett Azure-konto med en aktiv prenumeration. Skapa ett konto utan kostnad.
Om du vill distribuera lösningen måste ditt konto ha behörigheten Ägare i prenumerationen.
Starta/stoppa virtuella datorer v2 är tillgängligt i alla azures globala och amerikanska myndighetsmolnregioner som listas i Produkter som är tillgängliga per regionsida för Azure Functions.
Nästa steg
Information om hur du distribuerar den här funktionen finns i Distribuera starta/stoppa virtuella datorer.