Azure PowerShell är beroende av att ansluta till ett Azure-moln och vänta på svar, så de flesta av dessa cmdletar blockerar din PowerShell-session tills de får ett svar från molnet. Med PowerShell-jobb kan du köra cmdletar i bakgrunden eller utföra flera uppgifter i Azure samtidigt, inifrån en enda PowerShell-session.
Den här artikeln är en kort översikt över hur du kör Azure PowerShell-cmdletar som PowerShell-jobb och söker efter slutförande. Att köra kommandon i Azure PowerShell kräver användning av Azure PowerShell-kontexter, som beskrivs i detalj i Azure-kontexter och inloggningsuppgifter. Mer information om PowerShell-jobb finns i Om PowerShell-jobb.
Azure-kontexter med PowerShell-jobb
PowerShell-jobb körs som separata processer utan en ansluten PowerShell-session, så dina Azure-autentiseringsuppgifter måste delas med dem. Autentiseringsuppgifter skickas som Azure-kontextobjekt med någon av följande metoder:
Automatisk sammanhangsbeständighet. Kontextpersistence är aktiverat som standard och bevarar inloggningsinformationen över flera sessioner. Med kontextpersistence aktiverat skickas den aktuella Azure-kontexten till den nya processen:
Azure PowerShell
Enable-AzContextAutosave# Enables context autosave if not already on$vmadmin = Get-CredentialStart-Job {
New-AzVM -Name MyVm -Credential$Using:vmadmin
}
Ange ett Azure-kontextobjekt med valfri Azure PowerShell-cmdlet som har en AzContext parameter.
Azure PowerShell
$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
}
Om kontextpersistence är inaktiverat krävs parametern AzContext.
Använd parametern AsJob som tillhandahålls av vissa Azure PowerShell-cmdletar. Den här växeln startar automatiskt cmdleten som ett PowerShell-jobb med hjälp av den aktiva Azure-kontexten:
Om du vill se om en cmdlet stöder AsJobläser du referensdokumentationen. Parametern AsJob kräver inte att kontexten sparas automatiskt.
Du kan kontrollera statusen för ett jobb som körs med cmdleten Get-Job. Om du vill hämta utdata från ett jobb hittills använder du cmdleten Receive-Job.
Om du vill fjärrkontrollera en åtgärds förlopp i Azure använder du de Get cmdletar som är associerade med den typ av resurs som ändras av jobbet:
Källan för det här innehållet finns på GitHub, där du även kan skapa och granska ärenden och pull-begäranden. Se vår deltagarguide för mer information.
Feedback om Azure PowerShell
Azure PowerShell är ett öppen källkod projekt. Välj en länk för att ge feedback:
Den här modulen förklarar de tre typerna av jobb: lokala jobb, Windows PowerShell-fjärrjobb och CIM-jobb (Common Information Model) /WMI-jobb (Windows Management Instrumentation). Dessa jobbtyper utgör grunden för Windows PowerShell-jobbsystemet.
Lär dig de olika autentiseringstyperna för Azure PowerShell. Logga in interaktivt, med tjänstens huvudnamn eller med hanterade identiteter för Azure-resurser.