Установка модуля PowerShell Az для Azure Stack HubInstall PowerShell Az module for Azure Stack Hub

В этой статье показано, как установить модуль Az Azure PowerShell и совместимые модули Azure Stack Hub для администраторов с помощью PowerShellGet.This article explains how to install the Azure PowerShell Az and compatible Azure Stack Hub administrator modules using PowerShellGet. Модули Az можно установить на платформах Windows, macOS и Linux.The Az modules can be installed on Windows, macOS, and Linux platforms.

Вы также можете запустить модули AZ для Azure Stack концентратора в контейнере DOCKER.You can also run the Az modules for Azure Stack Hub in a Docker container. Инструкции см. в статье Использование DOCKER для запуска PowerShell для Azure Stack Hub.For instructions, see Use Docker to run PowerShell for Azure Stack Hub.

Если вы хотите установить модуль модулей ресурсов PowerShell (AzureRM) для центра Azure Stack, см. статью Установка модуля AzureRM PowerShell для центра Azure Stack.If you would like to install PowerShell Resource Modules (AzureRM) module for Azure Stack Hub, see Install PowerShell AzureRM module for Azure Stack Hub.

Важно!

Скорее всего, не будут выпуски новых модулей ресурсов Azure.There will likely not be new Azure Resource Modules module releases. Модули ресурсов Azure поддерживают только критические исправления.The Azure Resource Modules modules are under support for critical fixes only. В дальнейшем будет выдаваться только AZ releases для центра Azure Stack.Going forward there will only be Az releases for Azure Stack Hub.

Можно использовать профили API, чтобы указать совместимые конечные точки для поставщиков ресурсов Azure Stack Hub.You can use API profiles to specify the compatible endpoints for the Azure Stack Hub resource providers.

Профили API позволяют управлять различиями между версиями Azure и Azure Stack Hub.API profiles provide a way to manage version differences between Azure and Azure Stack Hub. Профиль версии API — это набор модулей Azure Resource Manager PowerShell с определенными версиями API.An API version profile is a set of Azure Resource Manager PowerShell modules with specific API versions. Каждая облачная платформа имеет набор поддерживаемых профилей версий API.Each cloud platform has a set of supported API version profiles. К примеру, Azure Stack Hub поддерживает определенную версию профиля, например 2019-03-01-hybrid.For example, Azure Stack Hub supports a specific profile version such as 2019-03-01-hybrid. При установке профиля устанавливается набор модулей Azure Resource Manager PowerShell, которые соответствуют выбранному профилю.When you install a profile, the Azure Resource Manager PowerShell modules that correspond to the specified profile are installed.

Вы можете установить совместимые модули Az PowerShell для Azure Stack Hub в сценариях с полноценным, частичным и отсутствующим подключением к Интернету.You can install Azure Stack Hub compatible PowerShell Az modules in Internet-connected, partially connected, or disconnected scenarios. В этой статье рассматриваются подробные инструкции для этих сценариев.This article walks you through the detailed instructions for these scenarios.

1. Проверка необходимых компонентов1. Verify your prerequisites

AZ modules поддерживается в концентраторе Azure Stack с обновлением 2002 или более поздней версии и с установленными текущими исправлениями.Az modules are supported on Azure Stack Hub with Update 2002 or later and with the current hotfixes installed. Дополнительные сведения см. в заметках о выпуске центра Azure Stack .Please see the Azure Stack Hub release notes for more information.

Модули Azure PowerShell AZ работают с PowerShell 5,1 или более поздней версии в Windows, или PowerShell Core 6. x и более поздних версий на всех платформах.The Azure PowerShell Az modules work with PowerShell 5.1 or higher on Windows, or PowerShell Core 6.x and later on all platforms. Необходимо установить последнюю версию PowerShell Core для вашей операционной системы.You should install the latest version of PowerShell Core available for your operating system. Дополнительных требований для использования Azure PowerShell в PowerShell Core нет.Azure PowerShell has no additional requirements when run on PowerShell Core.

Чтобы узнать вашу версию PowerShell, выполните приведенную ниже команду:To check your PowerShell version, run the command:

$PSVersionTable.PSVersion

Предварительные требования для WindowsPrerequisites for Windows

Чтобы использовать Azure PowerShell в PowerShell 5.1 в Windows, сделайте следующее:To use Azure PowerShell in PowerShell 5.1 on Windows:

  1. При необходимости выполните обновление до Windows PowerShell 5.1.Update to Windows PowerShell 5.1 if needed. Если вы используете Windows 10, среда PowerShell 5.1 уже установлена.If you're on Windows 10, you already have PowerShell 5.1 installed.
  2. Установите платформу .NET Framework версии 4.7.2 или более поздней.Install .NET Framework 4.7.2 or later.
  3. Убедитесь, что у вас установлена последняя версия PowerShellGet.Make sure you have the latest version of PowerShellGet. Выполните Install-Module PowerShellGet -MinimumVersion 2.2.3 -Force.Run Install-Module PowerShellGet -MinimumVersion 2.2.3 -Force.

2. Предварительные требования для Linux и Mac2. Prerequisites for Linux and Mac

PowerShell Core 6. x или более поздней версии.PowerShell Core 6.x or later version is needed. См. инструкции.Follow the link for instructions

3. Удаление существующих версий модулей PowerShell для Azure Stack Hub3. Uninstall existing versions of the Azure Stack Hub PowerShell modules

Перед установкой требуемой версии убедитесь, что удалены все ранее установленные Azure Stack Hub Azure Resource Manager или AZ PowerShell modules.Before installing the required version, make sure that you uninstall any previously installed Azure Stack Hub Azure Resource Manager or Az PowerShell modules. Удалите модули с помощью одного из следующих двух способов.Uninstall the modules by using one of the following two methods:

  1. Чтобы удалить существующие модули Azure Resource Manager и AZ PowerShell, закройте все активные сеансы PowerShell и выполните следующие командлеты:To uninstall the existing Azure Resource Manager and Az PowerShell modules, close all the active PowerShell sessions, and run the following cmdlets:

    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
    

    Если возникает ошибка, например The module is already in use (Модуль уже используется), закройте сеансы PowerShell, которые используют модули, и повторно запустите приведенный выше скрипт.If you hit an error such as 'The module is already in use', close the PowerShell sessions that are using the modules and rerun the above script.

  2. Удалите все папки, имена которых начинаются с Azure, Az или Azs., из папок C:\Program Files\WindowsPowerShell\Modules и C:\Users\{yourusername}\Documents\WindowsPowerShell\Modules.Delete all the folders that start with Azure, Az or Azs. from the C:\Program Files\WindowsPowerShell\Modules and C:\Users\{yourusername}\Documents\WindowsPowerShell\Modules folders. При удалении этих папок удаляются все установленные модули PowerShell.Deleting these folders removes any existing PowerShell modules.

4. С подключением. Установка при наличии подключения к Интернету4. Connected: Install with internet connectivity

Модуль Az Azure Stack будет работать в Azure Stack Hub 2002 или более поздней версии.The Azure Stack Az module will work Azure Stack Hub 2002 or later. Кроме того, модуль Azure Stack Az будет работать с PowerShell 5.1 или более поздней версии на компьютере Windows или с PowerShell 6.x или более поздней версии на платформе Linux или macOS.In addition, the Azure Stack Az module will work with PowerShell 5.1 or greater on a Windows machine, or PowerShell 6.x or greater on a Linux or macOS platform. Использование командлетов PowerShellGet — предпочтительный метод установки.Using the PowerShellGet cmdlets is the preferred installation method. Этот метод работает одинаково на всех поддерживаемых платформах.This method works the same on the supported platforms.

Выполните следующую команду из сеанса PowerShell:Run the following command from a PowerShell session:

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

Install-Module -Name Az.BootStrapper -Force -AllowPrerelease
Install-AzProfile -Profile 2019-03-01-hybrid -Force
Install-Module -Name AzureStack -RequiredVersion 2.0.2-preview -AllowPrerelease

Примечание

Модуль Azure Stack Hub версии 2.0.0 является критическим изменением.Azure Stack Hub module version 2.0.0 is a breaking change. Дополнительные сведения см. в статье Миграция с AzureRM на Az для Azure PowerShell в Azure Stack Hub.Refer to the Migrate from AzureRM to Azure PowerShell Az in Azure Stack Hub for details.

Предупреждение

Одновременно нельзя одновременно установить модули Azure Resource Manager (AzureRM) и AZ для PowerShell 5,1 для Windows.You can't have both the Azure Resource Manager (AzureRM) and Az modules installed for PowerShell 5.1 for Windows at the same time. Если необходимо, чтобы Azure Resource Manager были доступны в системе, установите модуль AZ для PowerShell Core 6. x или более поздней версии.If you need to keep Azure Resource Manager available on your system, install the Az module for PowerShell Core 6.x or later. Чтобы сделать это, установите PowerShell Core версии 6.x или более поздней, а затем следуйте инструкциям в окне терминала PowerShell Core.To do this, install PowerShell Core 6.x or later and then follow these instructions in a PowerShell Core terminal.

5. Без подключения. Установка без подключения к Интернету5. Disconnected: Install without internet connection

При установке без подключения к Интернету следует сначала скачать модули PowerShell на компьютер, подключенный к Интернету.In a disconnected scenario, you first download the PowerShell modules to a machine that has internet connectivity. Затем их нужно перенести в Пакет средств разработки Azure Stack (ASDK) для установки.Then, you transfer them to the Azure Stack Development Kit (ASDK) for installation.

Войдите на компьютер с подключением к Интернету и, в зависимости от используемой версии Azure Stack Hub, выполните следующие сценарии для скачивания пакетов Azure Resource Manager и Azure Stack Hub.Sign in to a computer with internet connectivity and use the following scripts to download the Azure Resource Manager and Azure Stack Hub packages, depending on your version of Azure Stack Hub.

Установка состоит из пяти шагов:Installation has five steps:

  1. Установка PowerShell для Azure Stack Hub на компьютер с подключением к Интернету.Install Azure Stack Hub PowerShell to a connected machine.
  2. Включение дополнительных возможностей хранилища.Enable additional storage features.
  3. Передача пакетов PowerShell на рабочую станцию без подключения к Интернету.Transport the PowerShell packages to your disconnected workstation.
  4. Начальная загрузка поставщика NuGet, выполняемая вручную на отключенной рабочей станцииManually bootstrap the NuGet provider on your disconnected workstation.
  5. Подтверждение установки PowerShell.Confirm the installation of PowerShell.

Установка PowerShell для Azure Stack HubInstall Azure Stack Hub PowerShell

Azure Stack Hub 2002 и более поздних версий.Azure Stack Hub 2002 or later.

Можно использовать либо модули Azure Resource Manager, либо AZ.You could either use Azure Resource Manager or Az modules. Дополнительные Azure Resource Manager см. в инструкциях по установке модуля AzureRM PowerShell.For Azure Resource Manager, see the instructions at Install PowerShell AzureRM module. Следующий код сохраняет модули из надежного подключенного репозитория https://www.powershellgallery.com/.The following code saves modules from trustworthy online repository 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 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

Примечание

На компьютерах без подключения к Интернету советуем выполнить приведенный ниже командлет для отключения сбора данных телеметрии.On machines without an internet connection, we recommend executing the following cmdlet for disabling the telemetry data collection. Без выключения сбора данных телеметрии может произойти снижение производительности командлетов.You may experience a performance degradation of the cmdlets without disabling the telemetry data collection. Это относится только к компьютерам без подключения к Интернету.This is applicable only for the machines without internet connections

Disable-AzDataCollection

Добавление пакетов на рабочую станциюAdd your packages to your workstation

  1. Скопируйте скачанные пакеты на USB-устройство.Copy the downloaded packages to a USB device.

  2. Войдите на отключенную рабочую станцию и скопируйте пакеты с USB-устройства в нужное расположение на ней.Sign in to the disconnected workstation and copy the packages from the USB device to a location on the workstation.

  3. Начальная загрузка поставщика NuGet, выполняемая вручную на отключенной рабочей станцииManually bootstrap the NuGet provider on your disconnected workstation. Инструкции см. в разделе Ручной режим начальной загрузки поставщика NuGet на автономный компьютер.For instructions, see Manually bootstrapping the NuGet provider on a machine that isn't connected to the internet.

  4. Зарегистрируйте это расположение в качестве репозитория по умолчанию и установите AzureRM AzureStack модули и из этого репозитория:Register this location as the default repository and install the AzureRM and AzureStack modules from this repository:

    # 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 -AllowPrerelease -Scope AllUsers
    

Подтверждение установки PowerShellConfirm the installation of PowerShell

Подтвердите установку, выполнив следующую команду:Confirm the installation by running the following command:

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

6. Настройка PowerShell для использования прокси-сервера6. Configure PowerShell to use a proxy server

Если для доступа к Интернету требуется прокси-сервер, необходимо сначала настроить PowerShell для использования имеющегося прокси-сервера.In scenarios that require a proxy server to access the internet, you first configure PowerShell to use an existing proxy server:

  1. Откройте командную строку PowerShell с повышенными привилегиями.Open an elevated PowerShell prompt.

  2. Выполните следующие команды:Run the following commands:

    #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. Использование модуля Az7. Use the Az module

Вы можете использовать командлеты и примеры кода на основе Azure Resource Manager.You can use the cmdlets and code samples based on Azure Resource Manager. Но вам наверняка захочется изменить имена этих модулей и командлетов.However, you will want to change the name of the modules and cmdlets. Имена модулей были изменены таким образом, что AzureRM в сочетании с Azure становится Az. Это же справедливо и для командлетов.The module names have been changed so that AzureRM and Azure become Az, and the same for cmdlets. Например, модуль AzureRM.Compute был переименован в Az.Compute. New-AzureRMVMFor example, the AzureRM.Compute module has been renamed to Az.Compute. New-AzureRMVM теперь называется New-AzVM, а Get-AzureStorageBlob — Get-AzStorageBlob.has become New-AzVM, and Get-AzureStorageBlob is now Get-AzStorageBlob.

См. подробное обсуждение и рекомендации по переносу скриптов AzureRM на Az, а также сведения о критических изменениях в модуле Az Azure Stack Hub в руководстве по миграции с AzureRM на Az Azure PowerShell.For a more thorough discussion and guidance for moving AzurRM script to Az and breaking changes in Azure Stack Hub's Az module, see Migrate from AzureRM to Azure PowerShell Az.

Известные проблемыKnown issues

При установке модулей AZ возникает ошибкаError thrown when installing the Az modules

  • Применимо: Эта проблема относится к 2002 и более поздним версиям.Applicable: This issue applies to 2002 and later
  • Причина: при установке модуля выдается ошибка.Cause: When installing the module, an error is thrown. Начнется сообщение об ошибке: Register-PacakgeSource : A parameter cannot be found that matches parameter name. 'PackageManagementProvider'. или сообщение об ошибке может содержать следующий текст: PackageManagement\Install-Package : Cannot convert value "2.0.1-preview" to type "System.Version". Error: "Input string was not in a correct format."The error message begins: Register-PacakgeSource : A parameter cannot be found that matches parameter name. 'PackageManagementProvider'. Or the error message may include the following text: PackageManagement\Install-Package : Cannot convert value "2.0.1-preview" to type "System.Version". Error: "Input string was not in a correct format."
  • Исправление: выполните следующий командлет в том же сеансе:Remediation: Run the following cmdlet in the same session:
    Install-Module PowershellGet -MinimumumVersion 2.3.0 -Force
    Закройте сеанс и запустите новый сеанс PowerShell с повышенными привилегиями.Close your session and start a new elevated PowerShell session.
  • Периодичность. РаспространенныеOccurrence: Common

При установке AZ Module false создает ошибку, необходимую для прав администратораWhen installing Az module falsely throws Admin rights required error

  • Применимо: Эта проблема относится к 2002 и более поздним версиям.Applicable: This issue applies to 2002 and later
  • Причина. при установке модуля из командной строки с повышенными привилегиями выдается сообщение об ошибке.Cause: When installing the module from an elevated prompt, an error is thrown. Ошибка говорит: Administrator rights required .The error says, Administrator rights required.
  • Исправление: Закройте сеанс и запустите новый сеанс PowerShell с повышенными привилегиями.Remediation: Close your session and start a new elevated PowerShell session. Убедитесь, что не существует AZ.Make sure there isn't an existing Az. Модуль Accounts, загруженный в сеансе.Accounts module loaded in the session.
  • Периодичность. РаспространенныеOccurrence: Common

Дальнейшие действияNext steps