Подключение Служба Azure Kubernetes в кластере Azure Stack HCI в Kubernetes с поддержкой Azure Arc
Область применения: AKS в Azure Stack HCI и сервере Windows
Когда Служба Azure Kubernetes в кластере Azure Stack HCI подключены к Azure Arc, он получит представление Azure Resource Manager. Кластеры подключаются к стандартным подпискам Azure, находятся в группах ресурсов, и им можно назначать теги, как и любым другим ресурсам Azure. Кроме того, представление Kubernetes с поддержкой Azure Arc позволяет расширить следующие возможности в кластер Kubernetes:
- Службы управления — конфигурации (GitOps), Azure Monitor для контейнеров, Политика Azure (Gatekeeper)
- Службы данных — Управляемый экземпляр SQL, гипермасштабирование PostgreSQL
- Службы приложений — Служба приложений, Функции, Сетка событий, Logic Apps, Управление API
Чтобы подключить кластер Kubernetes к Azure, администратор кластера должен развернуть агенты. Эти агенты выполняются в пространстве имен Kubernetes с именем azure-arc и являются стандартными развертываниями Kubernetes. Агенты отвечают за подключение к Azure, сбор журналов и метрик Azure Arc и включение описанных выше сценариев в кластере.
Платформа Kubernetes с поддержкой Azure Arc совместима со стандартным протоколом SSL, защищающим данные при передаче. Кроме того, для обеспечения конфиденциальности информация в базах данных Azure Cosmos DB хранится в зашифрованном виде.
Ниже описано, как подключить Служба Azure Kubernetes в кластерах Azure Stack HCI к Azure Arc. Эти действия можно пропустить, если вы уже подключили кластер Kubernetes к Azure Arc с помощью Windows Admin Center.
Подготовка к работе
Убедитесь, что у вас есть следующие требования:
- Служба Azure Kubernetes в кластере Azure Stack HCI с хотя бы одним рабочим узлом Linux, запущенным и запущенным.
- Установлен модуль PowerShell AksHci.
- По крайней мере один из следующих уровней доступа в подписке Azure:
- Учетная запись пользователя со встроенной ролью владельца . Вы можете проверить уровень доступа, перейдя к подписке, выбрав "Управление доступом (IAM)" в левой части портал Azure, а затем щелкнув "Просмотреть мой доступ".
- Субъект-служба со встроенным кластером Kubernetes — роль подключения Azure Arc (минимум), встроенной ролью участника или встроенной ролью владельца .
- Выполните команды в этом документе в окне администрирования PowerShell.
- Убедитесь, что выполнены требования к сети Kubernetes с поддержкой Azure Arc.
Шаг 1. Вход в Azure
Чтобы войти в Azure, выполните команду PowerShell Подключение-AzAccount:
Connect-AzAccount
Если вы хотите переключиться на другую подписку, выполните команду Set-AzContext PowerShell.
Set-AzContext -Subscription "myAzureSubscription"
Шаг 2. Регистрация двух поставщиков для Kubernetes с поддержкой Azure Arc
Этот шаг можно пропустить, если вы уже зарегистрировали двух поставщиков для службы Kubernetes с поддержкой Azure Arc в подписке. Регистрация — это асинхронный процесс, который должен выполняться один раз для каждой подписки. На ее завершение может уйти около 10 минут.
Register-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Register-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration
Register-AzResourceProvider -ProviderNamespace Microsoft.ExtendedLocation
Вы можете проверить, зарегистрированы ли вы с помощью следующих команд:
Get-AzResourceProvider -ProviderNamespace Microsoft.Kubernetes
Get-AzResourceProvider -ProviderNamespace Microsoft.KubernetesConfiguration
Get-AzResourceProvider -ProviderNamespace Microsoft.ExtendedLocation
Шаг 3. Подключение в Azure Arc с помощью модуля PowerShell Aks-Hci
Подключение akS в кластере Azure Stack HCI в Kubernetes с поддержкой Azure Arc с помощью команды PowerShell Enable-AksHciArcConnection. На этом шаге агенты Azure Arc для Kubernetes развертываются в azure-arc пространстве имен.
Enable-AksHciArcConnection -name mynewcluster
Подключение кластера AKS в Azure Arc с помощью субъекта-службы
Если у вас нет доступа к подписке, в которой вы являетесь владельцем, вы можете подключить кластер AKS к Azure Arc с помощью субъекта-службы.
Первая командная строка для учетных данных субъекта-службы и сохраняет их в переменной credential . Введите идентификатор приложения для имени пользователя, а затем при появлении запроса используйте секрет субъекта-службы в качестве пароля. Убедитесь, что вы получите эти значения от администратора подписки. Вторая команда подключает кластер к Azure Arc с помощью учетных данных субъекта-службы, хранящихся в переменной credential .
$Credential = Get-Credential
Enable-AksHciArcConnection -name "myCluster" -subscriptionId "3000e2af-000-46d9-0000-4bdb12000000" -resourceGroup "myAzureResourceGroup" -credential $Credential -tenantId "xxxx-xxxx-xxxx-xxxx" -location "eastus"
Убедитесь, что субъект-служба, используемый в приведенной выше команде, имеет роль "Владелец", "Участник" или "Кластер Kubernetes — Подключение Azure Arc", назначенную им, и что она имеет область по идентификатору подписки и группе ресурсов, используемой в команде. Дополнительные сведения о субъектах-службах см. в статье "Создание субъекта-службы с помощью Azure PowerShell".
Проверка подключенного кластера
Кластерный ресурс Kubernetes можно просмотреть на портал Azure. После открытия портала в браузере перейдите к группе ресурсов и ресурсу Kubernetes с поддержкой Azure Arc, который основан на имени ресурса и входных данных имени группы ресурсов, используемых в команде PowerShell enable-akshciarcconnection .
Примечание
После подключения кластера на странице обзора ресурса Kubernetes с поддержкой Azure Arc в портал Azure может потребоваться не более пяти минут (версия кластера, версия агента, количество узлов).
Агенты Azure Arc для Kubernetes
Kubernetes с поддержкой Azure Arc развертывает в пространстве имен azure-arc ряд операторов. Эти развертывания и модули kubectl pod можно просмотреть ниже.
kubectl -n azure-arc get deployments,pods
Kubernetes с поддержкой Azure Arc состоит из нескольких агентов (операторов), которые выполняются в кластере, развернутом в azure-arc пространстве имен. Дополнительные сведения об этих агентах можно найти здесь.
Отключение AKS в кластере Azure Stack HCI от Azure Arc
Если вы хотите отключить кластер от Kubernetes с поддержкой Azure Arc, выполните команду PowerShell Disable-AksHciArcConnection . Перед выполнением команды обязательно войдите в Azure.
Disable-AksHciArcConnection -Name mynewcluster