Správa runbooků pro Service Management Automation
Jako správce služby Service Management Automation (SMA) musíte nakonfigurovat a spustit runbooky. Aktivity, včetně nastavení pracovních procesů runbooku a plánování a sledování runbooků Kromě runbooků, které vytváříte, jsou součástí SMA dva systémové runbooky:
- DiscoverAllLocalModules: Spustí se okamžitě po instalaci pracovního procesu runbooku. Tento runbook zjistí všechny nativní moduly v systému Windows Server, na kterém je nainstalován pracovní proces runbooku. Extrahuje aktivity a metadata aktivit pro tyto moduly, aby se jejich aktivity mohly použít při vytváření runbooků v sadě Microsoft Azure Pack.
- SetAutomationModuleActivityMetadata: Spustí se okamžitě po importu modulu do SMA. Tento runbook extrahuje aktivity a metadata aktivit z nově importovaného modulu, aby se jeho aktivity mohly použít při vytváření runbooků v sadě Microsoft Azure Pack.
Konfigurace pracovních procesů runbooku
Ve výchozím nastavení se při spuštění úlohy runbooku v SMA vybere náhodný pracovní proces runbooku. Můžete ale chtít použít konkrétní pracovní proces runbooku. K tomu použijte vlastnost RunbookWorker . Přečtěte si další informace o spouštění runbooků.
Určení pracovního procesu runbooku pomocí doplňku PowerShell ISE
- V konfiguraci doplňku >SMA ISE se přihlaste pomocí svého účtu SMA. Po přihlášení se runbooky zobrazí na kartě Runbooky .
- Na kartě Runbooky vyberte jeden nebo více runbooků, které se mají spustit pro konkrétní pracovní proces sady Runbook.
- Vyberte konfigurovat a v části Konfigurovat vlastnosti runbooku vyberte pracovní proces runbooku z rozevírací nabídky.
- Vyberte Provést změny.
Určení pracovního procesu runbooku prostřednictvím modulu SMA PowerShellu
Vlastnost pracovního procesu runbooku můžete také nastavit pomocí následujícího příkazu příkazového řádku:
$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Sample-TestRunbook"
$workerName = "Worker1"
Set-SmaRunbookConfiguration -WebServiceEndpoint $webServer -Port $port -Name $runbookName -RunbookWorker $workerName
Zobrazí se seznam všech pracovních procesů runbooku nasazených následujícím způsobem:
$webServer = 'https://MyServer'
$port = 9090
Get-SmaRunbookWorkerDeployment -WebServiceEndpoint $webServer -Port $port
Poznámka:
K určení pracovního procesu runbooku se momentálně nedá použít portál Microsoft Azure Pack. Použijte buď doplněk SMA ISE, nebo rutiny PowerShellu.
Plánování runbooků
Pokud chcete naplánovat spuštění runbooku v zadaném čase, propojit ho s jedním nebo více plány. Plán lze nakonfigurovat tak, aby se spustil jednou nebo nastavil tak, aby se opakoval. Runbook může být propojený s několika plány a plán může obsahovat více runbooků propojených s ním.
Vytvoření plánu
Plán můžete vytvořit pomocí portálu pro správu nebo windows PowerShellu.
Vytvoření plánu na portálu pro správu
- Na portálu pro správu vyberte Automation.
- Na kartě Assets (Prostředky) vyberte Add Setting Add Schedule (Přidat plán nastavení>).
- Zadejte název a popis nového plánu a vyberte, jestli se bude spouštět jednou nebo denně.
- Zadejte počáteční čas a další možnosti podle potřeby. Časové pásmo času spuštění bude odpovídat časovému pásmu místního počítače.
Vytvoření plánu pomocí Windows PowerShellu
Pomocí rutiny Set-SmaSchedule můžete vytvořit plán nebo upravit existující plán. Musíte zadat čas zahájení plánu a to, jestli se má spustit jednou nebo opakovaně.
Následující ukázka vytvoří nový plán s názvem Můj denní plán. Začíná v aktuálním dni a pokračuje každý den v poledne po dobu jednoho roku.
$webServer = 'https://MyServer'
$port = 9090
$scheduleName = 'My Daily Schedule'
$startTime = (Get-Date).Date.AddHours(12)
$expiryTime = $startTime.AddYears(1)
Set-SmaSchedule -WebServiceEndpoint $webServer -Port $port -Name $scheduleName -ScheduleType OneTimeSchedule -StartTime $startTime -ExpiryTime $expiryTime -DayInterval 1
Propojení plánu s runbookem
Runbook může být propojený s několika plány a plán může obsahovat více runbooků propojených s ním. Pokud má runbook parametry, můžete zadat hodnoty, které se mají použít při spuštění runbooku. Je nutné zadat hodnoty pro všechny povinné parametry.
Propojení plánu na portálu pro správu
- Na portálu pro správu vyberte Runbooky služby Automation>.
- Vyberte název runbooku, který chcete naplánovat, a vyberte kartu Plán .
- Pokud je runbook aktuálně propojený s plánem, vyberte Propojit. Pak vyberte Propojit s novým plánem a vytvořte nový plán nebo vyberte Propojit s existujícím plánem a vyberte plán.
- Pokud má runbook parametry, zobrazí se výzva k zadání jejich hodnot.
Plán propojení pomocí Windows PowerShellu
K propojení plánu s runbookem můžete použít Start-SmaRunbook s parametrem ScheduleName . Hodnoty můžete zadat pomocí parametru Parameters . Přečtěte si další informace o hodnotách parametrů.
Následující ukázkové příkazy ukazují, jak propojit plán s runbookem.
$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$scheduleName = "Sample-DailySchedule"
Start-SmaRunbook -WebServiceEndpoint $webServer -Port $port -Name $runbookName -ScheduleName $scheduleName -Parameters $params
Sledování runbooků
Při spuštění runbooku v SMA se vytvoří úloha. Úloha je jedna instance spuštění runbooku. Jeden runbook může mít více úloh, z nichž každý má vlastní sadu hodnot pro parametry runbooku.
- Pokud je vlastnost RunbookWorker runbooku naplněna, server pracovního procesu bude tuto úlohu obsluhovat.
- Pokud pracovní server není dostupný, úloha selže s chybou.
- Pokud vlastnost RunbookWorker není naplněná, pak SMA náhodně vybere dostupný pracovní server, který bude žádost obsluhovat.
Následující diagram znázorňuje životní cyklus úlohy runbooku pro runbooky pracovního postupu PowerShellu.
Následující diagram znázorňuje životní cyklus úlohy runbooku pro runbooky powershellových skriptů.
Stav úlohy
Následující tabulka popisuje různé stavy, které jsou pro úlohu možné.
Status | Popis |
---|---|
Dokončeno | Úloha byla úspěšně dokončena. |
Neúspěšný | Úloha skončila s výjimkou. |
Zařazeno do fronty | Úloha čeká na dostupnost prostředků na pracovním procesu Automation, aby bylo možné ji spustit. |
Spouštění | Úloha byla přiřazena pracovnímu procesu a systém je v procesu jeho spuštění. |
Pokračování | Systém je v procesu obnovení úlohy po pozastavení. |
Spuštěno | Úloha běží. |
Zastaveno | Úlohu zastavil uživatel před dokončením. |
Zastavování | Systém právě zastavuje úlohu. |
Dočasně blokován. | Úloha byla pozastavena uživatelem, systémem nebo příkazem v runbooku. Úlohu, která je pozastavena, lze znovu spustit. Obnoví se z posledního kontrolního bodu nebo od začátku runbooku, pokud neobsahuje žádné kontrolní body. Runbook je pozastaven pouze systémem v případě výjimky, která má možnost pokračovat. Ve výchozím nastavení je ErrorActionPreference nastavena na Continue, což znamená, že úloha se pořád spouští, když dojde k výjimce. Pokud je tato proměnná nastavená na Zastavit, úloha se pozastaví, když dojde k výjimce. |
Pozastavení | Systém se pokusí pozastavit úlohu na žádost uživatele. Aby bylo možné runbook pozastavit, musí se připojit k dalšímu kontrolnímu bodu. Pokud už uplynul poslední kontrolní bod, dokončí se, než bude možné ho pozastavit. |
Zobrazení stavu úlohy na portálu pro správu
Řídicí panel Automation zobrazuje souhrn všech runbooků v prostředí SMA.
- Souhrnný graf zobrazuje celkový počet úloh pro všechny runbooky, které zadaly každý stav za daný počet dnů nebo hodin.
- Můžete vybrat časový rozsah v pravém horním rohu grafu.
- Časová osa grafu se změní podle typu vybraného časového rozsahu.
- Kliknutím na řádek v horní části obrazovky můžete zvolit, jestli se má řádek zobrazit pro konkrétní stav.
Zobrazte řídicí panel následujícím způsobem:
- Na portálu pro správu vyberte Automation.
- Vyberte kartu Dashboard (Řídicí panel).
Zobrazení řídicího panelu
Řídicí panel runbooku zobrazuje souhrn jednoho runbooku. Souhrnný graf zobrazuje počet celkových úloh runbooku, které zadaly každý stav za daný počet dnů nebo hodin. V pravém horním rohu grafu můžete vybrat časový rozsah. Časová osa grafu se změní podle typu vybraného časového rozsahu. Kliknutím na řádek v horní části obrazovky můžete zvolit, jestli se má řádek zobrazit pro konkrétní stav.
Zobrazte řídicí panel následujícím způsobem:
- Na portálu pro správu vyberte Automation.
- Vyberte název runbooku.
- Vyberte kartu Dashboard (Řídicí panel).
Zobrazení podrobností o úloze
Můžete zobrazit seznam všech úloh vytvořených pro konkrétní runbook a jejich nejnovější stav.
- Seznam můžete filtrovat podle stavu úlohy a rozsahu dat poslední změny úlohy.
- Výběrem názvu úlohy zobrazíte podrobné informace a jeho výstup.
- Podrobné zobrazení úlohy obsahuje hodnoty parametrů runbooku, které byly pro danou úlohu poskytnuty.
- Historie úloh zahrnuje výstup, upozornění a chybové zprávy s časovými razítky při vytvoření záznamu.
- Přečtěte si další informace o výstupu a zprávách runbooku.
- Zdrojem úlohy je zdrojový kód pracovního postupu při spuštění úlohy. To nemusí být stejné jako aktuální verze runbooku, pokud byla aktualizována po spuštění úlohy.
Úlohy runbooku můžete zobrazit pomocí následujícího postupu.
- Na portálu pro správu vyberte Automation.
- Vyberte název runbooku a vyberte kartu Úlohy .
- Vyberte sloupec Vytvoření úlohy pro úlohu a zobrazte jeho podrobnosti a výstup.
- Výběrem karty Historie zobrazíte historii úloh. Vyberte záznam historie a v dolní části obrazovky vyberte Zobrazit podrobnosti pro podrobné zobrazení záznamu.
- Na kartě Historie vyberte Zobrazit zdroj.
Načtení stavu úlohy pomocí Windows PowerShellu
Pomocí get-SmaJob můžete načíst úlohy vytvořené pro runbook a podrobnosti konkrétní úlohy.
- Pokud spustíte runbook s Windows PowerShellem pomocí start-SmaRunbooku, vrátí výslednou úlohu.
- K získání výstupu úlohy použijte Get-SmaJobOutput .
Následující ukázkový příkaz načte poslední úlohu ukázkového runbooku a zobrazí její stav, hodnoty zadané pro parametry runbooku a výstup úlohy.
$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Test-Runbook"
$job = (Get-SmaJob -WebServiceEndpoint $webServer -Port $port -RunbookName $runbookName | sort LastModifiedDate -desc)[0]
$job.Status
$job.JobParameters
Get-SmaJobOutput -WebServiceEndpoint $webServer -Port $port -Id $job.Id -Stream Output
Konfigurace nastavení runbooku
Každý runbook má více nastavení. Tato nastavení můžete použít k vyhledání a správě runbooků. Protokolování runbooku můžete také změnit konfigurací těchto nastavení. Každé z těchto nastavení je popsáno níže a potom postupy, jak je upravit.
Název a popis
Po vytvoření runbooku nemůžete změnit název. Popis je volitelný a může mít maximálně 512 znaků.
Značky
Značky umožňují přiřadit různá slova a fráze, které vám pomůžou identifikovat runbook. Více značek runbooku můžete zadat tak, že je oddělíte čárkami.
Protokolování
Ve výchozím nastavení se podrobné záznamy a záznamy průběhu nezapisují do historie úloh. Nastavení konkrétního runbooku můžete změnit tak, aby se tyto záznamy protokolují. Další informace o těchto záznamech najdete v tématu Výstup a zprávy runbooku.
Určený pracovní proces runbooku
Ve výchozím nastavení se úloha runbooku přiřadí náhodnému pracovnímu procesu runbooku, který se má provést. Nastavení konkrétního runbooku můžete změnit tak, aby se runbook spustil u konkrétního pracovního procesu runbooku.
Změna nastavení runbooku na portálu pro správu
Nastavení runbooku můžete změnit na portálu pro správu na stránce Konfigurace runbooku.
Na portálu pro správu vyberte Automation.
Vyberte kartu Runbooky.
Vyberte název runbooku.
Vyberte kartu Konfigurace.
Změna nastavení runbooku pomocí PowerShellu
Pomocí rutiny Set-SmaRunbookConfiguration můžete změnit všechna nastavení runbooku s výjimkou značek. Značky pro existující runbooky můžete změnit a přidat pouze pomocí portálu pro správu. Značky runbooků můžete nastavit jenom v PowerShellu při importu runbooku pomocí Import-SmaRunbook.
Následující ukázkové příkazy ukazují, jak nastavit vlastnosti runbooku. Tato ukázka přidá popis a určuje, že se mají protokolovat podrobné záznamy:
$webServer = 'https://MyServer'
$port = 9090
$runbookName = "Sample-TestRunbook"
Set-SmaRunbookConfiguration -WebServiceEndpoint $webServer -Port $port -Name $runbookName -Description "Sample runbook" -LogVerbose $true
Šifrování pracovního procesu runbooku a připojení k SQL Serveru
Zabezpečte připojení mezi procesy pracovního procesu runbooku a SQL serverem pomocí PROTOKOLU SSL.
Další kroky
- Přečtěte si o správě globálních prostředků.
- Přečtěte si o roli SMA v implementaci sady Microsoft Azure Pack.