A PowerShell Az modul telepítése Azure Stack Hub

Ez a cikk bemutatja, hogyan telepítheti az Azure PowerShell Az modult és a kompatibilis Azure Stack Hub a PowerShellGet használatával. Az Az modulok a következő platformokon telepíthetők Windows macOS és Linux platformokon.

Az Az modulokat docker Azure Stack Hub is futtathatja. Útmutatásért lásd: A PowerShell futtatása a Docker használatával Azure Stack Hub.

Ha telepíteni szeretné a PowerShell erőforrásmoduljainak (AzureRM) modulját a Azure Stack Hub, tekintse meg a PowerShell AzureRMmodul telepítése a Azure Stack Hub.

Fontos

Valószínűleg nem lesznek új Azure-erőforrásmodul-modulok. Az Azure-erőforrásmodulok csak a kritikus javításokat támogatják. A 2012-hez csak Az-kiadások lesznek Azure Stack Hub.

Az API-profilok segítségével megadhatja a kompatibilis végpontokat a Azure Stack Hub erőforrás-szolgáltatók számára.

Az API-profilok lehetőséget biztosítanak az Azure és a Azure Stack Hub. Az API-verzióprofilok olyan PowerShell-modulok Azure Resource Manager, amelyek adott API-verziókat tartalmaznak. Minden felhőplatform támogatott API-verzióprofilokkal rendelkezik. A Azure Stack Hub támogatja például a 2020-09-01-hybrid profilverziót. Profil telepítésekor a rendszer telepíti a Azure Resource Manager megfelelő PowerShell-modulokat.

A kompatibilis PowerShell Azure Stack Hub Az modulokat internethez csatlakoztatott, részlegesen csatlakoztatott vagy leválasztott forgatókönyvekben is telepítheti. Ez a cikk végigvezeti az ilyen forgatókönyvek részletes utasításain.

1. Az előfeltételek ellenőrzése

Az Az modulok a 2002-es Azure Stack Hub és újabb verziókban támogatottak, és telepítve vannak az aktuális gyorsjavítások. További információt Azure Stack Hub kibocsátási megjegyzésekben.

Az Azure PowerShell Az modulok a PowerShell 5.1-es vagy újabb Windows vagy PowerShell Core 6.x vagy újabb verzióval működnek minden platformon. Telepítse az operációs PowerShell Core elérhető legújabb verzióját. Azure PowerShell nem vonatkoznak más követelmények a futtatáskor a PowerShell Core.

A PowerShell verziójának megtekintéséhez futtassa az alábbi parancsot:

$PSVersionTable.PSVersion

A Windows

Az Azure PowerShell használata PowerShell 5.1-ben Windows rendszeren:

  1. Frissítsen a Windows PowerShell 5.1-re, ha szükséges. Ha Windows 10 rendszert használ, már telepítve van a PowerShell 5.1.
  2. Telepítse a .NET-keretrendszer 4.7.2-es vagy újabb verzióját.
  3. Győződjön meg arról, hogy a PowerShellGet legújabb verziójával rendelkezik. Futtassa a következő parancsmagokat:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Install-Module PowerShellGet -MinimumVersion 2.2.3 -Force

2. A Linux és Mac előfeltételei

PowerShell Core 6.x vagy újabb verzió szükséges. Kövesse a hivatkozást az utasításokért

3. A powershell Azure Stack Hub modulok meglévő verzióinak eltávolítása

A szükséges verzió telepítése előtt győződjön meg arról, hogy eltávolította a korábban telepített Azure Stack Hub Azure Resource Manager Az PowerShell-modulokat. Távolítsa el a modulokat az alábbi két módszer egyikével:

  1. A meglévő powershell Azure Resource Manager az Az PowerShell-modulok eltávolításához zárja be az összes aktív PowerShell-munkamenetet, és futtassa a következő parancsmagokat:

    Get-Module -Name Azure* -ListAvailable | Uninstall-Module -Force -Verbose -ErrorAction Continue
    Get-Module -Name Azs.* -ListAvailable | Uninstall-Module -Force -Verbose -ErrorAction Continue
    Get-Module -Name Az.* -ListAvailable | Uninstall-Module -Force -Verbose -ErrorAction Continue
    

    Ha "A modul már használatban van" hibaüzenetet kap, zárja be a modulokat használó PowerShell-munkameneteket, és futtassa újra a fenti szkriptet.

  2. Törölje az összes olyan mappát, amely a következővel kezdődik: Azure , vagy a és a AzAzs.C:\Program Files\WindowsPowerShell\ModulesC:\Users\{yourusername}\Documents\WindowsPowerShell\Modules mappa. A mappák törlésével eltávolítja a meglévő PowerShell-modulokat.

4. Csatlakoztatva: Telepítés internetkapcsolattal

Az Azure Stack Az modul a PowerShell 5.1-es vagy annál nagyobb rendszerével fog működni egy Windows-gépen, vagy a PowerShell 6.x vagy annál nagyobb linuxos vagy macOS-platformon. Az előnyben részesített telepítési módszer a PowerShellGet-parancsmagok használata. Ez a módszer ugyanúgy működik a támogatott platformokon.

  1. Futtassa a következő parancsot egy PowerShell-munkamenetből a PowerShellGet legalább 2.2.3-as verzióra való frissítéséhez

    [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
    
    Install-Module PowerShellGet -MinimumVersion 2.2.3 -Force
    
  2. Zárja be a PowerShell-munkamenetet, majd nyisson meg egy új PowerShell-munkamenetet, hogy a frissítés hatályba léphet.

  1. Futtassa az alábbi parancsot egy PowerShell-munkamenetből:

    [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
    
    Install-Module -Name Az.BootStrapper -Force
    Install-AzProfile -Profile 2020-09-01-hybrid -Force
    Install-Module -Name AzureStack -RequiredVersion 2.1.1 
    
  1. Futtassa az alábbi parancsot egy PowerShell-munkamenetből:

    [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
    
    Install-Module -Name Az.BootStrapper -Force
    Install-AzProfile -Profile 2019-03-01-hybrid -Force
    Install-Module -Name AzureStack -RequiredVersion 2.0.2-preview -AllowPrerelease
    

Megjegyzés

Azure Stack Hub modul 2.0.2-es verziója egy fontos változás. További részleteket az AzureRM-ről az Az Azure PowerShell az Azure Stack Hub való áttelepítését Azure Stack Hub talál.

Figyelmeztetés

A PowerShell 5.1-hez Azure Resource Manager (AzureRM) és az Az modul nem telepíthető Windows egyidejűleg. Ha továbbra is elérhetőnek kell Azure Resource Manager a rendszeren, telepítse az Az modult PowerShell Core 6.x vagy újabb operációs rendszerhez. Ehhez telepítse a PowerShell Core 6.x vagy újabb, majd kövesse ezeket az utasításokat egy PowerShell Core terminálban.

5. Leválasztva: Telepítés internetkapcsolat nélkül

Leválasztott forgatókönyv esetén először le kell töltenie a PowerShell-modulokat egy olyan gépre, amely rendelkezik internetkapcsolattal. Ezután továbbítja őket a Azure Stack Development Kit (ASDK) számára.

Jelentkezzen be egy internetkapcsolattal bíró számítógépre, és a következő szkriptekkel töltse le a Azure Resource Manager Azure Stack Hub-csomagokat, attól függően, hogy milyen verziójú Azure Stack Hub.

A telepítés öt lépésből áll:

  1. Telepítse Azure Stack Hub PowerShellt egy csatlakoztatott gépre.
  2. További tárolási funkciók engedélyezése.
  3. A PowerShell-csomagokat a kapcsolat nélküli munkaállomásra szállíthatja.
  4. Manuálisan indítsa el a NuGet-szolgáltatót a leválasztott munkaállomáson.
  5. Erősítse meg a PowerShell telepítését.

A Azure Stack Hub PowerShell telepítése

Azure Stack Hub 2102-es vagy újabb.

Használhatja a Azure Resource Manager vagy az Az modult. További Azure Resource Manager a PowerShell AzureRMmodul telepítése. Az alábbi kód megbízható online adattárból menti a https://www.powershellgallery.com/ modulokat.

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Install-module -Name PowerShellGet -MinimumVersion 2.2.3 -Force
Import-Module -Name PackageManagement -ErrorAction Stop

$savedModulesPath = "<Path that is used to save the packages>"
Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name Az -Path $savedModulesPath -Force -RequiredVersion 1.10.0
Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $savedModulesPath -Force -RequiredVersion 2.1.1

Azure Stack Hub 2008-as vagy korábbi verzió.

Használhatja a Azure Resource Manager vagy az Az modult. További Azure Resource Manager a PowerShell AzureRMmodul telepítése. Az alábbi kód megbízható online adattárból menti a https://www.powershellgallery.com/ modulokat.

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Install-module -Name PowerShellGet -MinimumVersion 2.2.3 -Force
Import-Module -Name PackageManagement -ErrorAction Stop

$savedModulesPath = "<Path that is used to save the packages>"
Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name Az -Path $savedModulesPath -Force -RequiredVersion 0.10.0-preview
Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $savedModulesPath -Force -RequiredVersion 2.0.2-preview

Megjegyzés

Internetkapcsolat nélküli gépeken javasoljuk a következő parancsmag futtatását a telemetriai adatok gyűjtésének letiltására. A parancsmagok teljesítménycsökkenését tapasztalhatja a telemetriai adatok gyűjtésének letiltása nélkül. Ez csak az internetkapcsolattal nem nem csatlakozó gépekre vonatkozik

Disable-AzDataCollection

Csomagok hozzáadása a munkaállomáshoz

  1. Másolja a letöltött csomagokat egy USB-eszközre.

  2. Jelentkezzen be a kapcsolat nélküli munkaállomásra, és másolja a csomagokat az USB-eszközről a munkaállomás egy helyére.

  3. Manuálisan indítsa el a NuGet-szolgáltatót a leválasztott munkaállomáson. Útmutatásért lásd: A NuGet-szolgáltató manuális rendszerindítása olyan gépen, amely nem csatlakozik az internethez.

  4. Regisztrálja ezt a helyet alapértelmezett adattárként, és telepítse a és modulokat ebből AzureRMAzureStack az adattárból:

 # requires -Version 5
 # requires -RunAsAdministrator
 # requires -Module PowerShellGet
 # requires -Module PackageManagement

 $SourceLocation = "<Location on the development kit that contains the PowerShell packages>"
 $RepoName = "MyNuGetSource"

 [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

 Register-PSRepository -Name $RepoName -SourceLocation $SourceLocation -InstallationPolicy Trusted

 Install-Module -Name AzureStack -Repository $RepoName -RequiredVersion 2.1.1 -Scope AllUsers

 Install-Module -Name Az -Repository $RepoName -RequiredVersion 1.10.0 -Scope AllUsers
# requires -Version 5
# requires -RunAsAdministrator
# requires -Module PowerShellGet
# requires -Module PackageManagement

$SourceLocation = "<Location on the development kit that contains the PowerShell packages>"
$RepoName = "MyNuGetSource"

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12

Register-PSRepository -Name $RepoName -SourceLocation $SourceLocation -InstallationPolicy Trusted

Install-Module -Name AzureStack -Repository $RepoName -RequiredVersion 2.0.2-preview -AllowPrerelease -Scope AllUsers

Install-Module -Name Az -Repository $RepoName -RequiredVersion 0.10.0-preview -Scope AllUsers

A PowerShell telepítésének megerősítése

Erősítse meg a telepítést a következő parancs futtatásával:

Get-Module -Name "Az*" -ListAvailable
Get-Module -Name "Azs*" -ListAvailable

6. A PowerShell konfigurálása proxykiszolgáló használatára

Olyan esetekben, amikor proxykiszolgálónak kell hozzáférnie az internethez, először konfigurálja a PowerShellt egy meglévő proxykiszolgáló használatára:

  1. Nyisson meg egy emelt szintű PowerShell-parancssort.

  2. Futtassa az alábbi parancsot:

    #To use Windows credentials for proxy authentication
    [System.Net.WebRequest]::DefaultWebProxy.Credentials = [System.Net.CredentialCache]::DefaultCredentials
    
    #Alternatively, to prompt for separate credentials that can be used for #proxy authentication
    [System.Net.WebRequest]::DefaultWebProxy.Credentials = Get-Credential
    

7. Az Az modul használata

Használhatja a parancsmagokat és a kódmintákat a Azure Resource Manager. Azonban módosítania kell a modulok és a parancsmagok nevét. A modulnevek úgy módosultak, hogy az Azure és a lesz, és ugyanaz AzureRMAz a parancsmagok esetén. Az AzureRM.Compute modul új neve például Az.Compute.A New-AzureRMVM New-AzVM lett, a Get-AzureStorageBlob pedig Get-AzStorageBlob.

Az AzurRM-szkript az Az modulba való áthelyezéséhez és az Azure Stack Hub Az moduljának Azure Stack Hub-beli jelentős változásokhoz való áthelyezéséhez tekintse meg az AzureRM-ről az Az-be való áttelepítést Azure PowerShell útmutatót.

Ismert problémák

Hiba történt az Az modulok telepítésekor

  • Alkalmazható: Ez a probléma a 2002-es és újabb
  • Ok: A modul telepítésekor a rendszer hibát ad vissza. Megkezdődik a hibaüzenet: Vagy a Register-PacakgeSource : A parameter cannot be found that matches parameter name. 'PackageManagementProvider'. hibaüzenet a következő szöveget tartalmazhatja: PackageManagement\Install-Package : Cannot convert value "2.0.1-preview" to type "System.Version". Error: "Input string was not in a correct format."
  • Szervizelés: Futtassa a következő parancsmagot ugyanabban a munkamenetben:
    Install-Module PowershellGet -MinimumVersion 2.3.0 -Force
    Zárja be a munkamenetet, és indítson el egy új emelt szintű PowerShell-munkamenetet.
  • Előfordulás: Gyakori

Az Az modul telepítésekor a rendszer tévesen rendszergazdai jogosultságokat megkövetelő hibaüzenetet ad vissza

  • Alkalmazható: Ez a probléma a 2002-es és újabb
  • Ok: Ha emelt szintű parancssorból telepíti a modult, a rendszer hibát jelez. A hiba a következő: Administrator rights required .
  • Szervizelés: Zárja be a munkamenetet, és indítson el egy új emelt szintű PowerShell-munkamenetet. Győződjön meg arról, hogy nem létezik meglévő Az. A munkamenetbe betöltött fiókok modulja.
  • Előfordulás: Gyakori

A parancsmagok New-AzVmss 2020-09-01-hibrid profil használata esetén meghiúsulnak

PowerShell-szkript futtatásakor észlelt hiba

  • Alkalmazható: Ez a probléma a 2002-es és újabb kiadásra vonatkozik.

  • Ok: Ha szkripteket vagy PowerShell-parancsokat futtat Azure Stack Hub adott modulokkal, a szkriptnek vagy parancsnak elérhetőnek kell lennie a modulban. A következő hibaüzenet jelenhet meg:

    Method 'get_SerializationSettings' in type 'Microsoft.Azure.Management.Internal.Resources.ResourceManagementClient' from assembly 'Microsoft.Azure.Commands.ResourceManager.Common, Version=4.0.0.0, 
    Culture=neutral, PublicKeyToken=31bf3856ad364e35' does not have an implementation.
    

    Az aktuális modul a PowerShell Az modul, amely felváltja a PowerShell AzureRM modult. Ha olyan szkriptet próbál futtatni, amely AzureRM-parancsokat hív meg az Az modul telepítésekor, a szkript hibákat fog tartalmazni. Vagy ha olyan szkriptet próbál futtatni, amely az AzureRM modul telepítésekor az Az parancsokat hívja meg, a szkript hibákat fog tartalmazni.

  • Szervizelés: Távolítsa el az AzureRM modult, és telepítse az Az modult. Útmutatásért lásd: Install PowerShell Az module for Azure Stack Hub. Ha a Azure Stack Hub Toolst használja, használja az Az-eszközöket. Klónozza az eszköztárat az az ágból, vagy töltse le AzureStack-Tools az az ágból. Útmutatásért lásd: Download Azure Stack Hub tools from GitHub

  • Előfordulás: Gyakori

Hiba történt a New-AzADServicePrincipal és a New-AzADApplication

  • Alkalmazható: Azure Stack (Azure AD Azure Active Directory használó környezetek.

  • Ok: Azure Active Directory Graph, hogy a Active Directory-alkalmazások altartományai egy ellenőrzött tartomány altartományaiként korlátozva legyen IdentifierUri a címtárban. A módosítás előtt ez a korlátozás csak a több-bérlős alkalmazásokra volt kényszerítve. Ez a korlátozás mostantól az egybérlős alkalmazásokra is vonatkozik. A módosítás a következő hibát eredményezi: Values of identifierUris property must use a verified domain of the organization or its subdomain' is displayed when running .

  • Szervizelés: Ezt a korlátozást kétféleképpen lehet orvosolni.

    • Olyan szolgáltatásnévre lesz szüksége, amely a címtárbérlő altartománya. Ha például a könyvtár , a szolgáltatásnévnek a következő contoso.onmicrosoft.com formának kell lennie: <foo>.contoso.onmicrosoft.com . Használja a következő parancsmagot:

      New-AzADServicePrincipal -Role Owner -DisplayName <foo>.contoso.onmicrosoft.com
      

      További információ az identitásról és a szolgáltatásnévnek a Azure Stack Hub való használatával kapcsolatban: Overview of identity providers for Azure Stack Hub.

    • Hozza létre az érvényes azure AD-alkalmazást, majd hozza létre az alkalmazást társító egyszerű szolgáltatást a IdentifierUri következő parancsmag használatával:

      $app=New-AzADApplication -DisplayName 'newapp' -IdentifierUris http://anything.contoso.onmicrosoft.com
      New-AzADServicePrincipal -Role Owner -ApplicationId $app.ApplicationId
      
  • Előfordulás: Gyakori

Következő lépések