Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье вы можете использовать Docker для создания контейнера, на котором выполняется версия PowerShell, необходимая для работы с различными интерфейсами. Инструкции по использованию модулей AzureRM и последних модулей Az можно найти. Для AzureRM требуется контейнер на основе Windows. Az использует контейнер на основе Linux.
Необходимые условия для Docker
Установите Docker.
Установите Docker.
В программе командной строки, например PowerShell или Bash, введите следующее:
docker --version
Создание субъекта-службы для использования PowerShell
Чтобы использовать PowerShell для доступа к ресурсам в Azure Stack Hub, вам потребуется учетная запись службы в клиенте Microsoft Entra. Вы можете делегировать разрешения с помощью управления доступом на основе ролей пользователей. Возможно, вам потребуется запросить учетную запись службы от облачного оператора.
Чтобы настроить свой субъект-службы, следуйте инструкциям в разделе Предоставление приложениям доступа к ресурсам Azure Stack Hub путем создания субъектов-служб.
Обратите внимание на идентификатор приложения, секрет, идентификатор клиента и идентификатор объекта для последующего использования.
Запуск PowerShell в Docker
В этих инструкциях вы запустите образ контейнера под управлением Linux, содержащий PowerShell и необходимые модули для Azure Stack Hub.
Необходимо запустить Docker с помощью контейнера Linux. При запуске Docker переключитесь на контейнеры Linux.
Запустите Docker с компьютера, присоединенного к тому же домену, что и Azure Stack Hub. Если вы используете пакет средств разработки Azure Stack (ASDK), установите VPN на удаленном компьютере.
Установка модуля Azure Stack Hub Az в контейнере Linux
В командной строке выполните следующую команду Docker, чтобы запустить PowerShell в контейнере Ubuntu:
docker run -it mcr.microsoft.com/azurestack/powershellВы можете запустить Ubuntu или Debian. Следующие файлы Docker можно найти в репозитории GitHub, azurestack-powershell. Сведения о последних изменениях в файлах Docker см. в репозитории GitHub. Каждая ОС помечена тегом. Замените тег, раздел после двоеточия, тегом для требуемой ОС.
Linux Образ Docker Ubuntu docker run -it mcr.microsoft.com/azurestack/powershell:ubuntu-18.04Debian docker run -it mcr.microsoft.com/azurestack/powershell:debian-9Оболочка готова для командлетов. Проверьте подключение оболочки, войдите в систему и выполните команду
Test-AzureStack.ps1.Сначала создайте учетные данные учетной записи службы. Вам потребуется секрет и идентификатор приложения. Вам также потребуется идентификатор объекта при запуске
Test-AzureStack.ps1для проверки вашего контейнера. Возможно, вам потребуется запросить основную службу у вашего облачного оператора.Введите следующие командлеты, чтобы создать объект сервисного принципала:
$passwd = ConvertTo-SecureString <Secret> -AsPlainText -Force $pscredential = New-Object System.Management.Automation.PSCredential('<ApplicationID>', $passwd)Подключитесь к среде, выполнив следующий скрипт со следующими значениями из экземпляра Azure Stack Hub.
значение Описание Имя среды. Имя среды Azure Stack Hub. Конечная точка диспетчера ресурсов URL-адрес диспетчера ресурсов. Обратитесь к оператору облака, если вы не знаете его. Он должен иметь примерно следующий вид: https://management.region.domain.com.Идентификатор арендатора каталога Идентификатор каталога клиента Azure Stack Hub. Подтверждение компетенции Объект, содержащий ваш служебный принципал. В этом случае $pscredential../Login-Environment.ps1 -Name <String> -ResourceManagerEndpoint <resource manager endpoint> -DirectoryTenantId <String> -Credential $pscredentialPowerShell возвращает объект учетной записи.
Протестируйте среду, выполнив
Test-AzureStack.ps1скрипт в контейнере. Укажите идентификатор объекта субъекта-службы. Если идентификатор объекта не указан, скрипт по-прежнему будет выполняться, но он будет просто тестировать модули клиента (пользователя) и завершаться сбоем на модулях, для которых требуются права администратора../Test-AzureStack.ps1 <Object ID>
Следующие шаги
- Ознакомьтесь с обзором Azure Stack Hub PowerShell в Azure Stack Hub.
- См. подробнее об использовании профилей API для PowerShell в Azure Stack Hub.
- Установка PowerShell для Azure Stack Hub.
- Чтобы обеспечить согласованность данных в облаке, см. статью Рекомендации по использованию шаблона Azure Resource Manager.