Azure PowerShell-parancsmagok futtatása a PowerShell-feladatokban
Az Azure PowerShell az Azure-felhőhöz való csatlakozástól és a válaszokra való várakozástól függ, ezért a legtöbb parancsmag blokkolja a PowerShell-munkamenetet, amíg választ nem kapnak a felhőből. A PowerShell-feladatok segítségével parancsmagokat futtathat a háttérben, vagy egyszerre több feladatot is elvégezhet az Azure-ban egyetlen PowerShell-munkameneten belül.
Ez a cikk rövid áttekintést nyújt az Azure PowerShell-parancsmagok PowerShell-feladatokként való futtatásáról és a befejezés ellenőrzéséről. A parancsok Azure PowerShellben való futtatásához Azure PowerShell-környezetek szükségesek, amelyek részletesen ismertetve vannak a Azure-környezetek és bejelentkezési hitelesítő adatokrészben. További információ a PowerShell-feladatokról: A PowerShell-feladatok.
Azure-környezetek PowerShell-feladatokkal
A PowerShell-feladatok különálló folyamatokként futnak csatolt PowerShell-munkamenet nélkül, ezért az Azure-beli hitelesítő adatokat meg kell osztani velük. A hitelesítő adatok Azure-környezetobjektumokként lesznek átadva az alábbi módszerek egyikével:
Automatikus kontextus-állandóság. Az alapértelmezés szerint engedélyezett kontextusmegőrzés több munkamenet során megőrzi a bejelentkezési adatait. Ha engedélyezve van a környezetmegőrzés, a rendszer az aktuális Azure-környezetet továbbítja az új folyamatnak:
Enable-AzContextAutosave # Enables context autosave if not already on $vmadmin = Get-Credential Start-Job { New-AzVM -Name MyVm -Credential $Using:vmadmin }
Adjon meg egy Azure-környezetobjektumot minden olyan Azure PowerShell-parancsmaggal, amely AzContext paraméterrel rendelkezik:
$context = Get-AzContext -Name 'mycontext' # Get an Azure context object $vmadmin = Get-Credential $job = Start-Job { New-AzVM -Name MyVm -AzContext $Using:context -Credential $Using:vmadmin }
Ha a környezetmegőrzés le van tiltva, az AzContext paraméter szükséges.
Használja a AsJob paramétert, amelyet néhány Azure PowerShell-parancsmag biztosít. Ez a kapcsoló automatikusan Elindítja a parancsmagot PowerShell-feladatként az aktív Azure-környezet használatával:
$vmadmin = Get-Credential $job = New-AzVM -Name MyVm -Credential $vmadmin -AsJob
Annak ellenőrzéséhez, hogy egy parancsmag támogatja-e AsJob, tekintse meg a referenciadokumentációját. Az AsJob paraméter nem igényli a környezet automatikus mentésének engedélyezését.
A futó feladatok állapotát a Get-Job parancsmaggal ellenőrizheti. Az eddigi feladat kimenetének lekéréséhez a Receive-Job cmdletet használja.
Ha távolról szeretné ellenőrizni egy művelet előrehaladását az Azure-ban, használja a feladat által módosított erőforrás típusához társított Get
parancsmagokat:
$vmadmin = Get-Credential
$context = Get-AzContext -Name 'mycontext'
$vmName = 'MyVm'
$job = Start-Job {
New-AzVM -Name $Using:vmName -AzContext $Using:context -Credential $Using:vmadmin
}
Get-Job -Id $job.Id
Get-AzVM -Name $vmName
Lásd még:
- Azure PowerShell-környezetek
- A PowerShell-feladatok
- Get-Job parancs
- fogadófeladat-
-
A
Using:
hatókör-módosító