Udostępnij za pośrednictwem


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.

Zrzut ekranu przedstawiający sposób instalowania modułu za pomocą polecenia .

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.

Zrzut ekranu przedstawiający sposób pobierania i uruchamiania skryptu.

Możesz pobrać identyfikator AutomationAccountResourceId, przechodząc do właściwości konta> usługi Automation.

Zrzut ekranu przedstawiający sposób pobierania identyfikatora zasobu.

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.

Zrzut ekranu przedstawiający sposób weryfikowania utworzenia tożsamości zarządzanej przez użytkownika.

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.

    1. 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.
    2. 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.
    3. 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:

  1. 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.

    Zrzut ekranu przedstawiający sposób migracji z usługi Automation Update Management.

    Element Runbook obsługuje program PowerShell 5.1.

    Zrzut ekranu przedstawiający element Runbook obsługuje program PowerShell 5.1 podczas importowania.

  2. Ustaw pełne rejestrowanie na wartość True dla elementu Runbook.

    Zrzut ekranu przedstawiający sposób ustawiania pełnych rekordów dziennika.

  3. Uruchom element Runbook i przekaż wymagane parametry, takie jak AutomationAccountResourceId, UserManagedServiceIdentityClientId itp.

    Zrzut ekranu przedstawiający sposób uruchamiania elementu Runbook i przekazywania wymaganych parametrów.

    1. Możesz pobrać identyfikator AutomationAccountResourceId z właściwości konta>usługi Automation.

      Zrzut ekranu przedstawiający sposób pobierania identyfikatora zasobu konta usługi Automation.

    2. Możesz pobrać wartość UserManagedServiceIdentityClientId z identyfikatora klienta tożsamości przypisanej przez>użytkownika tożsamości>>>konta>usługi Automation.

      Zrzut ekranu przedstawiający sposób pobierania identyfikatora klienta.

    3. 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.

    4. 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.

    5. 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.

  4. Sprawdź dzienniki elementów Runbook platformy Azure pod kątem stanu wykonywania i stanu migracji kontrolerów SUCs.

    Zrzut ekranu przedstawiający dzienniki elementu Runbook.

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.

Zrzut ekranu przedstawiający sposób wyświetlania dzienników specyficznych dla debugowania.

Krok 2. Odejmowanie z rozwiązania Automation Update Management

Wykonaj te kroki:

  1. 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.

    Zrzut ekranu przedstawiający sposób importowania elementu Runbook migracji deaboard.

    Element Runbook obsługuje program PowerShell 5.1.

    Zrzut ekranu przedstawiający element Runbook obsługuje program PowerShell 5.1 podczas odejmowania.

  2. Ustaw pełne rejestrowanie na true dla elementu Runbook.

    Zrzut ekranu przedstawiający pełne ustawienie rekordów dziennika podczas deboardowania.

  3. Uruchom element Runbook i przekaż parametry, takie jak Automation AccountResourceId, UserManagedServiceIdentityClientId itp.

    Zrzut ekranu przedstawiający sposób uruchamiania elementu Runbook i przekazywania parametrów podczas deboardingu.

    Możesz pobrać identyfikator AutomationAccountResourceId z właściwości konta>usługi Automation.

    Zrzut ekranu przedstawiający sposób pobierania identyfikatora zasobu podczas deboardowania.

    Możesz pobrać wartość UserManagedServiceIdentityClientId z identyfikatora klienta tożsamości przypisanej przez>użytkownika tożsamości>>>konta>usługi Automation.

    Zrzut ekranu przedstawiający sposób pobierania identyfikatora klienta podczas odejmowania.

  4. Sprawdź dzienniki elementów Runbook platformy Azure pod kątem stanu deboardingu maszyn i harmonogramów.

    Zrzut ekranu przedstawiający sposób usuwania dzienników elementów Runbook.

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.

Następne kroki