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. A folyamatautomatizálási környezettel kapcsolatos további információkért lásd : Runbook-végrehajtás az Azure Automationben.
Típus | Leírás |
---|---|
PowerShell | Windows PowerShell-szkriptelésen alapuló szöveges runbook. A jelenleg támogatott verziók a következők: PowerShell 7.2 (GA) és PowerShell 5.1 (GA). Mivel a PowerShell 7.1-et már nem támogatja a szülőtermék, a PowerShell 7.2-es verziójában javasolt runbookokat létrehozni |
PowerShell-munkafolyamat | Szöveges runbook a Windows PowerShell-munkafolyamat szkriptelésén alapul. |
Python | Python-szkriptelésen alapuló szöveges runbook. A jelenleg támogatott verziók a következők: Python 3.8 (GA) és Python 3.10 (előzetes verzió). Mivel a Python 2.7-et már nem támogatja a Python szülőterméke, javasoljuk, hogy hosszú távon támogatott verziókban hozzon létre runbookokat. |
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 a Windows PowerShell-munkafolyamat alapján, és teljesen az Azure Portal grafikus szerkesztőjében lett létrehozva és szerkesztve. |
Feljegyzés
Az Azure Automation a PowerShell- és Python-nyelvi verziók támogatási életciklusát követi a PowerShell és a Python szülőtermékek által közzétett ütemterveknek megfelelően. Javasoljuk, hogy runbookokat használjon támogatott nyelvi verziókkal.
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ó: Gyermek runbookok az Azure Automationben.
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ó (azaz 7.2-es, 7.1-es (előzetes verzió) vagy 5.1-es 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.2-es futtatókörnyezeti verziója mind a felhőbeli, mind a hibrid feladatok esetében támogatott, kivéve Közép-India, az Egyesült Arab Emírségek középső régiója, Izrael középső régiója, Észak-Olaszország és Észak-Németország.
- A runbook végrehajtásakor, ha a Futtatókörnyezet verziója 7.2-es verziót választja, a 7.2-es futtatókörnyezeti verziót célzó PowerShell-modulok lesznek használatban, és ha a futtatókörnyezet 5.1-es verzióját választja, akkor az 5.1-es futtatókörnyezeti verziót célzó PowerShell-modulok lesznek használatban. Ez a PowerShell 7.1 (előzetes verzió) moduljaira és runbookjaira vonatkozik.
Győződjön meg arról, hogy a modulokhoz megfelelő futtatókörnyezeti verziót választja ki.
Ha például a 7.1-es verzióban (előzetes verzió) futtat egy SharePoint-automatizálási forgatókönyvhöz tartozó runbookot, importálja a modult a 7.1-es futtatókörnyezetben (előzetes verzió); ha egy SharePoint-automatizálási forgatókönyvhöz futtat egy runbookot az 5.1-es futtatókörnyezetben, importálja a modult az 5.1-es futtatókörnyezetben. Ebben az esetben két bejegyzés jelenik meg a modulhoz, az egyik a Futtatókörnyezet 7.1-es verziójához (előzetes verzió), a másik pedig az 5.1-es verzióhoz.
Feljegyzés
Jelenleg a PowerShell 5.1, a PowerShell 7.1 (előzetes verzió) és a PowerShell 7.2 támogatott.
Előnyök
- A PowerShell-munkafolyamat egyéb összetettsége nélkül implementálhat minden összetett logikát PowerShell-kóddal.
- Kezdje gyorsabban, mint a PowerShell-munkafolyamat-runbookok, mivel a futtatás előtt nem kell lefordítani őket.
- Futtassa az Azure-ban és a hibrid runbook-feldolgozókon Windows és Linux rendszeren egyaránt.
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.2-es futtatókörnyezeti verziója mind a felhőbeli, mind a hibrid feladatok esetében támogatott, kivéve Közép-India, az Egyesült Arab Emírségek középső régiója, Izrael középső régiója, Észak-Olaszország és Észak-Németország.
- A PowerShell 7.2 futtatókörnyezet verziója esetében a modultevékenységek nem lesznek kinyerve az importált modulokhoz. A VS-kódhoz 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ót a PowerShell-munkafolyamatban talál további részletekért.
- 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.2-t. Emellett a forrásvezérlőben lévő PowerShell 7.2-runbookok runtime 5.1-ként jönnek létre az Automation-fiókban.
- Az Az module 8.3.0 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.2-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: AGet-AzStorageAccount
parancs a modulbanAz.Storage
található, de a modul nem tölthető be.A gyermekszkriptek
.\child-runbook.ps1
futtatása nem támogatott.
Megkerülő megoldás: HasználjonStart-AutomationRunbook
(belső parancsmag) vagyStart-AzAutomationRunbook
(az Az.Automation modulból) 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 kerülő megoldás biztosítja a változó megfelelő kezelését az Azure Automation-környezetben JSON-sztringként.
Példa – Olyan PowerShell-objektum létrehozása, amely adatokat tárol az Azure-beli virtuális gépek körül
# 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-munkafolyamat-runbookok a Windows PowerShell-munkafolyamaton alapuló forgatókönyvek. 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.
- 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 linuxos hibrid runbook-feldolgozón.
Python-runbookok
A Python-runbookok a Python 2.7 (GA), a Python 3.8 (GA) és a Python 3.10 (előzetes verzió) alatt fordíthatók le. 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 3.10 -es (előzetes verziójú) futtatókörnyezeti verzió jelenleg a felhőbeli és a hibrid feladatok esetében is támogatott az összes nyilvános régióban, kivéve Ausztrália középső régiójában, Dél-Korea déli részén, Dél-Svédországban, Jio India középső régiójában, Brazília déli régiójában, Közép-Indiában, Nyugat-Indiában, az Egyesült Arab Emírségek középső régiójában és a Gov-felhőkben.
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-ban vagy hibrid runbook-feldolgozókon.
- A Python 2.7-ben a Windows Hibrid Runbook-feldolgozók támogatottak a Python 2.7-ben .
- A Python 3.8 Cloud Jobs esetében a Python 3.8 verziója támogatott. 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.8 Hibrid feladatok windowsos gépeken való telepítése mellett bármilyen 3.x verziót telepíthet.
- A Linux rendszerű gépeken futó Python 3.8 hibrid feladatok esetében a gépen telepített Python 3-verziótól függünk, hogy a DSC OMSConfig és a Linux hibrid feldolgozó fut-e. A különböző verzióknak akkor kell működnie, ha a Python 3 verziói között nem változnak kompatibilitástörő változások a metódusadákban vagy a szerződésekben.
Korlátozások
Az alábbiakban a Python-runbookok korlátait ismertetjük
- Python 3.10 (előzetes verzió) 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 (előzetes verzió) 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 (előzetes verziójú) runbookok jelenleg csak az Azure Portalon támogatottak. A Rest API és a PowerShell 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 C:\Python2\python.exe
, hogy érvényes-e az elérési út. 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-feldolgozóban szeretné használni, állítsa be PYTHON_2_PATH
és PYTHON_3_PATH
állítsa be a modul helyét 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 path
meghiúsulnak. Ez a kivétel akkor jelenhet meg, ha a feladat késik, több mint 10 percet kezd, vagy a Start-AutomationRunbook használatával indítja el a Python 3.8 runbookokat. Ha a feladat késik, a runbook újraindításának elegendőnek kell lennie.
Grafikus runbookok
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 közben grafikus PowerShell-munkafolyamat-runbookokká konvertálva vagy abból.
Előnyök
- Használjon vizuális beszúrási hivatkozás-konfigurálási szerzői 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: Erőforrások automatizálása az adatközpontban vagy a felhőben hibrid runbook-feldolgozó használatával.
- A grafikus runbookok nem írhatók alá digitálisan.
Következő lépések
- A PowerShell-runbookokkal kapcsolatos további információkért lásd : Oktatóanyag: PowerShell-runbook létrehozása.
- A PowerShell-munkafolyamat-runbookokkal kapcsolatos további információkért lásd : Oktatóanyag: PowerShell-munkafolyamat-runbook létrehozása.
- A grafikus runbookokról a következő oktatóanyagban tájékozódhat : Grafikus runbook létrehozása.
- A Python-runbookokról a Következő oktatóanyagban tájékozódhat : Python-runbook létrehozása.