Migracja przy użyciu skryptów zautomatyzowanego elementu Runbook
Dotyczy: ✔️ Maszyny wirtualne z systemem Windows Maszyny wirtualne z ✔️ systemem Linux ✔️ w środowisku ✔️ lokalnym serwerów z obsługą usługi Azure Arc
W tym artykule szczegółowo opisano sposób korzystania z elementów Runbook migracji, można automatycznie migrować wszystkie obciążenia (maszyny i harmonogramy) z usługi Automation Update Management do usługi Azure Update Manager.
W poniższych sekcjach opisano sposób uruchamiania skryptu, działania skryptu w zapleczu, oczekiwane zachowanie i wszelkie ograniczenia, jeśli ma to zastosowanie. Skrypt może migrować wszystkie maszyny i harmonogramy na jednym koncie usługi Automation w jednym miejscu. Jeśli masz wiele kont automatyzacji, musisz uruchomić element Runbook dla wszystkich kont automatyzacji.
Na wysokim poziomie należy wykonać poniższe kroki, aby przeprowadzić migrację maszyn i harmonogramów z usługi Automation Update Management do usługi Azure Update Manager.
Nieobsługiwane scenariusze
- Kwerendy wyszukiwania zapisanego na platformie Azure nie zostaną zmigrowane; należy je migrować ręcznie.
Aby uzyskać pełną listę ograniczeń i rzeczy do zanotowania, zobacz kluczowe punkty migracji
Przewodnik krok po kroku
Informacje wymienione w każdym z powyższych kroków zostały szczegółowo wyjaśnione poniżej.
Wymaganie wstępne 1: Dołączanie maszyn spoza platformy Azure do usługi Arc
Co zrobić
Element Runbook automatyzacji migracji ignoruje zasoby, które nie są dołączane do usługi Arc. Dlatego przed uruchomieniem elementu Runbook migracji należy wstępnie dołączyć wszystkie maszyny spoza platformy Azure do usługi Azure Arc. Wykonaj kroki, aby dołączyć maszyny do usługi Azure Arc.
Wymaganie wstępne 2. Tworzenie tożsamości użytkownika i przypisań ról przez uruchomienie skryptu programu PowerShell
Odp. Wymagania wstępne dotyczące uruchamiania skryptu
- Uruchom polecenie
Install-Module -Name Az -Repository PSGallery -Force
w programie PowerShell. Skrypt wymagań wstępnych zależy od modułów Az.Modules. Ten krok jest wymagany, jeśli moduły Az.Modules nie są obecne lub zaktualizowane. - Aby uruchomić ten skrypt wymagań wstępnych, musisz mieć uprawnienia Microsoft.Authorization/roleAssignments/write we wszystkich subskrypcjach zawierających zasoby usługi Automation Update Management, takie jak maszyny, harmonogramy, obszar roboczy usługi Log Analytics i konto usługi Automation. Zobacz , jak przypisać rolę platformy Azure.
- Musisz mieć uprawnienia rozwiązania Update Management.
B. Uruchamianie skryptu
Pobierz i uruchom skrypt MigrationPrerequisiteScript
programu PowerShell lokalnie. Ten skrypt przyjmuje parametr AutomationAccountResourceId konta usługi Automation, który ma zostać zmigrowany, a element AutomationAccountAzureEnvironment jako dane wejściowe. Akceptowane wartości dla usługi AutomationAccountAzureEnvironment to AzureCloud, AzureUSGovernment i AzureChina oznaczające chmurę, do której należy konto usługi Automation.
Możesz pobrać identyfikator AutomationAccountResourceId, przechodząc do właściwości konta> usługi Automation.
C. Weryfikacja
Po uruchomieniu skryptu sprawdź, czy tożsamość zarządzana użytkownika została utworzona na koncie usługi Automation. Przypisano użytkownika tożsamości>konta>usługi Automation.
D. Operacje zaplecza według skryptu
Aktualizowanie modułów Az.Modules dla konta usługi Automation, które będzie wymagane do uruchamiania skryptów migracji i deboardingu.
Tworzy zmienną automatyzacji o nazwie AutomationAccountAzureEnvironment, która będzie przechowywać środowisko chmury platformy Azure, do którego należy konto usługi Automation.
Tworzenie tożsamości użytkownika w tej samej subskrypcji i grupie zasobów co konto usługi Automation. Nazwa tożsamości użytkownika będzie podobna do AutomationAccount_aummig_umsi.
Dołączanie tożsamości użytkownika do konta usługi Automation.
Skrypt przypisuje następujące uprawnienia do tożsamości zarządzanej przez użytkownika: Wymagane uprawnienia rozwiązania Update Management.
- W tym celu skrypt pobiera wszystkie maszyny dołączone do usługi Automation Update Management na tym koncie automatyzacji i analizuje identyfikatory subskrypcji, aby uzyskać wymaganą kontrolę dostępu opartą na rolach dla tożsamości użytkownika.
- Skrypt zapewnia właściwą kontrolę dostępu opartą na rolach tożsamości użytkownika w subskrypcji, do której należy konto automatyzacji, aby można było utworzyć konfiguracje MRP tutaj.
- Skrypt przypisuje wymagane role dla obszaru roboczego i rozwiązania usługi Log Analytics.
Rejestracja wymaganych subskrypcji dla dostawców zasobów Microsoft.Maintenance i Microsoft.EventGrid.
Krok 1. Migracja maszyn i harmonogramów
Ten krok obejmuje użycie elementu Runbook automatyzacji do migrowania wszystkich maszyn i harmonogramów z konta automatyzacji do usługi Azure Update Manager.
Wykonaj te kroki:
Zaimportuj element Runbook migracji z galerii elementów Runbook i opublikuj go. Wyszukaj aktualizację usługi Azure Automation z galerii przeglądania i zaimportuj element runbook migracji o nazwie Migrate from Azure Automation Update Management do usługi Azure Update Manager i opublikuj element Runbook.
Element Runbook obsługuje program PowerShell 5.1.
Ustaw pełne rejestrowanie na wartość True dla elementu Runbook.
Uruchom element Runbook i przekaż wymagane parametry, takie jak AutomationAccountResourceId, UserManagedServiceIdentityClientId itp.
Możesz pobrać identyfikator AutomationAccountResourceId z właściwości konta>usługi Automation.
Możesz pobrać wartość UserManagedServiceIdentityClientId z identyfikatora klienta tożsamości przypisanej przez>użytkownika tożsamości>>>konta>usługi Automation.
Ustawienie parametru EnablePeriodicAssessmentForMachinesOnboardedToUpdateManagement na wartość TRUE spowoduje włączenie okresowej właściwości oceny na wszystkich komputerach dołączonych do usługi Automation Update Management.
Ustawienie wartości MigrateUpdateSchedulesAndEnablePeriodicAssessmentonLinkedMachines na wartość TRUE spowoduje zmigrowanie wszystkich harmonogramów aktualizacji w usłudze Automation Update Management do usługi Azure Update Manager, a także włączenie właściwości okresowej oceny na wartość True na wszystkich maszynach połączonych z tymi harmonogramami.
Należy określić wartość ResourceGroupForMaintenanceConfigurations , w której zostaną utworzone wszystkie konfiguracje konserwacji w usłudze Azure Update Manager. Jeśli podasz nową nazwę, zostanie utworzona grupa zasobów, w której zostaną utworzone wszystkie konfiguracje konserwacji. Jeśli jednak podasz nazwę, z którą grupa zasobów już istnieje, wszystkie konfiguracje konserwacji zostaną utworzone w istniejącej grupie zasobów.
Sprawdź dzienniki elementów Runbook platformy Azure pod kątem stanu wykonywania i stanu migracji kontrolerów SUCs.
Operacje elementu Runbook w zapleczu
Migracja elementu Runbook wykonuje następujące zadania:
- Umożliwia okresową ocenę na wszystkich maszynach.
- Wszystkie harmonogramy na koncie automatyzacji są migrowane do usługi Azure Update Manager, a dla każdego z nich tworzona jest odpowiednia konfiguracja konserwacji o tych samych właściwościach.
Informacje o skrycie
Poniżej przedstawiono zachowanie skryptu migracji:
Sprawdź, czy grupa zasobów o nazwie podjętej jako dane wejściowe jest już obecna w subskrypcji konta usługi Automation, czy nie. Jeśli nie, utwórz grupę zasobów o nazwie określonej przez klienta. Ta grupa zasobów służy do tworzenia konfiguracji MRP dla wersji 2.
Ustawienie RebootOnly nie jest dostępne w Menedżerze aktualizacji platformy Azure. Harmonogramy z ustawieniem RebootOnly nie są migrowane.
Odfiltruj jednostki SUCs, które są w stanie błędu/wygasła/provisioningFailed/disabled, i oznacz je jako Niemigrowane, a następnie wydrukuj odpowiednie dzienniki wskazujące, że takie jednostki SUCs nie są migrowane.
Nazwa przypisania konfiguracji to ciąg, który będzie w formacie AUMMig_AAName_SUCName
Sprawdź, czy ten zakres dynamiczny jest już przypisany do konfiguracji konserwacji, czy nie, sprawdzając usługę Azure Resource Graph. Jeśli nie przypisano, przypisz tylko nazwę przypisania w formacie AUMMig_ AAName_SUCName_SomeGUID.
W przypadku zaplanowanych zadań wstępnych/po skonfigurowaniu skrypt utworzy element webhook automatyzacji dla elementów Runbook w ramach zadań wstępnych/post i subskrypcji usługi Event Grid dla zdarzeń przed/po konserwacji. Aby uzyskać więcej informacji, zobacz jak działa pre/post w usłudze Azure Update Manager
Podsumowany zestaw dzienników jest drukowany w strumieniu danych wyjściowych w celu nadania ogólnego stanu maszyn i kontrolerów przesyłania strumieniowego.
Szczegółowe dzienniki są drukowane w strumieniu pełnej.
Po migracji konfiguracja aktualizacji oprogramowania może mieć jeden z następujących czterech stanów migracji:
- Migracjafailed
- CzęściowoMigrated
- NotMigrated
- Migrowane
W poniższej tabeli przedstawiono scenariusze skojarzone z każdym stanem migracji.
Migracjafailed | CzęściowoMigrated | NotMigrated | Migrowane |
---|---|---|---|
Nie można utworzyć konfiguracji konserwacji dla konfiguracji aktualizacji oprogramowania. | Niezerowa liczba maszyn, na których nie można zastosować ustawień poprawek. | Nie można pobrać konfiguracji aktualizacji oprogramowania z interfejsu API z powodu niektórych błędów klienta/serwera, takich jak być może wewnętrzny błąd usługi. | |
Liczba maszyn bez zera z nieudanymi przypisaniami konfiguracji. | Konfiguracja aktualizacji oprogramowania ma ustawienie ponownego uruchamiania tylko jako ponowne uruchomienie. Nie jest to obecnie obsługiwane w usłudze Azure Update Manager. | ||
Nie można rozpoznać liczby zapytań dynamicznych bez zera, która nie może wykonać zapytania względem usługi Azure Resource Graph. | |||
Niezerowa liczba niepowodzeń przypisania konfiguracji zakresu dynamicznego. | Konfiguracja aktualizacji oprogramowania nie ma stanu aprowizacji zakończonej powodzeniem w bazie danych. | ||
Konfiguracja aktualizacji oprogramowania ma zapisane zapytania wyszukiwania. | Konfiguracja aktualizacji oprogramowania jest w stanie błędu w bazie danych. | ||
Konfiguracja aktualizacji oprogramowania ma zadania wstępne/końcowe, które nie zostały pomyślnie zmigrowane. | Harmonogram skojarzony z konfiguracją aktualizacji oprogramowania wygasł już w momencie migracji. | ||
Harmonogram skojarzony z konfiguracją aktualizacji oprogramowania jest wyłączony. | |||
Nieobsługiwany wyjątek podczas migrowania konfiguracji aktualizacji oprogramowania. | Nie można zastosować żadnych maszyn, na których nie można zastosować ustawień poprawek. And Zero maszyn z nieudanymi przypisaniami konfiguracji. And Brak dynamicznych zapytań nie może rozpoznać, że nie można wykonać zapytania względem usługi Azure Resource Graph. And Błędy przypisania konfiguracji zerowego zakresu dynamicznego. And Konfiguracja aktualizacji oprogramowania ma zero zapisanych zapytań wyszukiwania. |
Aby dowiedzieć się z powyższej tabeli, w której scenariusz/scenariusze odpowiadają temu, dlaczego konfiguracja aktualizacji oprogramowania ma określony stan, zapoznaj się z dziennikami pełnej/nieudanej/ostrzegawczej, aby uzyskać kod błędu i komunikat o błędzie.
Możesz również wyszukać nazwę harmonogramu aktualizacji, aby pobrać dzienniki specyficzne dla debugowania.
Krok 2. Odejmowanie z rozwiązania Automation Update Management
Wykonaj te kroki:
Zaimportuj element Runbook migracji z galerii elementów Runbook. Wyszukaj aktualizację usługi Azure Automation z galerii przeglądania i zaimportuj element Runbook migracji o nazwie Deboard z usługi Azure Automation Update Management i opublikuj element Runbook.
Element Runbook obsługuje program PowerShell 5.1.
Ustaw pełne rejestrowanie na true dla elementu Runbook.
Uruchom element Runbook i przekaż parametry, takie jak Automation AccountResourceId, UserManagedServiceIdentityClientId itp.
Możesz pobrać identyfikator AutomationAccountResourceId z właściwości konta>usługi Automation.
Możesz pobrać wartość UserManagedServiceIdentityClientId z identyfikatora klienta tożsamości przypisanej przez>użytkownika tożsamości>>>konta>usługi Automation.
Sprawdź dzienniki elementów Runbook platformy Azure pod kątem stanu deboardingu maszyn i harmonogramów.
Deboarding script operations in the backend (Usuwanie operacji skryptu w zapleczu)
- Wyłącz wszystkie harmonogramy bazowe dla wszystkich konfiguracji aktualizacji oprogramowania znajdujących się na tym koncie usługi Automation. W tym celu upewnij się, że element Runbook Patch-MicrosoftOMSComputers nie został wyzwolony dla jednostek SUC, które zostały częściowo zmigrowane do wersji 2.
- Usuń rozwiązanie aktualizacji z połączonego obszaru roboczego usługi Log Analytics dla konta usługi Automation, które jest odłączone od usługi Automation Update Management w wersji 1.
- Podsumowany dziennik wszystkich wyłączonych kontrolerów SUCs i stan usuwania rozwiązania aktualizacji z połączonego obszaru roboczego usługi Log Analytics jest również drukowany do strumienia wyjściowego.
- Szczegółowe dzienniki są drukowane na pełnych strumieniach.