PowerShell Az- és Azure Stack-modulok telepítése az Azure Stack Hubhoz
Az Azure Stack Hub verziója | AzureStack PowerShell-verzió |
---|---|
2102 | 2.1.1 |
2108 | 2.2.0 |
2206 | 2.3.0 |
2301+ | 2.4.0 |
Az AzureStack-modulokkal kapcsolatos további információkért lásd a PSGalleryt.
Ez a cikk bemutatja, hogyan telepítheti az Azure PowerShell Az és a kompatibilis Azure Stack Hub-rendszergazdai modulokat a PowerShellGet használatával. Az Az-modulok Telepíthetők Windows, macOS és Linux platformokra.
Az Azure Stack Hubhoz készült Az-modulokat egy Docker-tárolóban is futtathatja. Útmutatásért lásd: A Docker használata az Azure Stack Hubhoz készült PowerShell futtatásához.
Ha az Azure Stack Hubhoz készült PowerShell-erőforrásmodulokat (AzureRM) szeretné telepíteni, olvassa el a PowerShell AzureRM-modul telepítése az Azure Stack Hubhoz című témakört.
Fontos
Nem lesznek új Azure Resource Modules-modulkiadások. Az Azure-erőforrásmodulok moduljai csak a kritikus javításokat támogatják. A továbbiakban csak Az-kiadások lesznek az Azure Stack Hubhoz.
API-profilokkal megadhatja az Azure Stack Hub-erőforrás-szolgáltatók kompatibilis végpontjait.
Az API-profilok lehetővé teszik az Azure és az Azure Stack Hub közötti verziókülönbségek kezelését. Az API-verzióprofilok az Azure Resource Manager PowerShell-modulok meghatározott API-verziókkal rendelkező készletei. Minden felhőplatform támogatott API-verzióprofilokat biztosít. Az Azure Stack Hub például egy adott profilverziót támogat, például a 2020-09-01-hybrid verziót. Profil telepítésekor a rendszer telepíti a megadott profilnak megfelelő Azure Resource Manager PowerShell-modulokat.
Az Azure Stack Hub-kompatibilis PowerShell Az-modulokat internetkapcsolattal, részlegesen csatlakoztatott vagy leválasztott forgatókönyvekben telepítheti. Ez a cikk végigvezeti az ilyen forgatókönyvekre vonatkozó részletes utasításokon.
1. Az előfeltételek ellenőrzése
Az Az-modulok támogatottak az Azure Stack Hubon a 2002-s vagy újabb frissítéssel, valamint az aktuális gyorsjavításokkal. További információért tekintse meg az Azure Stack Hub kibocsátási megjegyzéseit .
Az Azure PowerShell Az-modulok a PowerShell 5.1-et vagy újabb verziót használják Windows rendszeren, vagy a PowerShell Core 6.x és újabb verzióit minden platformon. Telepítenie kell az operációs rendszerhez elérhető PowerShell Core legújabb verzióját . Azure PowerShell a PowerShell Core-on való futtatáskor nincs más követelmény.
A PowerShell verziójának megtekintéséhez futtassa az alábbi parancsot:
$PSVersionTable.PSVersion
A Windows előfeltételei
Az Azure PowerShell használata PowerShell 5.1-ben Windows rendszeren:
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.
Telepítse a .NET-keretrendszer 4.7.2-es vagy újabb verzióját.
Győződjön meg arról, hogy a PowerShellGet legújabb verziójával rendelkezik. Futtassa a következő parancsmagokat egy emelt szintű parancssorból:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 powershell -noprofile $PSVersionTable Uninstall-Module PowershellGet -AllVersions -Force -Confirm:$false Get-module PowershellGet Find-module PowershellGet Install-Module PowershellGet -MinimumVersion 2.2.3 -Force
2. Előfeltételek Linuxhoz és Machez
PowerShell Core 6.x vagy újabb verzióra van szükség. Útmutatásért kövesse a hivatkozást
3. Az Azure Stack Hub PowerShell-modulok meglévő verzióinak eltávolítása
A szükséges verzió telepítése előtt távolítsa el a korábban telepített Azure Stack Hub Azure Resource Manager- vagy Az PowerShell-modulokat. Távolítsa el a modulokat az alábbi két módszer egyikével:
A meglévő Azure Resource Manager- és 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 kapja, zárja be a modulokat használó PowerShell-munkameneteket, és futtassa újra a fenti szkriptet.
Ha a Uninstall-Module nem sikerült, törölje az összes mappát, amely a következővel
Azure
kezdődik: ,Az
, vagyAzs.
a $env:PSModulePath helyekről. A Windows PowerShell esetében a helyek lehetnekC:\Program Files\WindowsPowerShell\Modules
ésC:\Users\{yourusername}\Documents\WindowsPowerShell\Modules
. A PowerShell Core esetében a helyek lehetnekC:\Program Files\PowerShell\7\Modules
ésC:\Users\{yourusername}\Documents\PowerShell\Modules
. A mappák törlése eltávolítja a meglévő Azure PowerShell modulokat.
4. Csatlakoztatva: Telepítés internetkapcsolattal
Az Azure Stack Az modul a PowerShell 5.1-es vagy újabb verziójával fog működni Windows rendszerű gépen, illetve PowerShell 6.x vagy újabb 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.
Futtassa a következő parancsot egy PowerShell-munkamenetből a PowerShellGet minimális 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
Zárja be a PowerShell-munkamenetet, majd nyisson meg egy új PowerShell-munkamenetet, hogy a frissítés érvénybe lépjen.
Az Az-modulok telepítéséhez futtassa az alábbiakat.
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 Install-Module -Name Az.BootStrapper -Force Install-AzProfile -Profile 2020-09-01-hybrid -Force
Telepítse az AzureStack PowerShell-modulokat.
Install-Module -Name AzureStack -RequiredVersion 2.4.0
Install-Module -Name AzureStack -RequiredVersion 2.3.0
Install-Module -Name AzureStack -RequiredVersion 2.2.0
Install-Module -Name AzureStack -RequiredVersion 2.1.1
Figyelmeztetés
A Windows PowerShell 5.1-hez nem telepíthető egyszerre az Azure Resource Manager (AzureRM) és az Az modul is. Ha elérhetővé kell tenni az Azure Resource Manager a rendszeren, telepítse a PowerShell Core 6.x vagy újabb verziójához készült Az modult. Ehhez telepítse a PowerShell Core 6.x vagy újabb verzióját, 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 letölti a PowerShell-modulokat egy internetkapcsolattal rendelkező gépre. Ezután át kell vinnie őket az Azure Stack Fejlesztői Készletbe (ASDK) a telepítéshez.
Jelentkezzen be egy internetkapcsolattal rendelkező számítógépre, és az alábbi szkriptekkel töltse le az Azure Resource Manager és az Azure Stack Hub csomagokat az Azure Stack Hub verziójától függően.
A telepítés öt lépésből áll:
- Telepítse az Azure Stack Hub PowerShellt egy csatlakoztatott gépre.
- További tárolási funkciók engedélyezése.
- A PowerShell-csomagok átvitele a leválasztott munkaállomásra.
- Manuálisan indítsa el a NuGet-szolgáltatót a leválasztott munkaállomáson.
- Ellenőrizze a PowerShell telepítését.
Az Azure Stack Hub PowerShell telepítése
Használhatja az AzureRM-et vagy az Az-modulokat . Az alábbi kód menti az Az-modulokat a megbízható online adattárból https://www.powershellgallery.com/.
[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 2.0.1
Az Az-modulok telepítése után folytassa az AzureStack-modulok telepítésével.
Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $savedModulesPath -Force -RequiredVersion 2.4.0
Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $savedModulesPath -Force -RequiredVersion 2.3.0
Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $savedModulesPath -Force -RequiredVersion 2.2.0
Save-Package -ProviderName NuGet -Source https://www.powershellgallery.com/api/v2 -Name AzureStack -Path $savedModulesPath -Force -RequiredVersion 2.1.1
Megjegyzés
Internetkapcsolattal nem rendelkező gépeken javasoljuk, hogy hajtsa végre az alábbi parancsmagot a telemetriai adatgyűjtés letiltására. Előfordulhat, hogy a parancsmagok teljesítménycsökkenését tapasztalja a telemetriai adatgyűjtés letiltása nélkül. Ez csak az internetkapcsolattal nem rendelkező gépekre vonatkozik
Disable-AzDataCollection
Csomagok hozzáadása a munkaállomáshoz
Másolja a letöltött csomagokat egy USB-eszközre.
Jelentkezzen be a leválasztott munkaállomásra, és másolja a csomagokat az USB-eszközről a munkaállomás egy helyére.
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 indítása olyan gépen, amely nem csatlakozik az internethez.
Regisztrálja ezt a helyet alapértelmezett adattárként, és telepítse az
AzureRM
ésAzureStack
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" [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 Register-PSRepository -Name $RepoName -SourceLocation $SourceLocation -InstallationPolicy Trusted
Telepítse az Az-modulokat.
Install-Module -Name Az -Repository $RepoName -RequiredVersion 2.0.1 -Scope AllUsers
Telepítse az AzureStack-modulokat.
Install-Module -Name AzureStack -Repository $RepoName -RequiredVersion 2.4.0 -Scope AllUsers
Install-Module -Name AzureStack -Repository $RepoName -RequiredVersion 2.3.0 -Scope AllUsers
Install-Module -Name AzureStack -Repository $RepoName -RequiredVersion 2.2.0 -Scope AllUsers
Install-Module -Name AzureStack -Repository $RepoName -RequiredVersion 2.1.1 -Scope AllUsers
A PowerShell telepítésének megerősítése
A telepítés megerősítéséhez futtassa a következő parancsot:
Get-Module -Name "Az*" -ListAvailable
Get-Module -Name "Azs*" -ListAvailable
6. A PowerShell konfigurálása proxykiszolgáló használatára
Azokban az esetekben, amelyekhez proxykiszolgálóra van szükség az internethez való hozzáféréshez, először konfigurálja a PowerShellt egy meglévő proxykiszolgáló használatára:
Nyisson meg egy emelt szintű PowerShell-parancssort.
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
Az AzureRM-modulokon alapuló parancsmagokat és kódmintákat használhatja. Azonban módosítania kell a modulok és parancsmagok nevét. A modulnevek módosultak, így az AzureRM
Azure -ból Az
lett , és ugyanezek a parancsmagok esetében is. 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-ba való áthelyezéséről és az Azure Stack Hub Az moduljának kompatibilitástörő változásairól részletesebben lásd: Migrálás az AzureRM-ből Azure PowerShell Az-be.
Ismert problémák
Hiba történt az Az-modulok telepítésekor
- Alkalmazható: Ez a probléma 2002-ben és későbbre vonatkozik
- Ok: A modul telepítésekor hiba történik. Ekkor megkezdődik a hibaüzenet:
Register-PacakgeSource : A parameter cannot be found that matches parameter name. 'PackageManagementProvider'.
Vagy a 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 tévesen Rendszergazda szükséges jogosultságokkal kapcsolatos hiba jelenik meg
- Alkalmazható: Ez a probléma 2002-ben és későbbre vonatkozik
- Ok: Ha emelt szintű parancssorból telepíti a modult, hibaüzenet jelenik meg. 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 nincs meglévő Az. A munkamenetbe betöltött Fiókok modul.
- Előfordulás: Gyakori
A 2020-09-01 hibrid profil használatakor a parancsmag New-AzVmss meghiúsul
- Alkalmazható: Ez a probléma a 2020-09-01-hybrid profilra vonatkozik.
- Ok: A New-AzVmss parancsmag nem működik a 2020-09-01-hybrid profillal.
- Szervizelés: Használjon sablont a virtuálisgép-méretezési csoport létrehozásához. Az Azure Stack Hub Resource Manager sablonjait az AzureStack-QuickStart-Templates/101-vmss-windows-vm GitHub-adattárban találja, és útmutatást talál az Azure Stack Hub erőforrás-kezelőinek a Visual Studio Code-tal való használatához.
- Előfordulás: Gyakori
Hiba történt PowerShell-szkript futtatásakor
Alkalmazható: Ez a probléma 2002-ben és későbbre vonatkozik.
Ok: Ha szkripteket vagy PowerShell-parancsokat futtat az Azure Stack Hub adott moduljaival, szüksége lesz arra, hogy a szkript vagy a parancs elérhető legyen 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áltotta 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 jelezni. Vagy ha olyan szkriptet próbál futtatni, amely Az-parancsokat hív meg az AzureRM-modul telepítésekor, a szkript hibákat fog jelezni.
Szervizelés: Távolítsa el az AzureRM-modult, és telepítse az Az modult. Útmutatásért lásd: Az Azure Stack Hubhoz készült PowerShell Az modul telepítése. Ha az Azure Stack Hub Toolst használja, használja az Az-eszközöket. Klónozza az eszközök adattárát az az ágból, vagy töltse le az AzureStack-Tools az az ágból. Útmutatásért lásd: Azure Stack Hub-eszközök letöltése a GitHubról
Előfordulás: Gyakori
Hiba New-AzADServicePrincipal és New-AzADApplication
Alkalmazható: Azure Stack-környezetek Microsoft Entra ID használatával.
Ok: Az Azure Active Directory Graph kompatibilitástörő változást vezetett be, amely korlátozza, hogy az
IdentifierUri
Active Directory-alkalmazások egy ellenőrzött tartomány altartományai legyenek a címtárban. A módosítás előtt ezt a korlátozást csak a több-bérlős alkalmazásokra kényszerítették. 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 megkerülheti.
A szolgáltatásnév a címtárbérlő altartománya. Ha például a könyvtár ,
contoso.onmicrosoft.com
a szolgáltatásnévnek a következő formában<foo>.contoso.onmicrosoft.com
kell lennie: . Használja a következő parancsmagot:New-AzADServicePrincipal -Role Owner -DisplayName <foo>.contoso.onmicrosoft.com
Az identitással és a szolgáltatásnevek Azure Stack Hubbal való használatával kapcsolatos további információkért lásd: Az Azure Stack Hub identitásszolgáltatóinak áttekintése.
Hozza létre a Microsoft Entra alkalmazást, amely érvényes
IdentifierUri
, majd hozza létre a szolgáltatásnevet az alkalmazás társításával a 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
Hiba: "A SharedTokenCacheCredential hitelesítés sikertelen"
- Alkalmazható: Ez a probléma az összes támogatott kiadásra vonatkozik.
- Ok: A SharedTokenCacheCredential hitelesítési hiba akkor jelenik meg, ha az AzAccounts több verziója is telepítve van az Azure Stack Hub PowerShell-modul 2.1.1-es verziójával.
- Szervizelés: Távolítsa el az AzAccounts összes verzióját, és csak a támogatott AzAccounts 2.2.8-es verzióját telepítse.
- Előfordulás: Gyakori