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


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 PowerShell-ben való futtatásához Azure PowerShell-környezetek szükségesek, amelyek részletesen szerepelnek az Azure-környezetekben és a bejelentkezési hitelesítő adatokban. A PowerShell-feladatokról további információt a PowerShell-feladatokról szóló cikkben talál.

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 környezetmegőrzés. A környezetmegőrzés alapértelmezés szerint engedélyezve van, és több munkamenetben megőrzi a bejelentkezési adatokat. 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 az AzContext paraméterrel rendelkező Azure PowerShell-parancsmaggal:

    $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örnyezet megőrzése le van tiltva, az AzContext paraméter szükséges.

  • Használja néhány Azure PowerShell-parancsmag által biztosított AsJob paramétert. 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 az AsJob-t, ellenőrizze annak referenciadokumentációját. Az AsJob paraméterhez nincs szükség a környezet automatikus mentésének engedélyezésére.

Egy futó feladat állapotát a Get-Job parancsmaggal ellenőrizheti. Az eddigi feladat kimenetének lekéréséhez használja a Receive-Job parancsmagot.

Ha távolról szeretné ellenőrizni egy művelet állapotát az Azure-ban, használja a Get feladat által módosított erőforrás típusához társított 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: