Instalace modulu AzureRM PowerShellu pro Azure Stack Hub

Azure PowerShell Azure Resource Manager (AzureRM) poskytuje sadu rutin, které používají model Azure Resource Manager pro správu vašich Azure Stack Hub prostředků.

Důležité

Dostali jste se na webovou stránku pro zastaralou verzi Azure Stack Hub PowerShellu. Všechny verze modulu PowerShellu Azure Resource Manager (AzureRM) jsou zastaralé, ale nepodporují se. Moduly AzureRM se už nebudou v budoucnu aktualizovat Azure Stack Hub sestavení. Moduly Az se budou používat pro sestavení 2002 a novější. Hybridní profil z 1. 9. 2020 se pro moduly AzureRM nepodporuje.

Modul Az PowerShell je teď doporučeným modulem PowerShellu pro práci s Azure a Azure Stack Hub. Pokud chcete začít s modulem Az PowerShell, podívejte se na modul Instalace modulu Az Preview PowerShellu pro Azure Stack Hub. Zjistěte, jak migrovat na modul Az PowerShell. viz Migrace z AzureRM na Azure PowerShell Az v Azure Stack Hub. Podrobnosti o zvýšených funkcích modulů Az, které byly přijaty v globálním Azure, najdete v tématu Seznámování s modulem Azure Az PowerShell.

K určení kompatibilních koncových bodů pro poskytovatele prostředků Azure Stack Hub rozhraní API.

Profily rozhraní API poskytují způsob, jak spravovat rozdíly verzí mezi Azure a Azure Stack Hub. Profil verze rozhraní API je sada modulů Azure Resource Manager s konkrétními verzemi rozhraní API. Každá cloudová platforma má sadu podporovaných profilů verzí rozhraní API. Například Azure Stack Hub konkrétní verzi profilu, například 2019-03-01-hybrid. Při instalaci profilu se nainstalují Azure Resource Manager moduly PowerShellu, které odpovídají zadanému profilu.

Moduly PowerShellu Azure Stack Hub kompatibilní s internetem, částečně připojené nebo odpojené scénáře. Tento článek vás provede podrobnými pokyny pro tyto scénáře.

Můžete také spustit moduly Azure Resource Manager pro Azure Stack Hub v kontejneru Dockeru. Pokyny najdete v tématu Použití Dockeru ke spuštění PowerShellu pro Azure Stack Hub.

1. Ověření požadavků

Než začnete pracovat s Azure Stack Hub a modulem PowerShell Azure Resource Manager, musíte mít následující požadavky:

  • PowerShell verze 5.1
    Pokud chcete zkontrolovat verzi, spusťte $PSVersionTable.PSVersion a porovnejte hlavní verzi. Pokud nemáte PowerShell 5.1, postupujte podle pokynů v Windows PowerShell.

    Poznámka

    PowerShell 5.1 vyžaduje Windows počítače.

  • Spusťte PowerShell na příkazovém řádku se zvýšenými oprávněními.

  • Galerie prostředí PowerShell přístup
    Potřebujete přístup k Galerie prostředí PowerShell. Galerie je centrální úložiště pro obsah PowerShellu. Modul PowerShellGet obsahuje rutiny pro zjišťování, instalaci, aktualizaci a publikování artefaktů PowerShellu. Příkladem těchto artefaktů jsou moduly, prostředky DSC, možnosti rolí a skripty z Galerie prostředí PowerShell a dalších privátních úložišť. Pokud používáte PowerShell v odpojené situaci, musíte načíst prostředky z počítače s připojením k internetu a uložit je do umístění, ke které má odpojený počítač přístup.

Ověřte, jestli je PSGallery zaregistrované jako úložiště.

Poznámka

Tento krok vyžaduje přístup k internetu.

Otevřete příkazový řádek PowerShellu se zvýšenými oprávněními a spusťte následující rutiny:

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

Pokud úložiště není zaregistrované, otevřete relaci PowerShellu se zvýšenými oprávněními a spusťte následující příkaz:

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

3. Odinstalace stávajících verzí modulů Azure Stack Hub PowerShellu

Před instalací požadované verze nezapomeňte odinstalovat všechny dříve nainstalované moduly Azure Stack Hub Azure Resource Manager PowerShellu. Odinstalujte moduly pomocí jedné z následujících dvou metod:

  1. Pokud chcete odinstalovat existující Azure Resource Manager a moduly Az PowerShellu, zavřete všechny aktivní relace PowerShellu a spusťte následující rutiny:

    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
    

    Pokud dojde k chybě, například Modul se už používá, zavřete relace PowerShellu, které tyto moduly používají, a spusťte výše uvedený skript znovu.

  2. Odstraňte všechny složky, které začínají na Azure, Az nebo Azs. ze složek C:\Users\{yourusername}\Documents\WindowsPowerShell\ModulesC:\Program Files\WindowsPowerShell\Modules a . Odstraněním těchto složek se odstraní všechny existující moduly PowerShellu.

4. Připojeno: Instalace PowerShellu pro Azure Stack Hub s připojením k internetu

Profil verze rozhraní API a Azure Stack Hub, které požadujete, budou záviset na verzi Azure Stack Hub, kterou používáte.

Instalace Azure Stack Hub PowerShellu

Spuštěním následujícího skriptu PowerShellu nainstalujte tyto moduly na vývojové pracovní stanici:

Pro Azure Stack Hub 2002 nebo novější:

Můžete použít buď uživatelské moduly AzureRm, nebo moduly Az Preview. Použití modulů Az vyžaduje Azure Stack Hub 2002 nebo novější.

Pokud chcete používat moduly Az preview, postupujte podle pokynů v tématu Instalace modulu Az PowerShellu.

# 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 

Pro Azure Stack Hub 1910:

# 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

Poznámka

  • Azure Stack Hub verze 1.8.0 je vydání s rozbíjením změn. Podrobnosti najdete v poznámkách k verzi.

Pro Azure Stack Hub 1908 nebo starší:

# 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

Poznámka

Nejnovější Azure Stack Hub verze 1.7.2 je vydání s rozbíjením změn. Pokud chcete migrovat z Azure Stack Hub 1.6.0, projděte si průvodce migrací.

Potvrzení instalace PowerShellu

Potvrďte instalaci spuštěním následujícího příkazu:

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

Pokud je instalace úspěšná, ve AzureRmAzureStack výstupu se zobrazí moduly a .

5. Odpojeno: Instalace PowerShellu bez připojení k internetu

V odpojené situaci nejprve stáhnete moduly PowerShellu na počítač, který má připojení k internetu. Pak je přenesete do Azure Stack Development Kit (ASDK) k instalaci.

Přihlaste se k počítači s připojením k internetu a pomocí následujících skriptů stáhněte balíčky Azure Resource Manager a Azure Stack Hub podle vaší verze Azure Stack Hub.

Instalace má pět kroků:

  1. Nainstalujte Azure Stack Hub PowerShell na připojený počítač.
  2. Povolte další funkce úložiště.
  3. Přetáhněte balíčky PowerShellu na odpojenou pracovní stanici.
  4. Ručně spustit poskytovatele NuGet na odpojené pracovní stanici.
  5. Potvrďte instalaci PowerShellu.

Instalace Azure Stack Hub PowerShellu

Azure Stack Hub 2002 nebo novější.

Můžete použít buď moduly Azure Resource Manager, nebo Az Preview. Pokyny k modulům Az najdete v tématu Instalace modulu Az PowerShellu.


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

Poznámka

Azure Stack Hub verze 1.8.0 je vydání s rozbíjením změn. Podrobnosti najdete v poznámkách k verzi.

Pro Azure Stack Hub 1908 nebo starší:

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

Poznámka

Nejnovější Azure Stack Hub verze 1.7.1 je změna, která má narušovat zabezpečení. Pokud chcete migrovat z Azure Stack Hub 1.6.0, projděte si průvodce migrací.

Poznámka

Na počítačích bez připojení k internetu doporučujeme pro zakázání shromažďování telemetrických dat spustit následující rutinu. Může dojít ke snížení výkonu rutin bez zakázání shromažďování telemetrických dat. To platí jenom pro počítače bez připojení k internetu.

Disable-AzureRmDataCollection

Přidání balíčků na pracovní stanici

  1. Zkopírujte stažené balíčky na zařízení USB.

  2. Přihlaste se k odpojené pracovní stanici a zkopírujte balíčky ze zařízení USB do umístění v pracovní stanici.

  3. ručně naNuGet poskytovatele na odpojené pracovní stanici. pokyny najdete v tématu ruční zavedení poskytovatele NuGet na počítači, který není připojený k internetu.

  4. Zaregistrujte toto umístění jako výchozí úložiště a nainstalujte Azure Resource Manager a AzureStack moduly z tohoto úložiště:

    # 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
    

Potvrzení instalace PowerShellu

Potvrďte instalaci spuštěním následujícího příkazu:

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

6. konfigurace PowerShellu pro použití proxy server

Ve scénářích, které vyžadují proxy server pro přístup k Internetu, musíte nejprve nakonfigurovat prostředí PowerShell tak, aby používalo existující proxy server:

  1. Otevřete příkazový řádek PowerShellu se zvýšenými oprávněními.

  2. Spusťte následující příkazy:

    #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
    

Známý problém

Chyba get_SerializationSettings metody

  • Příčina: prostředí PowerShell AZ Module a PowerShell Azure Resource Manager moduly nejsou kompatibilní.

    Následující chyba znamená, že moduly Azure Resource Manager a AZ modules jsou načteny do stejné relace:

    >  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.
    
  • Náprava: odinstalujte konfliktní moduly.

    Chcete-li použít moduly Azure Resource Manager, odinstalujte modul AZ Modules. Nebo odinstalujte Azure Resource Manager, chcete-li použít moduly AZ. Zavřete relaci prostředí PowerShell a odinstalujte moduly AZ nebo Azure Resource Manager.

    Pokyny najdete v tématu odinstalace existujících verzí modulů prostředí PowerShell centra Azure Stack.

Došlo k chybě v NewAzureRMADServicePrincipal a NewAzureRMAdApplication

  • Použitelné: Azure Stack prostředí využívající Azure Active Directory (Azure AD).

  • příčina: Azure Active Directory Graph zavést zásadní změnu, která omezí, IdentifierUri aby byly aplikace služby Active Directory poddoménami ověřené domény v adresáři. Před změnou bylo toto omezení pro víceklientské aplikace vynutilo. Toto omezení se teď vztahuje i na aplikace s jedním klientem. V důsledku změny dojde k následující chybě: Values of identifierUris property must use a verified domain of the organization or its subdomain' is displayed when running .

  • Náprava: Toto omezení můžete obejít dvěma způsoby.

    • Bude nutné použít hlavní název služby, který je subdoménou tenanta adresáře. Například pokud je contoso.onmicrosoft.com adresář, hlavní název služby musí mít formu <foo>.contoso.onmicrosoft.com . Použijte následující rutinu:

      NewAzureRMADServicePrincipal -Role Owner -DisplayName <foo>.contoso.onmicrosoft.com
      

      Další informace o identitě a používání instančních objektů pomocí centra Azure Stack najdete v tématu Přehled zprostředkovatelů identity pro centrum Azure Stack.

    • Vytvořte aplikaci Azure AD, která poskytuje platný IdentifierUri a pak vytvořte instanční objekt, který přidruží aplikaci, pomocí následující rutiny:

      $app=NewAzureRMAdApplication -DisplayName 'newapp' -IdentifierUris http://anything.contoso.onmicrosoft.com
      NewAzureRMADServicePrincipal -Role Owner -ApplicationId $app.ApplicationId
      
  • Výskyt: běžné

Další kroky