Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Program Azure PowerShell zależy od nawiązywania połączenia z chmurą platformy Azure i oczekiwania na odpowiedzi, więc większość tych poleceń cmdlet blokuje sesję programu PowerShell do momentu uzyskania odpowiedzi z chmury. Zadania programu PowerShell umożliwiają uruchamianie poleceń cmdlet w tle lub wykonywanie wielu zadań na platformie Azure jednocześnie w ramach jednej sesji programu PowerShell.
Ten artykuł zawiera krótkie omówienie sposobu uruchamiania poleceń cmdlet programu Azure PowerShell jako zadań programu PowerShell i sprawdzania ukończenia. Uruchamianie poleceń w programie Azure PowerShell wymaga użycia kontekstów programu Azure PowerShell, które zostały szczegółowo omówione w kontekstach platformy Azure i poświadczeniach logowania. Aby dowiedzieć się więcej o zadaniach programu PowerShell, zobacz About PowerShell Jobs (Informacje o zadaniach programu PowerShell).
Konteksty platformy Azure z zadaniami programu PowerShell
Zadania programu PowerShell są uruchamiane jako oddzielne procesy bez dołączonej sesji programu PowerShell, więc poświadczenia platformy Azure muszą być im udostępniane. Poświadczenia są przekazywane jako obiekty kontekstu platformy Azure przy użyciu jednej z następujących metod:
Automatyczna trwałość kontekstu. Trwałość kontekstu jest domyślnie włączona i zachowuje informacje logowania w wielu sesjach. Po włączeniu trwałości kontekstu bieżący kontekst platformy Azure jest przekazywany do nowego procesu:
Enable-AzContextAutosave # Enables context autosave if not already on $vmadmin = Get-Credential Start-Job { New-AzVM -Name MyVm -Credential $Using:vmadmin }Podaj obiekt kontekstu platformy Azure za pomocą dowolnego polecenia cmdlet programu Azure PowerShell, które ma parametr AzContext :
$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 }Jeśli trwałość kontekstu jest wyłączona, wymagany jest parametr AzContext .
Użyj parametru AsJob dostarczonego przez niektóre polecenia cmdlet programu Azure PowerShell. Ten przełącznik automatycznie uruchamia polecenie cmdlet jako zadanie programu PowerShell przy użyciu aktywnego kontekstu platformy Azure:
$vmadmin = Get-Credential $job = New-AzVM -Name MyVm -Credential $vmadmin -AsJobAby sprawdzić, czy polecenie cmdlet obsługuje usługę AsJob, zapoznaj się z dokumentacją referencyjną. Parametr AsJob nie wymaga włączenia automatycznego zapisywania kontekstu.
Stan uruchomionego zadania można sprawdzić za pomocą polecenia cmdlet Get-Job . Aby uzyskać dane wyjściowe z zadania do tej pory, użyj polecenia cmdlet Receive-Job .
Aby sprawdzić postęp operacji zdalnie na platformie Azure, użyj Get poleceń cmdlet skojarzonych z typem zasobu modyfikowanego przez zadanie:
$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
Zobacz też
Azure PowerShell