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

Azure PowerShell Azure Resource Manager (AzureRM) olyan parancsmagokat biztosít, amelyek a Azure Resource Manager modellt használják a virtuális Azure Stack Hub kezeléséhez.

Fontos

A PowerShell elavult verziójának weboldalát Azure Stack Hub el. Az Azure Resource Manager (AzureRM) PowerShell-modul összes verziója elavult, de nem támogatott. Az AzureRM-modulok a jövőben nem lesznek frissítve a Azure Stack Hub buildek esetében. Az Az modulok a 2002-es és újabb buildek esetében lesznek használva. A 2020-09-01-hibrid profil nem támogatott az AzureRM-modulokhoz.

Mostantól az Az PowerShell-modul az ajánlott PowerShell-modul az Azure-ral és a Azure Stack Hub. Az Az PowerShell-modullal való első lépésekért lásd: A PowerShell Az előzetes verziójú modul telepítése a Azure Stack Hub. Az Az PowerShell-modulba való áttelepítés elsajátítására. Lásd: Áttelepítés AzureRM-ről Azure PowerShell Az-be a Azure Stack Hub. A globális Azure-ban használt Az modulok megnövelt funkcióival kapcsolatos részletekért lásd: Az Azure Az PowerShell-modul bevezetése.

Az API-profilokat is használnia kell a kompatibilis végpontok megadásához 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. Például a Azure Stack Hub egy adott profilverziót támogat, például a 2019-03-01-hybrid profilverziót. Amikor telepít egy profilt, Azure Resource Manager a megadott profilnak megfelelő PowerShell-modulokat.

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

A docker Azure Resource Manager tárolóban Azure Stack Hub modulokat is futtathatja. Útmutatásért lásd: PowerShell futtatása a Docker használatával Azure Stack Hub.

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

A Azure Stack Hub és a PowerShell Azure Resource Manager modul használatának elkezdéséhez a következő előfeltételeknek kell megfelelnie:

  • PowerShell 5.1-es verzió
    A verzió ellenőrzéshez futtassa a $PSVersionTable.PSVersion verziót , és hasonlítsa össze a főverziót . Ha még nem telepítette a PowerShell 5.1-et, kövesse az Installing Windows PowerShell.

    Megjegyzés

    A PowerShell 5.1-hez Windows gép szükséges.

  • Futtassa a PowerShellt egy rendszergazda jogú parancssorban.

  • PowerShell-galéria hozzáférés
    Hozzá kell férni a PowerShell-galéria. A katalógus a PowerShell-tartalmak központi adattára. A PowerShellGet modul parancsmagokat tartalmaz a PowerShell-összetevők felderítéséhez, telepítéséhez, frissítéséhez és közzétételéhez. Ilyen összetevők például a modulok, a DSC-erőforrások, a szerepköri képességek és a PowerShell-galéria más privát adattárakból származó szkriptek. Ha leválasztott forgatókönyvben használja a PowerShellt, le kell igényelnie az erőforrásokat egy internethez csatlakozó gépről, és olyan helyen kell tárolnia őket, amely elérhető a leválasztott gép számára.

Ellenőrizze, hogy a PSGallery regisztrálva van-e adattárként.

Megjegyzés

Ehhez a lépéshez internet-hozzáférés szükséges.

Nyisson meg egy emelt szintű PowerShell-parancssort, és futtassa a következő parancsmagokat:

Install-module -Name PowerShellGet -Force
Import-Module -Name PackageManagement -ErrorAction Stop
Get-PSRepository -Name "PSGallery"

Ha az adattár nincs regisztrálva, nyisson meg egy emelt szintű PowerShell-munkamenetet, és futtassa a következő parancsot:

Register-PSRepository -Default
Set-PSRepository -Name "PSGallery" -InstallationPolicy Trusted

3. A PowerShell-modulok meglévő Azure Stack Hub 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 PowerShell-modulokból. 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 a és a mappából, amely a következővel Azurekezdődik: , C:\Program Files\WindowsPowerShell\ModulesAzAzs. vagy .C:\Users\{yourusername}\Documents\WindowsPowerShell\Modules A mappák törlésével eltávolítja a meglévő PowerShell-modulokat.

4. Csatlakoztatva: Az internetkapcsolattal Azure Stack Hub powerShell telepítése

Az API-verzióprofil és Azure Stack Hub szükséges PowerShell-modulok a futtatott Azure Stack Hub verziójától függnek.

A Azure Stack Hub PowerShell telepítése

Futtassa a következő PowerShell-szkriptet a modulok fejlesztői munkaállomásra való telepítéséhez:

A Azure Stack Hub 2002 vagy újabb:

Használhatja a felhasználói AzureRm modulokat vagy az Az előzetes verziójú modulokat. Az Az modulok használatához a 2002 Azure Stack Hub újabb szükséges.

Az Az előzetes verziójú modulok használatával kapcsolatban kövesse a PowerShell Az modul telepítését bemutató útmutatót.

# Install the AzureRM.BootStrapper module. Select Yes when prompted to install NuGet
Install-Module -Name AzureRM.BootStrapper

# Install and import the API Version Profile required by Azure Stack Hub into the current PowerShell session.
Use-AzureRmProfile -Profile 2019-03-01-hybrid -Force
Install-Module -Name AzureStack -RequiredVersion 1.8.3 

Az 1910 Azure Stack Hub es évhez:

# Install the AzureRM.BootStrapper module. Select Yes when prompted to install NuGet
Install-Module -Name AzureRM.BootStrapper

# Install and import the API Version Profile required by Azure Stack Hub into the current PowerShell session.
Use-AzureRmProfile -Profile 2019-03-01-hybrid -Force
Install-Module -Name AzureStack -RequiredVersion 1.8.0

Megjegyzés

1908 Azure Stack Hub korábbi verziókhoz:

# Install the AzureRM.BootStrapper module. Select Yes when prompted to install NuGet
Install-Module -Name AzureRM.BootStrapper

# Install and import the API Version Profile required by Azure Stack Hub into the current PowerShell session.
Use-AzureRmProfile -Profile 2019-03-01-hybrid -Force
Install-Module -Name AzureStack -RequiredVersion 1.7.2

Megjegyzés

Az Azure Stack Hub modul 1.7.2-es verziója egy friss változásverzió. Az 1.6.0 Azure Stack Hub ról való migráláshoz tekintse meg a migrálási útmutatót.

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 "Azure*" -ListAvailable
Get-Module -Name "Azs*" -ListAvailable

Ha a telepítés sikeres, AzureRm a kimenetben AzureStack megjelenik a és a modul.

5. Leválasztott: A PowerShell telepítése 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 a telepítéshez át kell azokat Azure Stack Development Kit (ASDK) számára.

Jelentkezzen be egy internetkapcsolattal bíró számítógépre, és a következő szkriptek használatával töltse le a Azure Resource Manager- és Azure Stack Hub-csomagokat a 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 2002-es vagy újabb.

Használhatja a Azure Resource Manager az Az előzetes verziójú moduljait. Az Az modulokkal kapcsolatban lásd a PowerShell Az modul telepítését.


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

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

Azure Stack Hub 1910.

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

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

Megjegyzés

Azure Stack Hub modul 1.8.0-s verziója egy friss változásverzió. A részletekért tekintse meg a kibocsátási megjegyzést.

1908 Azure Stack Hub korábbi verziókhoz:

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

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

Megjegyzés

Az Azure Stack Hub modul 1.7.1-es verziója egy fontos változás. Az 1.6.0 Azure Stack Hub ról való migráláshoz tekintse meg a migrálási útmutatót.

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 olyan gépekre vonatkozik, amelyeken nincs internetkapcsolat

Disable-AzureRmDataCollection

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 AzureStack , és telepítse a Azure Resource Manager és modulokat ebből 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"
    
    Register-PSRepository -Name $RepoName -SourceLocation $SourceLocation -InstallationPolicy Trusted
    
    Install-Module -Name AzureRM -Repository $RepoName
    
    Install-Module -Name AzureStack -Repository $RepoName
    

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 "Azure*" -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
    

Ismert probléma

Metódus get_SerializationSettings hiba

  • Ok: A PowerShell Az modul és a PowerShell Azure Resource Manager modulok nem kompatibilisek.

    A következő hiba azt jelzi, hogy Azure Resource Manager modul és az Az modul ugyanabban a munkamenetben van betöltve:

    >  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.
    
  • Szervizelés: Távolítsa el az ütköző modulokat.

    Ha az új modulokat szeretné Azure Resource Manager, távolítsa el az Az modulokat. Vagy távolítsa el a Azure Resource Manager, ha az Az modulokat szeretné használni. Zárja be a PowerShell-munkamenetet, és távolítsa el az Az vagy a Azure Resource Manager modult.

    Útmutatásért olvassa el a PowerShell-modulok meglévő verzióinak Azure Stack Hub útmutatót.

A NewAzureRMADServicePrincipal és a NewAzureRMAdApplication hiba történt

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

  • Ok: Azure Active Directory Graph, hogy a IdentifierUri Active Directory alkalmazások altartományai egy ellenőrzött tartomány altartományaiként korlátozva vannak 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 egyszerű szolgáltatásnevet kell használnia, amely a címtárbérlő altartománya. Ha például a könyvtár contoso.onmicrosoft.com, a szolgáltatásnévnek típusúnak kell lennie <foo>.contoso.onmicrosoft.com. Használja a következő parancsmagot:

      NewAzureRMADServicePrincipal -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 IdentifierUri , majd hozza létre az alkalmazást társító egyszerű szolgáltatást a következő parancsmag használatával:

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

Következő lépések