Azure Automation typů runbooků

Funkce Azure Automation Automatizace procesů podporuje několik typů runbooků, jak je definováno v následující tabulce. Další informace o prostředí automatizace procesů najdete v tématu Spouštění runbooků v Azure Automation.

Typ Popis
Grafický Grafický runbook založený na Windows PowerShell a zcela vytvořený a upravený v grafickém editoru v Azure Portal.
Grafický pracovní postup PowerShellu Grafický runbook založený na pracovním postupu Windows PowerShell a zcela vytvořený a upravovaný v grafickém editoru v Azure Portal.
PowerShell Textový runbook založený na skriptování Windows PowerShell
Pracovní postup PowerShellu Textový runbook založený na skriptování pracovního postupu Windows PowerShell
Python Textový runbook založený na skriptování Pythonu

Při určování typu, který se má použít pro konkrétní runbook, vezměte v úvahu následující aspekty.

  • Runbooky nemůžete převést z grafického na textový typ ani naopak.
  • Při používání runbooků různých typů jako podřízených runbooků existují omezení. Další informace najdete v tématu Podřízené runbooky v Azure Automation.

Grafické runbooky

Pomocí grafického editoru v Azure Portal můžete vytvářet a upravovat grafické a grafické runbooky pracovních postupů PowerShellu. Tento typ runbooku ale nemůžete vytvořit ani upravit pomocí jiného nástroje. Hlavní funkce grafických runbooků:

  • Exportovaný do souborů v účtu Automation a následný import do jiného účtu Automation.
  • Vygenerujte kód PowerShellu.
  • Během importu se převedou na nebo z grafických runbooků pracovních postupů PowerShellu.

Výhody

  • Použijte vizuální insert-link-configure authoring model.
  • Zaměřte se na to, jak data procházejí procesem.
  • Vizuálně představují procesy správy.
  • K vytváření pracovních postupů vysoké úrovně zahrňte další runbooky jako podřízené runbooky.
  • Povzbuďte modulární programování.

Omezení

  • Nelze vytvořit ani upravit mimo Azure Portal.
  • Může vyžadovat aktivitu kódu obsahující kód PowerShellu ke spouštění složité logiky.
  • Nelze převést na jeden z textových formátů, ani nemůžete převést textový runbook na grafický formát.
  • Nelze zobrazit ani přímo upravit kód PowerShellu, který grafický pracovní postup vytvoří. Kód, který vytvoříte, můžete zobrazit v libovolné aktivitě kódu.
  • Runbooky nejde spouštět v hybrid Runbook Workeru s Linuxem. Viz Automatizace prostředků ve vašem datacentru nebo cloudu pomocí funkce Hybrid Runbook Worker.
  • Grafické runbooky nejde digitálně podepsat.

Runbooky PowerShellu

Runbooky PowerShellu jsou založené na Windows PowerShell. Kód runbooku můžete přímo upravit pomocí textového editoru v Azure Portal. Můžete také použít libovolný offline textový editor a importovat runbook do Azure Automation.

Verze PowerShellu je určená zadanou verzí modulu runtime (verze 7.1 Preview nebo 5.1). Služba Azure Automation podporuje nejnovější modul runtime PowerShellu.

Stejný sandbox Azure a hybrid Runbook Worker můžou souběžně spouštět runbooky PowerShellu 5.1 a PowerShellu 7.1 .

Poznámka

Pokud v době spuštění runbooku vyberete moduly PowerShellu verze7.1 (Preview), které cílí na verzi modulu runtime 7.1, a pokud vyberete verzi modulu Runtime verze5.1, použijí se moduly PowerShellu, které cílí na verzi modulu runtime 5.1.

Ujistěte se, že pro moduly vyberete správnou verzi modulu runtime.

Například: Pokud spouštíte runbook pro scénář automatizace SharePointu v modulu runtime verze7.1 (Preview) a pak modul naimportujte do modulu Runtime verze7.1 (Preview); Pokud spouštíte runbook pro scénář automatizace SharePointu v modulu Runtime verze5.1, naimportujte modul do modulu Runtime verze5.1. V tomto případě byste pro modul viděli dvě položky, jednu pro modul runtime verze7.1(Preview) a druhou pro verzi 5.1.

typy runbooků.

V současné době se podporuje PowerShell 5.1 a 7.1 (Preview).

Výhody

  • Implementujte veškerou složitou logiku pomocí kódu PowerShellu bez dalších složitostí pracovního postupu PowerShellu.
  • Spusťte rychleji než runbooky pracovních postupů PowerShellu, protože před spuštěním není nutné je zkompilovat.
  • Spusťte v Azure a v hybridních pracovních pracovních procesech runbooků pro Windows i Linux.

Omezení – verze 5.1

  • Musíte být obeznámeni se skriptováním PowerShellu.
  • Runbooky nemůžou paralelně provádět více akcí pomocí paralelního zpracování.
  • Runbooky nemůžou používat kontrolní body k obnovení runbooku, pokud dojde k chybě.
  • Jako podřízené runbooky můžete zahrnout jenom PowerShell, runbooky pracovního postupu PowerShellu a grafické runbooky, a to pomocí rutiny Start-AzAutomationRunbook , která vytvoří novou úlohu.
  • Runbooky nemůžou použít příkaz powershellu #Requires , nepodporuje se v sandboxu Azure ani v hybrid Runbook Worker a může dojít k selhání úlohy.

Známé problémy – verze 5.1

Níže jsou uvedené aktuální známé problémy s runbooky PowerShellu:

  • Runbooky PowerShellu nemůžou načíst nešifrovaný prostředek proměnné s hodnotou null.
  • Runbooky PowerShellu nemůžou načíst prostředek proměnné s *~* názvem.
  • Operace Get-Process ve smyčce v runbooku PowerShellu může dojít k chybovému ukončení po přibližně 80 iteracích.
  • Runbook PowerShellu může selhat, pokud se pokusí zapsat velké množství dat do výstupního datového proudu najednou. Tento problém můžete obvykle vyřešit tak, že výstupem runbooku jsou jenom informace potřebné k práci s velkými objekty. Místo použití Get-Process bez omezení můžete mít například výstup rutiny jenom požadované parametry jako v Get-Process | Select ProcessName, CPU.

Omezení – 7.1 (Preview)

  • Azure Automation interní rutiny PowerShellu nejsou podporovány v procesu Hybrid Runbook Worker pro Linux. Pokud chcete získat přístup k funkcím sdílených prostředků (assetů) účtu Automation, musíte modul naimportovat automationassets na začátku runbooku Pythonu.
  • U verze modulu runtime PowerShellu 7 se aktivity modulu pro importované moduly extrahují.
  • Typ parametru runbooku PSCredential se ve verzi modulu runtime PowerShellu 7 nepodporuje.
  • PowerShell 7.x nepodporuje pracovní postupy. Další podrobnosti najdete v tomto článku.
  • PowerShell 7.x aktuálně nepodporuje podepsané runbooky.
  • Integrace správy zdrojového kódu nepodporuje PowerShell 7.1. PowerShell 7.1 runbooky ve správě zdrojového kódu se také vytvoří v účtu Automation jako runtime 5.1.

Známé problémy – 7.1 (Preview)

  • Spouštění podřízených skriptů pomocí .\child-runbook.ps1 této verze Preview se nepodporuje. Alternativní řešení: K spuštění jiného runbooku z nadřazeného runbooku použijte Start-AutomationRunbook (interní rutinu) nebo Start-AzAutomationRunbook (z modulu Az.Automation ).
  • Vlastnosti runbooku definující předvolbu protokolování se v modulu runtime PowerShellu 7 nepodporují.
    Alternativní řešení: Explicitně nastavte předvolbu na začátku runbooku, jak je uvedeno níže:
        $VerbosePreference = "Continue"
    
        $ProgressPreference = "Continue"
    
  • Vyhněte se importu Az.Accounts modulu do verze 2.4.0 pro modul runtime PowerShellu 7, protože při použití této verze v Azure Automation může dojít k neočekávanému chování.
  • Můžete narazit na problémy s formátováním s chybovými výstupními streamy pro úlohu spuštěnou v modulu runtime PowerShell 7.
  • Když importujete modul PowerShellu 7.1, který je závislý na jiných modulech, můžete zjistit, že tlačítko importu je šedé i v případě, že je nainstalovaná verze závislého modulu PowerShellu 7.1. Například Az.Compute verze 4.20.0 má závislost na Az.Accounts být >= 2.6.0. K tomuto problému dochází v případě, že ekvivalentní závislý modul v PowerShellu 5.1 nesplňuje požadavky na verzi. Například verze Az.Accounts 5.1 byla < 2.6.0.
  • Když spustíte runbook PowerShell 7 pomocí webhooku, automaticky převede vstupní parametr webhooku na neplatný json.

Runbooky pracovních postupů PowerShellu

Runbooky pracovního postupu PowerShellu jsou textové runbooky založené na pracovním postupu Windows PowerShell. Kód runbooku můžete přímo upravit pomocí textového editoru v Azure Portal. Můžete také použít libovolný offline textový editor a importovat runbook do Azure Automation.

Poznámka

PowerShell 7.1 nepodporuje runbooky pracovních postupů.

Výhody

  • Implementujte veškerou složitou logiku pomocí kódu pracovního postupu PowerShellu.
  • Pokud dojde k chybě, použijte kontrolní body k obnovení operace.
  • Paralelní zpracování umožňuje provádět více akcí paralelně.
  • Může zahrnovat další grafické runbooky a runbooky pracovních postupů PowerShellu jako podřízené runbooky pro vytváření pracovních postupů vysoké úrovně.

Omezení

  • Musíte být obeznámeni s pracovním postupem PowerShellu.
  • Runbooky musí řešit další složitost pracovního postupu PowerShellu, jako jsou deserializované objekty.
  • Spuštění runbooků trvá déle než runbooky PowerShellu, protože je nutné je před spuštěním zkompilovat.
  • Runbooky PowerShellu můžete zahrnout jenom jako podřízené runbooky pomocí rutiny Start-AzAutomationRunbook .
  • Runbooky nejde spustit v hybridním procesu runbooku s Linuxem.

Runbooky Pythonu

Runbooky Pythonu se kompilují v Pythonu 2 a Pythonu 3. Runbooky Pythonu 3 jsou aktuálně ve verzi Preview. Kód runbooku můžete přímo upravit pomocí textového editoru v Azure Portal. Můžete také použít offline textový editor a importovat runbook do Azure Automation.

Runbooky Pythonu 3 jsou podporované v následujících globálních infrastrukturách Azure:

  • Globální Azure
  • Azure Government

Výhody

  • Používejte robustní knihovny Pythonu.
  • Může běžet v Azure nebo v hybridních pracovních procesů runbooku.
  • Pro Python 2 jsou hybridní pracovní procesy runbooku Windows podporované v pythonu 2.7 nainstalované.
  • Pro cloudové úlohy Pythonu 3 se podporuje verze Pythonu 3.8. Skripty a balíčky z libovolné verze 3.x můžou fungovat, pokud je kód kompatibilní napříč různými verzemi.
  • U hybridních úloh Pythonu 3 na počítačích s Windows se můžete rozhodnout nainstalovat libovolnou verzi 3.x, kterou chcete použít.
  • V případě hybridních úloh Pythonu 3 na počítačích s Linuxem závisíme na verzi Pythonu 3 nainstalované na počítači a spusťte DSC OMSConfig a Linux Hybrid Worker. Různé verze by měly fungovat, pokud v podpisech metod nebo kontraktech mezi verzemi Pythonu 3 neexistují žádné zásadní změny.

Omezení

  • Musíte být obeznámeni se skriptováním Pythonu.
  • Pokud chcete používat knihovny třetích stran, musíte balíčky importovat do účtu Automation.
  • Spuštění runbooku Python 3 (Preview) nefunguje pomocí rutiny Start-AutomationRunbook v pracovním postupu PowerShellu nebo PowerShellu. Tuto omezení můžete obejít pomocí rutiny Start-AzAutomationRunbook z modulu Az.Automation nebo rutiny Start-AzureRmAutomationRunbook z modulu AzureRm.Automation. 
  • Azure Automation nepodporuje sys.stderr.
  • Balíček automationassets v Pythonu není k dispozici na pypi.org, takže není k dispozici pro import do počítače s Windows.

Více verzí Pythonu

Pokud používáte Runbook Worker systému Windows, při spuštění runbooku Python 2 nejprve vyhledá proměnnou PYTHON_2_PATH prostředí a ověří, jestli odkazuje na platný spustitelný soubor. Pokud je C:\Python2například instalační složka , zkontroluje, jestli C:\Python2\python.exe je platná cesta. Pokud ho nenajdete, vyhledá PATH proměnnou prostředí, aby podobnou kontrolu udělala.

Pro Python 3 nejprve vyhledá proměnnou PYTHON_3_PATH env a pak se vrátí do PATH proměnné prostředí.

Při použití pouze jedné verze Pythonu můžete do proměnné přidat instalační cestu PATH . Pokud chcete používat obě verze v nástroji Runbook Worker, nastavte PYTHON_2_PATH a PYTHON_3_PATH nastavte umístění modulu pro tyto verze.

Známé problémy

U cloudových úloh někdy úlohy Pythonu 3 selhávají se zprávou invalid interpreter executable patho výjimce . Tuto výjimku se může zobrazit, pokud je úloha zpožděná, začíná déle než 10 minut nebo pomocí runbooku Start-AutomationRunbook ke spuštění runbooků Python 3. Pokud je úloha zpožděná, restartování runbooku by mělo být dostatečné. Hybridní úlohy by měly fungovat bez jakéhokoli problému, pokud použijete následující kroky:

  1. Vytvořte novou proměnnou prostředí s názvem PYTHON_3_PATH a zadejte instalační složku. Pokud je C:\Python3například instalační složka , je potřeba tuto cestu přidat do proměnné.
  2. Po nastavení proměnné prostředí restartujte počítač.

Další kroky