Udostępnij za pośrednictwem


Tworzenie Runbooków automatyzacji zarządzania usługami

Elementy Runbook w usługach Service Management Automation i Microsoft Azure Automation to przepływy pracy programu Windows PowerShell lub skrypty programu PowerShell. Zapewniają one możliwość automatyzowania procesów administracyjnych do zarządzania serwerami w chmurze i wdrażania ich lub dowolnej innej funkcji, którą może wykonać skrypt programu Windows PowerShell.

Nie ma różnicy w skryptach Runbook między dwoma systemami i ten sam skrypt może działać na obu z identycznymi funkcjami. Termin Automatyzacja jest używany w tym artykule, odnosi się zarówno do automatyzacji zarządzania usługami, jak i Microsoft Azure Automation.

Dodatkowe usługi udostępniane przez usługę Automation do pracy z przepływami pracy programu Windows PowerShell obejmują następujące elementy:

  • Scentralizowane magazynowanie i zarządzanie runbookami.

  • Skalowalna architektura do planowania i wykonywania runbooków.

  • Zasoby globalne, które są centralnie zarządzane i dostępne dla wszystkich Runbooków.

  • Interfejs użytkownika do tworzenia i testowania runbooków.

  • Zestaw cmdlet do zarządzania i uruchamiania runbooków.

Tworzenie lub importowanie elementu Runbook

Element Runbook można dodać do usługi Service Management Automation, tworząc go w portalu zarządzania lub importując go z pliku.

Tworzenie elementu Runbook w portalu zarządzania

  1. W portalu zarządzania wybierz pozycję Nowy, App Services, Automation, Runbook, Quick Create.

  2. Wprowadź wymagane informacje, a następnie wybierz pozycję Utwórz. Nazwa runbooku musi zaczynać się literą i może zawierać litery, cyfry, znaki podkreślenia oraz kreski.

  3. Jeśli chcesz teraz edytować element Runbook, wybierz pozycję Edytuj element Runbook. W przeciwnym razie wybierz przycisk OK.

  4. Twój nowy Runbook pojawi się na karcie Runbooks.

Importuj runbook z pliku

  1. W portalu zarządzania wybierz pozycję Automatyzacja , a następnie wybierz konto usługi Automation.

  2. Wybierz Importuj.

  3. Wybierz Przeglądaj i znajdź plik skryptu do zaimportowania.

  4. Jeśli chcesz teraz edytować Runbook, wybierz pozycję Edytuj Runbook. W przeciwnym razie wybierz przycisk OK.

  5. Nowy Runbook zostanie wyświetlony na karcie Runbooks dla konta usługi Automation.

Importowanie runbooka z pliku skryptu za pomocą programu Windows PowerShell

Możesz użyć polecenia cmdlet Import-SmaRunbook, aby utworzyć nowy runbook z pliku skryptu zawierającego przepływ pracy.

Poniższe przykładowe polecenia pokazują, jak zaimportować plik skryptu do istniejącego runbooku, po czym go opublikować.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Import-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Path $scriptPath
Publish-SMARunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName

Edytowanie elementu Runbook

Każdy Runbook w usłudze Service Management Automation ma dwie wersje: wersja robocza i opublikowana. Edytujesz wersję roboczą przepływu pracy, a następnie opublikujesz go, aby można było go wykonać. Nie można edytować wersji opublikowanej.

Edytowanie elementu Runbook za pomocą portalu zarządzania

Portal zarządzania zawiera edytor, którego można użyć do wyświetlania i edytowania runbooków. Oprócz oferowania podstawowych możliwości edytowania tekstu, edytor oferuje możliwość automatycznego wstawiania kodu dla runbooków, zasobów globalnych i działań.

  1. W Portalu zarządzania wybierz opcję Automatyzacja.

  2. Wybierz kartę Runbooki.

  3. Wybierz nazwę elementu Runbook, który chcesz edytować.

  4. Wybierz kartę Autor .

  5. Wybierz pozycję Wersja robocza w górnej części ekranu lub przycisk Edytuj w dolnej części ekranu.

  6. Wykonaj wymaganą edycję.

  7. Po zakończeniu edycji wybierz pozycję Zapisz .

  8. Wybierz Publikuj, jeśli chcesz opublikować najnowszą wersję roboczą runbooka.

Wybierz wymaganą kartę, aby wykonać kroki wstawiania kodu dla elementów Runbook, zasobów globalnych i działań:

Wykonaj następujące kroki, aby wstawić kod do runbooka:

  1. Otwórz element Runbook w edytorze portalu zarządzania.

  2. W dolnej części ekranu wybierz pozycję Wstaw , a następnie wybierz pozycję Runbook.

  3. Wybierz element Runbook do wstawienia z kolumny środkowej i wybierz strzałkę w prawo.

  4. Jeśli Runbook ma parametry, zostaną one wyświetlone w celach informacyjnych.

  5. Wybierz przycisk wyboru.

  6. Kod do uruchomienia wybranego runbooka zostanie wstawiony do bieżącego runbooka.

  7. Jeśli element Runbook wymaga parametrów, podaj odpowiednią wartość zamiast typu danych otoczonego nawiasami klamrowymi <>.

Edytuj runbook automatyzacji z PowerShell

Aby edytować runbook przy użyciu Windows PowerShell, należy edytować przepływ pracy za pomocą wybranego edytora i zapisać go w pliku .ps1. Możesz użyć cmdlet Get-SMARunbookDefinition, aby pobrać zawartość runbooka, a następnie cmdlet Edit-SMARunbook, aby zastąpić istniejący szkic przepływu pracy zmodyfikowanym.

Aby pobrać zawartość runbooka za pomocą programu Windows PowerShell

Poniższe przykładowe polecenia pokazują, jak pobrać skrypt runbooka i zapisać go jako plik skryptu. W tym przykładzie pobierana jest wersja robocza. Można również pobrać opublikowaną wersję runbooka, chociaż nie można zmienić tej wersji.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

$runbookDefinition = Get-SMARunbookDefinition -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Type Draft
$runbookContent = $runbookDefinition.Content

Out-File -InputObject $runbookContent -FilePath $scriptPath

Aby zmienić zawartość skryptu przy użyciu programu Windows PowerShell

Poniższe przykładowe polecenia pokazują, jak zastąpić istniejącą zawartość elementu Runbook zawartością pliku skryptu zawierającego przepływ pracy.

$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scriptPath = "c:\runbooks\Test-Runbook.ps1"

Edit-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Path $scriptPath -Overwrite
Publish-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Path $scriptPath

Edytowanie runbooka automatyzacji w środowisku PowerShell ISE

Zintegrowane środowisko skryptów programu Windows PowerShell (ISE) to aplikacja, która umożliwia uruchamianie poleceń i pisanie, testowanie i debugowanie skryptów. Dodatek SMA PowerShell ISE umożliwia używanie tego narzędzia do pisania i testowania runbooków automatyzacji.

  1. Otwórz aplikację Windows PowerShell ISE.

  2. Jeśli dodatek SMA ISE nie jest wyświetlany po prawej stronie środowiska ISE, otwórz menu Dodatki i włącz dodatek SMA ISE.

  3. Zaloguj się do programu SMA na karcie Konfiguracja .

  4. Wybierz kartę Runbook. Powinna zostać wyświetlona lista runbooków SMA.

  5. Wybierz runbook, który chcesz edytować, a następnie wybierz opcję Pobierz. Spowoduje to pobranie lokalnej kopii Runbooka z programu SMA.

  6. Wybierz Otwórz. Spowoduje to utworzenie nowej karty z elementem Runbook.

  7. Wprowadź niezbędne zmiany w runbooku.

  8. Wybierz pozycję Przekaż wersję roboczą , aby wysłać element Runbook do programu SMA. Spowoduje to zastąpienie istniejącej wersji roboczej elementu Runbook.

  9. Wybierz Publikuj wersję roboczą, jeśli chcesz opublikować najnowszą wersję roboczą runbooka.

Opublikuj swój runbook

Po utworzeniu Runbooka należy go opublikować, aby pracownik Runbooka mógł go wykonać. Każdy runbook w usłudze Service Management Automation ma wersję roboczą i opublikowaną. Tylko wersję opublikowaną można uruchomić i tylko wersję roboczą można edytować. Na wersję opublikowaną nie mają wpływu żadne zmiany wprowadzone w wersji roboczej. Gdy będziesz gotów udostępnić wersję roboczą, opublikujesz ją, co spowoduje zastąpienie wersji opublikowanej wersją roboczą.

Publikowanie elementu Runbook przy użyciu portalu zarządzania

  1. Wybierz obszar roboczy automatyzacji.

  2. W górnej części ekranu wybierz pozycję Runbooks.

  3. Znajdź runbook, który chcesz edytować, i kliknij jego nazwę.

  4. W górnej części ekranu wybierz pozycję Autor.

  5. Wybierz pozycję Wersja robocza.

  6. W dolnej części ekranu wybierz pozycję Publikuj.

  7. Wybierz pozycję Tak , aby wyświetlić komunikat weryfikacyjny.

Publikowanie runbooka przy użyciu programu PowerShell

Za pomocą polecenia Publish-SmaRunbook można opublikować Runbook za pomocą programu Windows PowerShell. Poniższe przykładowe polecenia pokazują, jak opublikować runbook.

$webServer = 'https://MyServer'
$port = 9090
$runbookPath = 'c:\runbooks\Sample-TestRunbook.ps1'
$runbookName = 'Test-Runbook'

Publish-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName

Publikowanie runbooka za pomocą programu PowerShell ISE

Zintegrowane środowisko skryptów programu Windows PowerShell (ISE) to aplikacja, która umożliwia uruchamianie poleceń i pisanie, testowanie i debugowanie skryptów. Dodatek SMA PowerShell ISE umożliwia używanie tego narzędzia do pisania i testowania runbooków automatyzacji.

  1. Otwórz aplikację Windows PowerShell ISE.

  2. Jeśli dodatek SMA ISE nie jest wyświetlany po prawej stronie środowiska ISE, otwórz menu Dodatki i włącz dodatek SMA ISE.

  3. Zaloguj się do programu SMA na karcie Konfiguracja .

  4. Wybierz kartę Runbook. Powinna zostać wyświetlona lista runbooków SMA.

  5. Wybierz element Runbook i wybierz pozycję Publikuj wersję roboczą , aby opublikować najnowszą wersję roboczą elementu Runbook.

Testuj swój Runbook

Wersję roboczą runbooku można przetestować w systemie automatyzacji zarządzania usługami, pozostawiając opublikowaną wersję runbooku bez zmian. Dzięki temu można sprawdzić, czy Runbook działa prawidłowo przed zastąpieniem opublikowanej wersji.

Podczas testowania runbooka zostaje uruchomiona jego wersja robocza i wszystkie akcje, które wykonuje, zostaną ukończone. Historia pracy nie jest tworzona, ale strumienie wyjściowe oraz strumienie ostrzeżeń i błędów są wyświetlane w okienku wyników testu. Komunikaty do strumienia verbose są wyświetlane w okienku wyjścia tylko wtedy, gdy zmienna $VerbosePreference jest ustawiona na Kontynuuj.

Podczas testowania runbooka nadal normalnie wykonuje on przepływ pracy i podejmuje wszystkie akcje dotyczące zasobów środowiska. Z tego powodu należy testować skrypty Runbook tylko względem środowisk nieprodukcyjnych.

Testowanie Runbooku w Service Management Automation

Aby przetestować element Runbook, otwórz wersję roboczą elementu Runbook w portalu zarządzania. Wybierz przycisk Testuj w dolnej części ekranu, aby rozpocząć test.

Element runbook można zatrzymać lub zawiesić podczas testowania, korzystając z przycisków znajdujących się poniżej okienka wyników. Gdy Runbook zostanie wstrzymany, najpierw ukończy bieżące działanie. Po wstrzymaniu runbooka można go zatrzymać lub uruchomić ponownie.

Testowanie skryptu automatyzacji przy użyciu programu PowerShell ISE

Dodatek PowerShell ISE udostępnia polecenia cmdlet, które emulują standardowe działania, takie jak Get-SMACredential i Set-SMAVariable, dzięki czemu można przetestować runbook na komputerze lokalnym tak samo jak każdy inny skrypt.

Zasoby globalne i ich wartości są pobierane z grupy automatyzacji do użycia na potrzeby testowania lokalnego. Możesz sprawdzić lub zmienić te wartości na karcie Zasoby . Zaszyfrowane wartości są wyświetlane w kolorze pomarańczowym, a ich wartości nie są pobierane. Jeśli chcesz używać tych zasobów w testach lokalnych, musisz ustawić ich wartość lokalnie.

Aby przetestować element Runbook w programie SMA, wybierz pozycję Test Draft in SMA (Testowanie wersji roboczej w programie SMA). Zostanie otwarte nowe okno. Wybierz pozycję Rozpocznij nowe zadanie , aby rozpocząć test. Dane wyjściowe zostaną wyświetlone w oknie.

Przykłady Runbooków Automatyzacji

Następujące runbooki są dostarczane wraz z Service Management Automation jako przykładowe runbooki, aby zilustrować techniki i najlepsze praktyki. Są one dostępne do użycia w rozszerzeniu automatyzacji w pakiecie Microsoft Azure Pack dla systemu Windows Server.

Nazwa elementu Runbook opis
Przykładowe usuwanie subskrypcji VM w chmurze Przedstawia przydatny scenariusz wyzwalania runbooka, gdy użytkownik usunie subskrypcję VM Clouds.
Przykładowe zarządzanie platformą Azure Pokazuje, jak nawiązać połączenie z subskrypcją platformy Microsoft Azure i wykonywać podstawowe operacje przy użyciu modułu Microsoft Azure PowerShell.
ZarządzaniePrzykładami-MenadżerKonfiguracji Przedstawia możliwości automatyzacji zarządzania usługami w celu nawiązania połączenia z programem Configuration Manager.
Przykład-Zarządzanie-DataProtectionManager Przedstawia sposób nawiązywania połączenia z serwerem programu Data Protection Manager (DPM) i wyświetlanie informacji o dyskach znalezionych na serwerze programu DPM.
Przykład-Zarządzanie-Serwerami-MySQL Przedstawia sposób pobierania tokenu zabezpieczającego, który będzie używany do pobierania listy serwerów hosta.
Przykład-Zarządzający-Menedżer Operacji Demonstruje możliwość programu Service Management Automation w celu nawiązania połączenia z programem System Center Operations Manager.
Przykładowe zarządzanie orkiestratorem Pokazuje, jak połączyć się z System Center Orchestrator i uruchomić runbook programu Orchestrator, aby używać istniejącej infrastruktury.
Przykładowe plany zarządzania Pokazuje, jak utworzyć nowy plan i dodać usługę SQL Server ze zdefiniowanym limitem przydziału do nowego planu.
Zarządzanie próbkami w ServiceBusClouds Pokazuje, jak nawiązać połączenie z serwerem usługi Service Bus w chmurze i wyświetlić informacje o utworzonych przestrzeniach nazw.
Przykład-Zarządzanie-Serwerami-SQL Pokazuje, jak utworzyć nową grupę serwerów i dodać serwer hostingu SQL.
Przykładowe konta zarządzania użytkownikami Pokazuje, jak utworzyć użytkownika w Microsoft Azure Pack dla systemu Windows Server, który zostanie utworzony i pojawi się w portalu zarządzania w rozszerzeniu użytkowników dla administratorów. Jednak ten użytkownik powinien być również zintegrowany z dostawcą uwierzytelniania (na przykład AuthSite) w celu uzyskania dostępu do portalu zarządzania dla dzierżaw, który nie jest uwzględniony w tym przykładzie.
Przykład-Zarządzanie-VirtualMachineManager Przedstawia sposób nawiązywania połączenia z serwerem programu Virtual Machine Manager (VMM) i wyświetlanie informacji o licencji serwera programu VMM.
Zarządzanie przykładowymi chmurami maszyn wirtualnych Przedstawia sposób uzyskiwania dostępu do informacji o połączeniu z bazą danych serwera Service Provider Foundation oraz o obiektach serwera programu VMM zarządzanych przez program Service Provider Foundation.
Przykładowe zarządzanie witryną WebSiteCloud Pokazuje, jak nawiązać połączenie z serwerem kontrolera chmur witryny sieci Web i wyświetlić informacje o wdrożonych serwerach w chmurach witryn sieci Web.
Przykład-Modyfikuj-Subskrypcję-VMCloud Demonstruje przydatny scenariusz wyzwalania runbooku, gdy klient lub administrator zawiesza lub aktywuje subskrypcję w chmurze maszyn wirtualnych.
Przykładowe działania użytkowe Demonstruje możliwości automatyzacji zarządzania usługami do korzystania z działań
Przykładowe punkty kontrolne przy użyciu Pokazuje zdolność do używania punktów kontrolnych w automatyzacji zarządzania usługami.
Przykładowe używanie połączeń Demonstruje możliwość automatyzacji zarządzania usługami w celu używania połączeń do łączenia się z systemami zdalnymi.
Przykładowe użycie poświadczeń Demonstruje możliwości automatyzacji zarządzania usługami w zakresie używania poświadczeń oraz wyświetla użytkownika, jako którego działa runbook automatyzacji zarządzania usługami. Następnie łączy się z serwerem "ServerName" i zwraca użytkownika określonego przez użytkownika "SampleCredential", który uzyskuje dostęp do serwera.
Przykładowe użycie modułów Demonstruje importowanie modułów w elementach Runbook i zwraca liczbę już zaimportowanych modułów na serwerze "ServerName". Następnie importuje moduł określony przez moduł "ModulePath" i generuje nową liczbę modułów i informacje odpowiadające nowo zaimportowanemu modułowi.
Przykład użycia-RunbookParameters Pokazuje, jak używać parametrów wejściowych dla elementów Runbook, a także określać, czy parametry są wymagane, udostępniać wartości parametrów domyślnych i używać wartości parametrów w dalszej części przepływu pracy.
Przykładowe używanie Runbooks Demonstruje sposób wywoływania elementu Runbook z poziomu innego elementu Runbook.
Przykład użycia wstrzymania przepływu pracy Pokazuje, jak wymusić wstrzymanie runbooka. Może to być przydatne, jeśli wymagany jest krok ręczny, zanim element Runbook powinien kontynuować, na przykład otrzymanie zatwierdzenia wylogowania od określonej osoby. Po zakończeniu kroku ręcznego zawieszony Runbook zostanie wznowiony ręcznie, aby kontynuować jego działanie.
Przykład użycia zmiennych Demonstruje zdolność automatyzacji zarządzania usługami do używania zmiennych.
Przykład używania VMCloud-Automation Demonstruje przydatny scenariusz uruchomienia runbooka na początku zdarzenia Service Provider Foundation.

Następne kroki

  • Przeczytaj o tym, jak wywołać jeden element Runbook z innego elementu Runbook.
  • Przeczytaj o sposobie pracy z modułami integracji.