Omówienie uruchamiania/zatrzymywania maszyn wirtualnych w wersji 2
Funkcja Uruchamiania/zatrzymywania maszyn wirtualnych w wersji 2 uruchamia lub zatrzymuje wystąpienia usługi Azure Virtual Machines w wielu subskrypcjach. Uruchamia lub zatrzymuje maszyny wirtualne zgodnie z harmonogramami zdefiniowanymi przez użytkownika, udostępnia szczegółowe informacje za pośrednictwem usługi aplikacja systemu Azure Insights i wysyła opcjonalne powiadomienia przy użyciu grup akcji. W większości scenariuszy maszyny wirtualne uruchamiania/zatrzymywania mogą zarządzać maszynami wirtualnymi wdrożonym i zarządzanymi zarówno przez usługę Azure Resource Manager, jak i przez usługę Azure Service Manager (klasyczną), która jest przestarzała.
Ta nowa wersja maszyn wirtualnych uruchamiania/zatrzymywania maszyn wirtualnych w wersji 2 zapewnia zdecentralizowaną opcję automatyzacji o niskich kosztach dla klientów, którzy chcą zoptymalizować koszty maszyn wirtualnych. Oferuje ona wszystkie te same funkcje co oryginalna wersja dostępna w usłudze Azure Automation, ale została zaprojektowana tak, aby korzystać z nowszej technologii na platformie Azure. Maszyny wirtualne uruchamiania/zatrzymywania w wersji 2 korzystają z wielu usług platformy Azure i będą naliczane opłaty na podstawie wdrożonych i używanych usług.
Ważne aktualizacje uruchamiania/zatrzymywania maszyn wirtualnych w wersji 2
Żadne dalsze programowanie, ulepszenia ani aktualizacje nie będą dostępne dla wersji Start/Stop w wersji 2, z wyjątkiem sytuacji, gdy jest to wymagane do pozostania w obsługiwanych wersjach składników i usług platformy Azure.
Funkcje TriggerAutoUpdate i UpdateStartStopV2 są teraz przestarzałe i zostaną usunięte w przyszłości. Aby zaktualizować polecenie Start/Stop v2, zalecamy zatrzymanie lokacji, zainstalowanie jej w najnowszej wersji z repozytorium GitHub, a następnie uruchomienie witryny. Aby wyłączyć funkcję automatycznej aktualizacji, ustaw dla ustawienia aplikacji funkcji AzureClientOptions:EnableAutoUpdate wartość false. Brak wbudowanego systemu powiadomień dla aktualizacji. Po udostępnieniu aktualizacji do uruchamiania/zatrzymywania wersji 2 zaktualizujemy readme.md w repozytorium GitHub. Obserwatorzy plików usługi GitHub innych firm mogą być dostępne w celu powiadomienia o zmianach.
Od 19 sierpnia 2024 r. program Start/Stop v2 został zaktualizowany do modelu izolowanego procesu roboczego platformy .NET 8.
Omówienie
Uruchamianie/zatrzymywanie maszyn wirtualnych w wersji 2 zostało przeprojektowane i nie zależy od usługi Azure Automation ani dzienników usługi Azure Monitor, zgodnie z wymaganiami poprzedniej wersji. Ta wersja korzysta z usługi Azure Functions do obsługi uruchamiania i zatrzymywania wykonywania maszyny wirtualnej.
Tożsamość zarządzana jest tworzona w identyfikatorze Entra firmy Microsoft dla tej aplikacji usługi Azure Functions i umożliwia uruchamianie/zatrzymywanie maszyn wirtualnych w wersji 2 w celu łatwego uzyskiwania dostępu do innych chronionych zasobów firmy Microsoft, takich jak aplikacje logiki i maszyny wirtualne platformy Azure. Aby uzyskać więcej informacji na temat tożsamości zarządzanych w usłudze Microsoft Entra ID, zobacz Tożsamości zarządzane dla zasobów platformy Azure.
Punkt końcowy funkcji wyzwalacza HTTP jest tworzony w celu obsługi scenariuszy harmonogramu i sekwencji dołączonych do tej funkcji, jak pokazano w poniższej tabeli.
Nazwisko | Wyzwalacz | opis |
---|---|---|
Zaplanowane | HTTP | Ta funkcja jest zarówno dla scenariusza zaplanowanego, jak i sekwencjonowanego (zróżnicowanego przez schemat ładunku). Jest to funkcja punktu wejścia wywoływana z aplikacji logiki i pobiera ładunek w celu przetworzenia operacji uruchamiania lub zatrzymywania maszyny wirtualnej. |
AutoStop | HTTP | Ta funkcja obsługuje scenariusz autostopu , który jest funkcją punktu wejścia wywoływaną z aplikacji logiki. |
AutoStopVM | HTTP | Ta funkcja jest wyzwalana automatycznie przez alert maszyny wirtualnej, gdy warunek alertu jest spełniony. |
VirtualMachineRequestOrchestrator | Queue | Ta funkcja pobiera informacje o ładunku z funkcji Scheduled i organizuje żądania uruchamiania i zatrzymywania maszyny wirtualnej. |
VirtualMachineRequestExecutor | Queue | Ta funkcja wykonuje rzeczywistą operację uruchamiania i zatrzymywania na maszynie wirtualnej. |
CreateAutoStopAlertExecutor | Queue | Ta funkcja pobiera informacje o ładunku z funkcji AutoStop w celu utworzenia alertu na maszynie wirtualnej. |
HeartBeatAvailabilityTest | Czasomierz | Ta funkcja monitoruje dostępność podstawowych funkcji HTTP. |
CostAnalyticsFunction | Czasomierz | Ta funkcja jest używana przez firmę Microsoft do szacowania zagregowanego kosztu uruchamiania/zatrzymywania wersji 2 dla klientów. Ta funkcja nie ma wpływu na funkcjonalność uruchamiania/zatrzymywania wersji 2. |
SavingsAnalyticsFunction | Czasomierz | Ta funkcja jest używana przez firmę Microsoft do szacowania zagregowanych oszczędności związanych z uruchamianiem/zatrzymywaniem w wersji 2 wśród klientów. Ta funkcja nie ma wpływu na funkcjonalność uruchamiania/zatrzymywania wersji 2. |
VirtualMachineSavingsFunction | Queue | Ta funkcja wykonuje rzeczywiste obliczenia oszczędności na maszynie wirtualnej osiągnięte przez rozwiązanie Start/Stop V2. |
TriggerAutoUpdate | Czasomierz | Przestarzałe. Ta funkcja uruchamia proces automatycznej aktualizacji na podstawie ustawienia aplikacji "AzureClientOptions:EnableAutoUpdate=true". |
UpdateStartStopV2 | Queue | Przestarzałe. Ta funkcja wykonuje rzeczywiste automatyczne wykonywanie aktualizacji, które weryfikuje bieżącą wersję przy użyciu dostępnej wersji i decyduje o ostatecznej akcji. |
Na przykład funkcja zaplanowanego wyzwalacza HTTP służy do obsługi scenariuszy harmonogramu i sekwencji. Podobnie funkcja wyzwalacza HTTP AutoStop obsługuje scenariusz automatycznego zatrzymywania.
Funkcje wyzwalacza oparte na kolejce są wymagane w obsłudze tej funkcji. Wszystkie wyzwalacze oparte na czasomierzu są używane do przeprowadzania testu dostępności i monitorowania kondycji systemu.
Usługa Azure Logic Apps służy do konfigurowania harmonogramów uruchamiania i zatrzymywania maszyny wirtualnej oraz zarządzania nimi, wywołując funkcję przy użyciu ładunku JSON. Domyślnie podczas początkowego wdrażania tworzy łącznie pięć aplikacji logiki dla następujących scenariuszy:
Zaplanowane — akcje uruchamiania i zatrzymywania są oparte na harmonogramie określonym względem usługi Azure Resource Manager i klasycznych maszyn wirtualnych. ststv2_vms_Scheduled_start i ststv2_vms_Scheduled_stop skonfigurować zaplanowane uruchamianie i zatrzymywanie.
Sekwencjonowane — akcje uruchamiania i zatrzymywania są oparte na harmonogramie przeznaczonym dla maszyn wirtualnych ze wstępnie zdefiniowanymi tagami sekwencjonowania. Obsługiwane są tylko dwa nazwane tagi —
sequencestart
isequencestop
. ststv2_vms_Sequenced_start i ststv2_vms_Sequenced_stop skonfigurować sekwencjonowany start i zatrzymanie.Właściwym sposobem korzystania z funkcji sekwencji jest utworzenie tagu o nazwie
sequencestart
na każdej maszynie wirtualnej, którą chcesz uruchomić w sekwencji. Wartość tagu musi być liczbą całkowitą z zakresu od 1 do N dla każdej maszyny wirtualnej w odpowiednim zakresie. Tag jest opcjonalny i jeśli nie istnieje, maszyna wirtualna po prostu nie będzie uczestniczyć w sekwencjonowaniu. Te same kryteria dotyczą zatrzymywania maszyn wirtualnych, których nazwa tagu jest inna i używanasequencestop
w tym przypadku. Należy skonfigurować oba tagi na każdej maszynie wirtualnej, aby uzyskać akcję uruchamiania i zatrzymywania. Jeśli co najmniej dwie maszyny wirtualne mają tę samą wartość tagu, te maszyny wirtualne zostaną uruchomione lub zatrzymane w tym samym czasie.Na przykład poniższa tabela pokazuje, że zarówno akcje uruchamiania, jak i zatrzymywania są przetwarzane w kolejności rosnącej przez wartość tagu.
Uwaga
Ten scenariusz obsługuje tylko maszyny wirtualne usługi Azure Resource Manager.
AutoStop — ta funkcja jest używana tylko do wykonywania akcji zatrzymania zarówno dla usługi Azure Resource Manager, jak i klasycznych maszyn wirtualnych na podstawie użycia procesora CPU. Może to być również zaplanowana akcja podejmowania, która tworzy alerty na maszynach wirtualnych i na podstawie warunku, alert jest wyzwalany w celu wykonania akcji zatrzymania. ststv2_vms_AutoStop konfiguruje funkcję automatycznego zatrzymywania.
Każda akcja Uruchom/Zatrzymaj obsługuje przypisanie co najmniej jednej subskrypcji, grup zasobów lub listy maszyn wirtualnych.
Konto usługi Azure Storage, które jest wymagane przez usługę Functions, jest również używane przez uruchamianie/zatrzymywanie maszyn wirtualnych w wersji 2 do dwóch celów:
Używa usługi Azure Table Storage do przechowywania metadanych operacji wykonywania (czyli akcji uruchamiania/zatrzymywania maszyny wirtualnej).
Używa usługi Azure Queue Storage do obsługi wyzwalaczy opartych na kolejce usługi Azure Functions.
Wszystkie dane rejestrowania śledzenia z wykonywania aplikacji funkcji są wysyłane do połączonego wystąpienia usługi Application Insights. Dane telemetryczne przechowywane w usłudze Application Insights można wyświetlić z zestawu wstępnie zdefiniowanych wizualizacji przedstawionych na udostępnionym pulpicie nawigacyjnym platformy Azure.
Powiadomienia e-mail są również wysyłane w wyniku akcji wykonywanych na maszynach wirtualnych.
Nowe wydania
Po wydaniu nowej wersji maszyn wirtualnych uruchamiania/zatrzymywania maszyn wirtualnych w wersji 2 wystąpienie jest aktualizowane automatycznie bez konieczności ręcznego ponownego wdrażania.
Obsługiwane opcje określania zakresu
Subskrypcja
Określenie zakresu subskrypcji może być używane, gdy trzeba wykonać akcję uruchamiania i zatrzymywania na wszystkich maszynach wirtualnych w całej subskrypcji, a w razie potrzeby można wybrać wiele subskrypcji.
Można również określić listę maszyn wirtualnych do wykluczenia i zignorować je z akcji. Można również użyć symboli wieloznacznych, aby określić wszystkie nazwy, które jednocześnie mogą być ignorowane.
Grupa zasobów
Określenie zakresu dla grupy zasobów może być używane, gdy trzeba wykonać akcję uruchamiania i zatrzymywania na wszystkich maszynach wirtualnych, określając co najmniej jedną nazwę grupy zasobów i w co najmniej jednej subskrypcji.
Można również określić listę maszyn wirtualnych do wykluczenia i zignorować je z akcji. Można również użyć symboli wieloznacznych, aby określić wszystkie nazwy, które jednocześnie mogą być ignorowane.
Lista maszyn wirtualnych
Określenie listy maszyn wirtualnych może być używane, gdy trzeba wykonać akcję uruchamiania i zatrzymywania dla określonego zestawu maszyn wirtualnych oraz w wielu subskrypcjach. Ta opcja nie obsługuje określania listy maszyn wirtualnych do wykluczenia.
Wymagania wstępne
Musisz mieć konto platformy Azure z aktywną subskrypcją. Utwórz konto bezpłatnie.
Aby wdrożyć rozwiązanie, twoje konto musi mieć uprawnienie Właściciel w subskrypcji.
Uruchamianie/zatrzymywanie maszyn wirtualnych w wersji 2 jest dostępne we wszystkich regionach chmury globalnej platformy Azure i amerykańskich instytucji rządowych, które są wymienione na stronie Produkty dostępne według regionów dla usługi Azure Functions.
Następne kroki
Aby wdrożyć tę funkcję, zobacz Wdrażanie maszyn wirtualnych uruchamiania/zatrzymywania.