Вы можете установить Azure CLI для управления Azure Stack Hub с помощью компьютеров Под управлением Windows или Linux. В этой статье описаны шаги по установке и настройке Azure CLI.
В этом разделе объясняется, как настроить CLI, если вы используете Azure AD в качестве службы управления удостоверениями и работаете с CLI на компьютере с Windows.
Подключение к Azure Stack Hub
Если вы используете ASDK, доверяйте корневому сертификату ЦС Azure Stack Hub. Инструкции см. в разделе "Доверие сертификату".
Зарегистрируйте среду Azure Stack Hub, выполнив команду az cloud register.
Зарегистрируйте среду. При выполнении команды az cloud register используйте следующие параметры:
| Значение |
Пример |
Описание |
| Имя среды |
AzureStackUser |
Используется AzureStackUser для пользовательской среды. Если вы оператор, укажите AzureStackAdmin. |
| Конечная точка Resource Manager |
https://management.contoso.onmicrosoft.com |
ResourceManagerUrl в ASDK: https://management.local.azurestack.external/ResourceManagerUrl в интегрированных системах: https://management.<region>.<fqdn>/ если у вас есть вопрос о конечной точке интегрированной системы, обратитесь к оператору облака. |
| конечную точку службы хранилища; |
local.contoso.onmicrosoft.com |
local.azurestack.external используется для ASDK. Для интегрированной системы нужно использовать соответствующую конечную точку. |
| Суффикс хранилища ключей |
.vault.contoso.onmicrosoft.com |
.vault.local.azurestack.external используется для ASDK. Для интегрированной системы нужно использовать соответствующую конечную точку. |
| Идентификатор ресурса graph конечной точки Active Directory |
https://graph.windows.net/ |
Идентификатор ресурса Active Directory |
az cloud register `
-n <environmentname> `
--endpoint-resource-manager "https://management.<region>.<fqdn>" `
--suffix-storage-endpoint "<fqdn>" `
--suffix-keyvault-dns ".vault.<fqdn>"
Справочник по команде регистрации можно найти в справочной документации по Azure CLI.
Следующие команды позволяют выбрать активную среду:
az cloud set -n <environmentname>
Укажите в конфигурации среды версию API, специально предназначенную для Azure Stack Hub. Чтобы изменить эту конфигурацию, выполните следующую команду:
az cloud update --profile 2020-09-01-hybrid
Войдите в среду Azure Stack Hub с помощью команды az login.
Вы можете войти в среду Azure Stack Hub, используя учетные данные пользователя или субъект-службу (SPN), предоставленный оператором облака.
Войдите как пользователь:
Вы можете указать имя пользователя и пароль непосредственно в команде az login или выполнить аутентификацию в браузере. Если у вашей учетной записи включена многофакторная проверка подлинности, необходимо сделать следующее:
az login -u "user@contoso.onmicrosoft.com" -p 'Password123!' --tenant contoso.onmicrosoft.com
Примечание
Если у вашей учетной записи пользователя включена многофакторная проверка подлинности, используйте az login команду без предоставления -u параметра. При отсутствии этого параметра команда возвращает URL-адрес и код, которые следует использовать для аутентификации.
Войдите в систему как субъект-служба.
Для входа от имени субъекта-службы следует заранее создать субъект-службу с помощью портала Azure или CLI, а также назначить ему роль. После этого выполните такую команду для входа:
az login `
--tenant <Azure Active Directory Tenant name. `
For example: myazurestack.onmicrosoft.com> `
--service-principal `
-u <Application Id of the Service Principal> `
-p <Key generated for the Service Principal>
Убедитесь, что ваша среда настроена правильно и что ваша среда является активным облаком.
az cloud list --output table
Вы должны увидеть, что среда указана в списке, а isActive — true. Пример:
IsActive Name Profile
---------- ----------------- -----------------
False AzureCloud 2020-09-01-hybrid
False AzureChinaCloud latest
False AzureUSGovernment latest
False AzureGermanCloud latest
True AzureStackUser 2020-09-01-hybrid
Проверка подключения
Завершив настройку, вы можете приступить к созданию ресурсов в Azure Stack Hub с помощью CLI. Например, можно создать группу ресурсов для приложения и добавить виртуальную машину. Используйте команду ниже, чтобы создать группу ресурсов с именем MyResourceGroup.
az group create -n MyResourceGroup -l local
Если группа ресурсов будет успешно создана, команда выше возвратит следующие свойства созданного ресурса:
{
"id": "/subscriptions/84edee99-XXXX-4f5c-b646-5cdab9759a03/resourceGroups/RGCL11",
"location": "local",
"name": "RGCLI1",
" properties ": {
"provisioningState": "Succeeded"
},
"tags ": null
}
В этом разделе объясняется, как настроить CLI, если вы используете службы федерации Active Directory (AD FS) в качестве службы управления удостоверениями и работаете с CLI на компьютере с Windows.
Подключение к Azure Stack Hub
Если вы используете ASDK, доверяйте корневому сертификату ЦС Azure Stack Hub. Инструкции см. в разделе "Доверие сертификату".
Зарегистрируйте среду Azure Stack Hub, выполнив команду az cloud register.
Зарегистрируйте среду. При выполнении команды az cloud register используйте следующие параметры:
| Значение |
Пример |
Описание |
| Имя среды |
AzureStackUser |
Используется AzureStackUser для пользовательской среды. Если вы оператор, укажите AzureStackAdmin. |
| Конечная точка Resource Manager |
https://management.local.azurestack.external |
ResourceManagerUrl в ASDK: https://management.local.azurestack.external/ResourceManagerUrl в интегрированных системах: https://management.<region>.<fqdn>/ если у вас есть вопрос о конечной точке интегрированной системы, обратитесь к оператору облака. |
| конечную точку службы хранилища; |
local.azurestack.external |
local.azurestack.external используется для ASDK. Для интегрированной системы нужно использовать соответствующую конечную точку. |
| Суффикс хранилища ключей |
.vault.local.azurestack.external |
.vault.local.azurestack.external используется для ASDK. Для интегрированной системы нужно использовать соответствующую конечную точку. |
| Конечная точка документа с псевдонимами образов виртуальной машины |
https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm-compute/quickstart-templates/aliases.json |
URI документа, который содержит псевдонимы образов виртуальной машины. Дополнительные сведения см. в разделе "Настройка конечной точки псевдонима виртуальной машины". |
az cloud register -n <environmentname> --endpoint-resource-manager "https://management.local.azurestack.external" --suffix-storage-endpoint "local.azurestack.external" --suffix-keyvault-dns ".vault.local.azurestack.external" --endpoint-vm-image-alias-doc <URI of the document which contains VM image aliases>
Следующие команды позволяют выбрать активную среду:
az cloud set -n <environmentname>
Укажите в конфигурации среды версию API, специально предназначенную для Azure Stack Hub. Чтобы изменить эту конфигурацию, выполните следующую команду:
az cloud update --profile 2020-09-01-hybrid
Примечание
Если вы используете версию Azure Stack Hub до сборки 1808, необходимо использовать профиль версии API 2017-03-09-profile , а не профиль версии API 2020-09-01-hybrid. Вам также потребуется последняя версия Azure CLI.
Войдите в среду Azure Stack Hub с помощью команды az login. Вы можете войти в среду Azure Stack Hub от имени пользователя или субъекта-службы.
Войдите как пользователь:
Вы можете указать имя пользователя и пароль непосредственно в команде az login или выполнить аутентификацию в браузере. Если у вашей учетной записи включена многофакторная проверка подлинности, необходимо сделать следующее:
az cloud register -n <environmentname> --endpoint-resource-manager "https://management.local.azurestack.external" --suffix-storage-endpoint "local.azurestack.external" --suffix-keyvault-dns ".vault.local.azurestack.external" --endpoint-vm-image-alias-doc <URI of the document which contains VM image aliases> --profile "2020-09-01-hybrid"
Войдите в систему как субъект-служба.
Подготовьте PEM-файл для использования для входа субъект-службы.
На клиентском компьютере, где был создан субъект, экспортируйте сертификат субъект-службы как PFX-файл с закрытым ключом, расположенным здесь: cert:\CurrentUser\My. Имя этого сертификата совпадает с именем субъекта.
Преобразуйте PFX в PEM (используйте служебную программу OpenSSL).
Вход в интерфейс командной строки:
az login --service-principal \
-u <Client ID from the Service Principal details> \
-p <Client secret (password), or certificate's fully qualified name, such as, C:\certs\spn.pem>
--tenant <Tenant ID> \
--debug
Проверка подключения
Завершив настройку, вы можете приступить к созданию ресурсов в Azure Stack Hub с помощью CLI. Например, можно создать группу ресурсов для приложения и добавить виртуальную машину. Используйте команду ниже, чтобы создать группу ресурсов с именем MyResourceGroup.
az group create -n MyResourceGroup -l local
Если группа ресурсов будет успешно создана, команда выше возвратит следующие свойства созданного ресурса:
{
"id": "/subscriptions/84edee99-XXXX-4f5c-b646-5cdab9759a03/resourceGroups/RGCL11",
"location": "local",
"name": "RGCLI1",
" properties ": {
"provisioningState": "Succeeded"
},
"tags ": null
}
В этом разделе объясняется, как настроить CLI, если вы используете Azure AD в качестве службы управления удостоверениями и работаете с CLI на компьютере с Linux.
Подключение к Azure Stack Hub
Для подключения к Azure Stack Hub выполните следующие действия.
Если вы используете ASDK, доверяйте корневому сертификату ЦС Azure Stack Hub. Инструкции см. в разделе "Доверие сертификату".
Зарегистрируйте среду Azure Stack Hub, выполнив команду az cloud register.
Зарегистрируйте среду. При выполнении команды az cloud register используйте следующие параметры:
| Значение |
Пример |
Описание |
| Имя среды |
AzureStackUser |
Используется AzureStackUser для пользовательской среды. Если вы оператор, укажите AzureStackAdmin. |
| Конечная точка Resource Manager |
https://management.local.azurestack.external |
ResourceManagerUrl в ASDK: https://management.local.azurestack.external/ResourceManagerUrl в интегрированных системах: https://management.<region>.<fqdn>/ если у вас есть вопрос о конечной точке интегрированной системы, обратитесь к оператору облака. |
| конечную точку службы хранилища; |
local.azurestack.external |
local.azurestack.external используется для ASDK. Для интегрированной системы нужно использовать соответствующую конечную точку. |
| Суффикс хранилища ключей |
.vault.local.azurestack.external |
.vault.local.azurestack.external используется для ASDK. Для интегрированной системы нужно использовать соответствующую конечную точку. |
| Конечная точка документа с псевдонимами образов виртуальной машины |
https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm-compute/quickstart-templates/aliases.json |
URI документа, который содержит псевдонимы образов виртуальной машины. Дополнительные сведения см. в разделе "Настройка конечной точки псевдонима виртуальной машины". |
az cloud register -n <environmentname> --endpoint-resource-manager "https://management.local.azurestack.external" --suffix-storage-endpoint "local.azurestack.external" --suffix-keyvault-dns ".vault.local.azurestack.external" --endpoint-vm-image-alias-doc <URI of the document which contains VM image aliases>
Настройте активную среду.
az cloud set -n <environmentname>
Укажите в конфигурации среды версию API, специально предназначенную для Azure Stack Hub. Чтобы изменить эту конфигурацию, выполните следующую команду:
az cloud update --profile 2020-09-01-hybrid
Примечание
Если вы используете версию Azure Stack Hub до сборки 1808, необходимо использовать профиль версии API 2017-03-09-profile , а не профиль версии API 2020-09-01-hybrid. Вам также потребуется последняя версия Azure CLI.
Войдите в среду Azure Stack Hub с помощью команды az login. Вы можете войти в среду Azure Stack Hub от имени пользователя или субъекта-службы.
Войдите как пользователь:
Вы можете указать имя пользователя и пароль непосредственно в команде az login или выполнить аутентификацию в браузере. Если у вашей учетной записи включена многофакторная проверка подлинности, необходимо сделать следующее:
az login \
-u <Active directory global administrator or user account. For example: username@<aadtenant>.onmicrosoft.com> \
--tenant <Azure Active Directory Tenant name. For example: myazurestack.onmicrosoft.com>
Примечание
Если в вашей учетной записи пользователя включена многофакторная проверка подлинности, можно использовать az login команду без указания -u параметра. При отсутствии этого параметра команда возвращает URL-адрес и код, которые следует использовать для аутентификации.
Вход в качестве субъекта-службы
Для входа от имени субъекта-службы следует заранее создать субъект-службу с помощью портала Azure или CLI, а также назначить ему роль. После этого выполните такую команду для входа:
az login \
--tenant <Azure Active Directory Tenant name. For example: myazurestack.onmicrosoft.com> \
--service-principal \
-u <Application Id of the Service Principal> \
-p <Key generated for the Service Principal>
Проверка подключения
Завершив настройку, вы можете приступить к созданию ресурсов в Azure Stack Hub с помощью CLI. Например, можно создать группу ресурсов для приложения и добавить виртуальную машину. Используйте команду ниже, чтобы создать группу ресурсов с именем MyResourceGroup.
az group create -n MyResourceGroup -l local
Если группа ресурсов будет успешно создана, команда выше возвратит следующие свойства созданного ресурса:
{
"id": "/subscriptions/84edee99-XXXX-4f5c-b646-5cdab9759a03/resourceGroups/RGCL11",
"location": "local",
"name": "RGCLI1",
" properties ": {
"provisioningState": "Succeeded"
},
"tags ": null
}
В этом разделе объясняется, как настроить CLI, если вы используете службы федерации Active Directory (AD FS) в качестве службы управления и работаете с CLI на компьютере с Linux.
Подключение к Azure Stack Hub
Для подключения к Azure Stack Hub выполните следующие действия.
Если вы используете ASDK, доверяйте корневому сертификату ЦС Azure Stack Hub. Инструкции см. в разделе "Доверие сертификату".
Зарегистрируйте среду Azure Stack Hub, выполнив команду az cloud register.
Зарегистрируйте среду. При выполнении команды az cloud register используйте следующие параметры.
| Значение |
Пример |
Описание |
| Имя среды |
AzureStackUser |
Используется AzureStackUser для пользовательской среды. Если вы оператор, укажите AzureStackAdmin. |
| Конечная точка Resource Manager |
https://management.local.azurestack.external |
ResourceManagerUrl в ASDK: https://management.local.azurestack.external/ResourceManagerUrl в интегрированных системах: https://management.<region>.<fqdn>/ если у вас есть вопрос о конечной точке интегрированной системы, обратитесь к оператору облака. |
| конечную точку службы хранилища; |
local.azurestack.external |
local.azurestack.external используется для ASDK. Для интегрированной системы нужно использовать соответствующую конечную точку. |
| Суффикс хранилища ключей |
.vault.local.azurestack.external |
.vault.local.azurestack.external используется для ASDK. Для интегрированной системы нужно использовать соответствующую конечную точку. |
| Конечная точка документа с псевдонимами образов виртуальной машины |
https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm-compute/quickstart-templates/aliases.json |
URI документа, который содержит псевдонимы образов виртуальной машины. Дополнительные сведения см. в разделе "Настройка конечной точки псевдонима виртуальной машины". |
az cloud register -n <environmentname> --endpoint-resource-manager "https://management.local.azurestack.external" --suffix-storage-endpoint "local.azurestack.external" --suffix-keyvault-dns ".vault.local.azurestack.external" --endpoint-vm-image-alias-doc <URI of the document which contains VM image aliases>
Настройте активную среду.
az cloud set -n <environmentname>
Укажите в конфигурации среды версию API, специально предназначенную для Azure Stack Hub. Чтобы изменить эту конфигурацию, выполните следующую команду:
az cloud update --profile 2020-09-01-hybrid
Примечание
Если вы используете версию Azure Stack Hub до сборки 1808, необходимо использовать профиль версии API 2017-03-09-profile , а не профиль версии API 2020-09-01-hybrid. Вам также потребуется последняя версия Azure CLI.
Войдите в среду Azure Stack Hub с помощью команды az login. Вы можете войти в среду Azure Stack Hub от имени пользователя или субъекта-службы.
Войдите в систему:
- Как пользователь с помощью веб-браузера с кодом устройства:
az login --use-device-code
Примечание
При отсутствии этого параметра команда возвращает URL-адрес и код, которые следует использовать для аутентификации.
Как субъект-служба:
Подготовьте PEM-файл для использования для входа субъект-службы.
На клиентском компьютере, где был создан субъект, экспортируйте сертификат субъект-службы как PFX-файл с закрытым ключом, расположенным здесь: cert:\CurrentUser\My. Имя этого сертификата совпадает с именем субъекта.
Преобразуйте PFX в PEM (используйте служебную программу OpenSSL).
Вход в интерфейс командной строки:
az login --service-principal \
-u <Client ID from the Service Principal details> \
-p <Client secret (password), or certificate's fully qualified name, such as, C:\certs\spn.pem>
--tenant <Tenant ID> \
--debug
Проверка подключения
Завершив настройку, вы можете приступить к созданию ресурсов в Azure Stack Hub с помощью CLI. Например, можно создать группу ресурсов для приложения и добавить виртуальную машину. Используйте команду ниже, чтобы создать группу ресурсов с именем MyResourceGroup.
az group create -n MyResourceGroup -l local
Если группа ресурсов будет успешно создана, команда выше возвратит следующие свойства созданного ресурса:
{
"id": "/subscriptions/84edee99-XXXX-4f5c-b646-5cdab9759a03/resourceGroups/RGCL11",
"location": "local",
"name": "RGCLI1",
" properties ": {
"provisioningState": "Succeeded"
},
"tags ": null
}
Известные проблемы
Для интерфейса командной строки в Azure Stack Hub известны следующие проблемы.
- Интерактивный режим CLI. Например, команда
az interactive пока не поддерживается в Azure Stack Hub.
- Чтобы получить список образов виртуальных машин, доступных в Azure Stack Hub, используйте команду
az vm image list --all вместо az vm image list. Указание параметра --all гарантирует, что ответ возвращает только образы, доступные в среде Azure Stack Hub.
- Azure Stack Hub может не поддерживать псевдонимы образов виртуальных машин, доступные в Azure. При использовании образов виртуальных машин вместо псевдонима образа необходимо указать полное имя URN (Canonical:UbuntuServer:14.04.3-LTS:1.0.0). Этот URN должен соответствовать спецификации образа, полученной из команды
az vm images list.