Подключение Служба 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.

Подготовка к работе

Убедитесь, что у вас есть следующие требования:

Шаг 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

Следующие шаги