Megosztás a következőn keresztül:


Azure Automation-runbook-típusok

Az Azure Automation folyamatautomatizálási funkciója számos runbooktípust támogat az alábbi táblázatban meghatározottak szerint.

Típus Leírás
PowerShell
(ajánlott)
Windows PowerShell-szkriptelésen alapuló szöveges runbook. A jelenleg támogatott verziók a PowerShell 7.4 és a PowerShell 5.1. Mivel a PowerShell 7.1 és a PowerShell 7.2 szülőterméke már nem támogatja a PowerShellt, javasoljuk, hogy runbookokat hozzon létre hosszú távon támogatott PowerShell 7.4-es verzióban.
PowerShell-munkafolyamat Szöveges futtatási könyv a Windows PowerShell munkafolyamatokra épülő szkriptelés alapján.
Piton
(ajánlott)
Python-szkriptelésen alapuló szöveges runbook. A jelenleg támogatott verzió a Python 3.10. Mivel a Python 2.7 és a Python 3.8 szülőterméke már nem támogatja a Pythont, javasoljuk, hogy runbookokat hozzon létre a Python 3.10-ben.
Grafikus A Windows PowerShellen alapuló grafikus runbook teljesen az Azure Portal grafikus szerkesztőjében lett létrehozva és szerkesztve.
Grafikus PowerShell-munkafolyamat Grafikus runbook, amely a Windows PowerShell-munkafolyamat alapján készült, és teljesen az Azure portál grafikus szerkesztőjével lett szerkesztve.

A folyamatautomatizálási környezettel kapcsolatos további információkért lásd : Runbook-végrehajtás az Azure Automationben.

Feljegyzés

Az Azure Automation a PowerShell- és Python-nyelvi verziók támogatási életciklusát követi a termékek, a PowerShell és a Python szülő által közzétett ütemterveknek megfelelően. Javasoljuk, hogy támogatott nyelvi verziójú runbookokat használjon.

Vegye figyelembe az alábbi szempontokat egy adott runbook típusának meghatározásakor:

  • Nem konvertálhat runbookokat grafikusról szövegtípusra, vagy fordítva.
  • Vannak korlátozások a különböző típusú runbookok gyermek runbookként való használatakor. További információkért lásd a Gyermekfolyamatokat az Azure Automatizálásban.

PowerShell-runbookok

A PowerShell-runbookok a Windows PowerShellen alapulnak. Közvetlenül szerkesztheti a runbook kódját az Azure Portal szövegszerkesztőjével. Használhat offline szövegszerkesztőt is, és importálhatja a runbookot az Azure Automationbe.

A PowerShell-verziót a megadott futtatókörnyezeti verzió határozza meg.

Ugyanaz az Azure-tesztkörnyezet és a hibrid runbook-feldolgozó több PowerShell-runbookot is futtathat egymás mellett különböző futtatókörnyezeti verziókkal.

Feljegyzés

  • Jelenleg a PowerShell 7.4-es futtatókörnyezeti verziója a Délkelet-Brazília és a Gov-felhők kivételével minden nyilvános régióban támogatott mind a felhőbeli, mind a hibrid feladatok esetében.
  • A runbook végrehajtásakor, ha a Futtatókörnyezet verziója7.4-es verziót választja, a 7.4-es futtatókörnyezeti verziót célzó PowerShell-modulok lesznek használatban, és ha a Futtatókörnyezet verziója5.1-es verziót választja, az 5.1-es futtatókörnyezeti verziót célzó PowerShell-modulok lesznek használatban.

Győződjön meg arról, hogy a modulokhoz megfelelő futtatókörnyezeti verziót választja ki.

Például: Ha egy SharePoint-automatizálási forgatókönyvhöz futtat runbookot a 7.4-esfuttatókörnyezetben, importálja a modult a 7.4-esfuttatókörnyezetben; ha egy SharePoint-automatizálási forgatókönyvhöz futtat egy runbookot az 5.1-esfuttatókörnyezetben, importálja a modult az 5.1-esfuttatókörnyezetben.

Előnyök

  • A PowerShell-munkafolyamat egyéb összetettsége nélkül implementálhat minden összetett logikát PowerShell-kóddal.
  • A PowerShell-munkafolyamat-Runbookoknál gyorsabban indulnak, mivel futtatás előtt nem szükséges őket lefordítani.
  • Futtassa az Azure-ban és a hibrid Runbook Worker rendszereken, mind Windows, mind Linux platformon.

Korlátozások és ismert problémák

A PowerShell-runbookokkal kapcsolatos jelenlegi korlátozások és ismert problémák a következők:

Korlátozások

Feljegyzés

Jelenleg a PowerShell 7.4-es futtatókörnyezeti verziója a Délkelet-Brazília és a Gov-felhők kivételével minden nyilvános régióban támogatott mind a felhőbeli, mind a hibrid feladatok esetében.

  • A PowerShell 7.4 csak futtatókörnyezeti környezetben érhető el.
  • A PowerShell 7.4-es futtatókörnyezeti verziója esetében a modultevékenységek nem lesznek kinyerve az importált modulokhoz. A VS Code-hoz készült Azure Automation-bővítmény használatával egyszerűsítheti a runbookok szerzői élményét.
  • A PowerShell 7.x nem támogatja a munkafolyamatokat. További információkért lásd a PowerShell-munkafolyamat-ot.
  • A PowerShell 7.x jelenleg nem támogatja az aláírt runbookokat.
  • A forrásvezérlő integrációja nem támogatja a PowerShell 7.4-et. Emellett a PowerShell 7.4 runbookok a forrásvezérlés alatt Runtime 5.1-ként jönnek létre az Automation-Fiókban.
  • Az Az 12.3.0 modul alapértelmezés szerint telepítve van. A kiválasztott Az modulverzió összetevőmoduljainak teljes listája akkor jelenik meg, ha az Az-verzió újra konfigurálva van az Azure Portal vagy az API használatával.
  • Az importált PowerShell 7.4-modul a feladat végrehajtása során lesz érvényesítve. Győződjön meg arról, hogy a kiválasztott modul összes függősége is importálva van a sikeres feladatvégrehajtás érdekében.
  • Az Azure runbook nem támogatja Start-Job a -credential.
  • Az Azure nem támogatja az összes PowerShell-bemeneti paramétert. További információ.

Ismert problémák

  • A belső fájlelérési útvonalaktól függőséget szedő runbookok, például C:\modules a szolgáltatás háttérinfrastruktúra változásai miatt meghiúsulhatnak. Módosítsa a runbook kódját, hogy meggyőződjön arról, hogy nincsenek függőségek a belső fájlelérési utakon, és a Get-ChildItem használatával lekérheti a szükséges moduladatokat.

  • Get-AzStorageAccount A parancsmag hiba miatt meghiúsulhat: A Get-AzStorageAccount parancs a modulban Az.Storagetalálható, de a modul nem tölthető be.

  • A gyermekszkriptek .\child-runbook.ps1 futtatása nem támogatott.
    Megkerülő megoldás: Használja a Start-AutomationRunbook (belső parancsmagot) vagy a Start-AzAutomationRunbook (az Az.Automation modulból), hogy elindítson egy másik runbookot a szülő runbookból.

  • Ha az ExchangeOnlineManagement modul 3.0.0-s vagy újabb verzióját használja, hibákat tapasztalhat. A probléma megoldásához győződjön meg arról, hogy kifejezetten feltölti a PowerShellGet és a PackageManagement modulokat.

  • Ha az New-AzAutomationVariable Az.Automation modul parancsmagját használja egy típusú objektum változójának feltöltéséhez, a művelet nem a várt módon működik. Megkerülő megoldás: Konvertálja az objektumot JSON-sztringgé a ConvertTo-Json parancsmaggal, majd töltse fel a változót a JSON-sztringgel annak értékeként. Ez a megoldás biztosítja a változó megfelelő kezelését az Azure Automation környezetben JSON stringként.

    Példa – Olyan PowerShell-objektum létrehozása, amely adatokat tárol az Azure-beli virtuális gépek körül

    azurepowershell
    
    # Retrieve Azure virtual machines with status information for the 'northeurope' region 
    $AzVM = Get-AzVM -Status | Where-Object {$_.Location -eq "northeurope"} 
    
    $VMstopatch = @($AzVM).Id 
    
    # Create an Azure Automation variable (This cmdlet will not fail, but the variable may not work as intended when used in the runbook.) 
    New-AzAutomationVariable -ResourceGroupName "mrg" -AutomationAccountName "mAutomationAccount2" -Name "complex1" -Encrypted $false -Value $VMstopatch 
    
    # Convert the object to a JSON string 
    $jsonString = $VMstopatch | ConvertTo-Json 
    
    # Create an Azure Automation variable with a JSON string value (works effectively within the automation runbook) 
    New-AzAutomationVariable -ResourceGroupName "mrg" -AutomationAccountName "mAutomationAccount2" -Name "complex1" -Encrypted $false -Value $jsonString 
    

PowerShell-munkafolyamat-forgatókönyvek

A PowerShell Workflow runbookok a Windows PowerShell munkafolyamaton alapulnak. Közvetlenül szerkesztheti a runbook kódját az Azure Portal szövegszerkesztőjével. Használhat offline szövegszerkesztőt is, és importálhatja a runbookot az Azure Automationbe.

Feljegyzés

A PowerShell 7.1 (előzetes verzió) és a PowerShell 7.2 nem támogatja a munkafolyamat-runbookokat.

Előnyök

  • Az összes összetett logika implementálása PowerShell-munkafolyamat-kóddal.
  • Ha hiba történik, az ellenőrzőpontok használatával folytathatja a műveletet.
  • Párhuzamos feldolgozás használata több művelet párhuzamos elvégzéséhez.
  • A magas szintű munkafolyamatok létrehozásához más grafikus runbookokat és PowerShell-munkafolyamat-runbookokat is tartalmazhat gyermek runbookokként.

Korlátozások

  • A PowerShell-munkafolyamatok nem támogatottak a PowerShell 7+ verzióiban. Ezért az elavult runbookok nem frissíthetők.
  • A párhuzamos végrehajtás nem hatékony kezelése az újabb PowerShell 7+-verziókhoz képest.
  • A PowerShell-munkafolyamat belsőleg több folyamat használatával működik. Ezért előfordulhat, hogy az egyik folyamatban elérhető modulok nem érhetők el egy másikban, és olyan kivételeket okoznak, mint a parancs nem található.
  • A runbookoknak foglalkozniuk kell a PowerShell-munkafolyamat további összetettségével, például a deszerializált objektumokkal.
  • A runbookok indítása hosszabb időt vesz igénybe, mint a PowerShell-runbookok, mivel a futtatás előtt le kell fordítani őket.
  • A parancsmaggal Start-AzAutomationRunbook a PowerShell-runbookokat csak gyermek runbookokként lehet felvenni.
  • A runbookok nem futtathatók egy Linux hibrid Runbook Worker-en.

Python-runbookok

Python runbookek a Python 3.10 alatt fordítódnak. A runbook kódját közvetlenül szerkesztheti az Azure Portal szövegszerkesztőjével. Offline szövegszerkesztőt is használhat, és importálhatja a runbookot az Azure Automationbe. A Python 2.7 és a Python 3.8 már nem támogatott a szülőtermékben, ezért javasolt runbookokat létrehozni a Python 3.10-es futtatókörnyezeti verziójában.

A Python 3.10-es futtatókörnyezet verziója jelenleg a Délkelet-Brazília és a Gov felhők kivételével minden nyilvános régióban támogatott mind a felhőbeli, mind a hibrid feladatok esetében.

Előnyök

Feljegyzés

Egy Python-csomag importálása több percet is igénybe vehet.

  • A robusztus Python-kódtárakat használja.
  • Futtatható az Azure platformon vagy hibrid Runbook-feldolgozókon.
  • Bármely 3.x verzió szkriptjei és csomagjai akkor működnek, ha a kód különböző verziókban kompatibilis.
  • A Python 3.10 Hibrid feladatok futtatásához Windows rendszeren, ezen felül bármilyen 3.x verziót telepíthet, amelyet használni szeretne.
  • A Linux rendszerű gépeken futó Python 3.10 hibrid feladatok esetében a számítógépen telepített Python 3-verziótól függünk a DSC OMSConfig és a Linux hibrid feldolgozó futtatásához. A különböző verzióknak akkor kell működniük, ha a Python 3 verziói között nem történnek kompatibilitást megszakító változások a metódusok aláírásában vagy a szerződésekben.

Korlátozások

A Python-runbookok korlátai a következők:

  • A Python 3.10-modulok esetében jelenleg csak a cp310 Linux operációs rendszert célzó kerékfájlok támogatottak. További információ
  • A forrásvezérlő integrációja nem támogatott.
  • A Python 3.10 egyéni csomagjai csak a feladatfuttatás során vannak érvényesítve. A feladat várhatóan sikertelen lesz, ha a csomag nem kompatibilis a futtatókörnyezetben, vagy ha a szükséges csomagok függőségei nem importálhatók az Automation-fiókba.
  • A Python 3.10-es runbookok jelenleg csak az Azure Portalról és a Rest API-ból támogatottak.

Feljegyzés

A Python-runbookok indítása webhook használatával nem támogatott.

Több Python-verzió

Ez a Hibrid Windows-feldolgozókra vonatkozik. Windows Runbook Worker esetén a Python 2 runbook futtatásakor először a környezeti változót PYTHON_2_PATH keresi, és ellenőrzi, hogy érvényes végrehajtható fájlra mutat-e. Ha például a telepítési mappa C:\Python2, akkor ellenőrzi, hogy a C:\Python2\python.exe érvényes útvonal-e. Ha nem található, akkor azt keresi, hogy a PATH környezeti változó hasonló ellenőrzést végez-e.

Python 3 esetén először az PYTHON_3_PATH env változót keresi, majd visszavált a PATH környezeti változóra.

Ha csak egy Python-verziót használ, hozzáadhatja a telepítési útvonalat a PATH változóhoz. Ha mindkét verziót a Runbook Workerben szeretné használni, PYTHON_2_PATH és PYTHON_3_PATH értékét állítsa be a modul helyére ezekhez a verziókhoz.

Ismert problémák

Felhőbeli feladatok esetén a Python 3.8-feladatok néha kivételüzenettel invalid interpreter executable pathmeghiúsulnak. Ez a kivétel akkor jelenhet meg, ha a feladat késik, több mint 10 percig tart a kezdés, vagy a Start-AutomationRunbook parancsot használja a Python 3.8 runbookok indításához. Ha a feladat késik, a runbook újraindításának elegendőnek kell lennie.

Grafikus futási könyvek

Grafikus és grafikus PowerShell-munkafolyamat-forgatókönyveket az Azure Portal grafikus szerkesztőjével hozhat létre és szerkeszthet. Ezt a runbooktípust azonban nem lehet más eszközzel létrehozni vagy szerkeszteni. A grafikus runbookok fő jellemzői:

  • Az Automation-fiók fájljaiba exportálta, majd egy másik Automation-fiókba importálta.
  • PowerShell-kód létrehozása.
  • Importálás során grafikus PowerShell-munkafolyamat-runbookokra vagy onnan került átalakításra.

Előnyök

  • Használjon vizuális hivatkozás-beszúrás és konfigurálás modellt.
  • Összpontosítson arra, hogy az adatok hogyan haladnak végig a folyamaton.
  • Vizuálisan ábrázolja a felügyeleti folyamatokat.
  • A magas szintű munkafolyamatok létrehozásához vegye fel a többi runbookot gyermek runbookként.
  • A moduláris programozás ösztönzése.

Korlátozások

  • Nem hozható létre vagy nem szerkeszthető az Azure Portalon kívül.
  • Összetett logika végrehajtásához szükség lehet egy PowerShell-kódot tartalmazó kódtevékenységre.
  • Nem konvertálható a szövegformátumok egyikére, és nem konvertálhat szöveges runbookokat grafikus formátummá.
  • A grafikus munkafolyamat által létrehozott PowerShell-kód nem tekinthető meg és nem szerkeszthető közvetlenül. A létrehozott kódot bármely kódtevékenységben megtekintheti.
  • A runbookok nem futtathatók Linuxos hibrid Runbook-feldolgozón. Lásd: Az erőforrások automatizálása az adatközpontban vagy a felhőben a Hybrid Runbook Worker használatával.
  • A grafikus "runbookok" nem írhatók alá digitálisan.

Következő lépések