Краткое руководство. Создание ресурса Azure Kubernetes Fleet Manager и присоединение кластеров участников с помощью Azure CLI
Начало работы с диспетчером флотов Azure Kubernetes (Fleet) с помощью Azure CLI для создания ресурса Флота и последующего подключения кластеров Служба Azure Kubernetes (AKS) в качестве кластеров-членов.
Необходимые компоненты
Если у вас еще нет подписки Azure, создайте бесплатную учетную запись Azure, прежде чем начинать работу.
Ознакомьтесь с концептуальным обзором этой функции, которая содержит описание флотов и кластеров членов, на которые ссылается этот документ.
Ознакомьтесь с концептуальной обзором типов флота, которые предоставляют сравнение различных вариантов конфигурации флота.
Учетная запись Azure с активной подпиской. Создайте учетную запись бесплатно .
Удостоверение (пользователь или субъект-служба), которое можно использовать для входа в Azure CLI. Это удостоверение должно иметь следующие разрешения на типы ресурсов Fleet и AKS для выполнения действий, перечисленных в этом кратком руководстве.
- Microsoft.ContainerService/fleets/read
- Microsoft.ContainerService/fleets/write
- Microsoft.ContainerService/fleets/members/read
- Microsoft.ContainerService/fleets/members/write
- Microsoft.ContainerService/fleetMemberships/read
- Microsoft.ContainerService/fleetMemberships/write
- Microsoft.ContainerService/managedClusters/read
- Microsoft.ContainerService/managedClusters/write
Установите или обновите Azure CLI до версии
2.53.1
или более поздней версии.Установите расширение Azure CLI парка с помощью
az extension add
команды и убедитесь, что версия не менее1.0.0
.az extension add --name fleet
Установите указанные ниже переменные среды.
export SUBSCRIPTION_ID=<subscription_id> export GROUP=<your_resource_group_name> export FLEET=<your_fleet_name>
Установка
kubectl
иkubelogin
использованиеaz aks install-cli
команды.az aks install-cli
Кластеры AKS, которые необходимо присоединить к кластеру-члену, должны находиться в поддерживаемых версиях AKS. Дополнительные сведения о политике поддержки версий AKS см. здесь.
Создание или изменение группы ресурсов
Группа ресурсов Azure — это логическая группа, в которой развертываются и управляются ресурсы Azure. При создании группы ресурсов вам будет предложено указать расположение. Это расположение хранилища метаданных группы ресурсов и место, где ресурсы выполняются в Azure, если вы не указываете другое расположение во время создания ресурса.
Задайте подписку Azure и создайте группу ресурсов с помощью az group create
команды.
az account set -s ${SUBSCRIPTION_ID}
az group create --name ${GROUP} --location eastus
Следующий пример выходных данных похож на успешное создание группы ресурсов:
{
"id": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/fleet-demo",
"location": "eastus",
"managedBy": null,
"name": "fleet-demo",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null,
"type": "Microsoft.Resources/resourceGroups"
}
Создание ресурса Fleet
Вы можете создать ресурс Fleet для последующей группировки кластеров AKS в качестве кластеров-членов. При создании с помощью Azure CLI по умолчанию этот ресурс включает группирование и оркестрацию кластеров членов. Если концентратор Fleet включен, другие функции предварительной версии включены, например распространение объектов Kubernetes в кластеры-члены и балансировка нагрузки службы L4 между несколькими кластерами-членами. Дополнительные сведения см. в концептуальном обзоре типов флота, которые обеспечивают сравнение различных конфигураций флота.
Внимание
После создания ресурса Парка Kubernetes можно обновить ресурс Kubernetes Fleet без кластера концентратора до одного с кластером концентратора. Для ресурсов Kubernetes Fleet с кластером концентратора после выбора частного или общедоступного не удается изменить его.
- Ресурс Kubernetes Fleet без кластера концентратора
- Ресурс Kubernetes Fleet с кластером концентратора
Если вы хотите использовать флот только для оркестрации обновлений, который используется по умолчанию при создании нового ресурса Fleet с помощью Azure CLI, можно создать ресурс Fleet без кластера концентратора az fleet create
с помощью команды.
az fleet create --resource-group ${GROUP} --name ${FLEET} --location eastus
Выходные данные должны выглядеть примерно так:
{
"etag": "...",
"hubProfile": null,
"id": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/fleet-demo/providers/Microsoft.ContainerService/fleets/fleet-demo",
"identity": {
"principalId": null,
"tenantId": null,
"type": "None",
"userAssignedIdentities": null
},
"location": "eastus",
"name": "fleet-demo",
"provisioningState": "Succeeded",
"resourceGroup": "fleet-demo",
"systemData": {
"createdAt": "2023-11-03T17:15:19.610149+00:00",
"createdBy": "<user>",
"createdByType": "User",
"lastModifiedAt": "2023-11-03T17:15:19.610149+00:00",
"lastModifiedBy": "<user>",
"lastModifiedByType": "User"
},
"tags": null,
"type": "Microsoft.ContainerService/fleets"
}
Присоединение кластеров участников
Парк в настоящее время поддерживает присоединение существующих кластеров AKS в качестве кластеров-членов.
Задайте следующие переменные среды для кластеров членов:
export MEMBER_NAME_1=aks-member-1 export MEMBER_CLUSTER_ID_1=/subscriptions/${SUBSCRIPTION_ID}/resourceGroups/${GROUP}/providers/Microsoft.ContainerService/managedClusters/${MEMBER_NAME_1}
Присоедините существующие кластеры AKS к ресурсу Fleet с помощью
az fleet member create
команды.# Join the first member cluster az fleet member create --resource-group ${GROUP} --fleet-name ${FLEET} --name ${MEMBER_NAME_1} --member-cluster-id ${MEMBER_CLUSTER_ID_1}
Выходные данные должны выглядеть примерно так:
{ "clusterResourceId": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/managedClusters/aks-member-x", "etag": "...", "id": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/fleets/<FLEET>/members/aks-member-x", "name": "aks-member-1", "provisioningState": "Succeeded", "resourceGroup": "<GROUP>", "systemData": { "createdAt": "2022-10-04T19:04:56.455813+00:00", "createdBy": "<user>", "createdByType": "User", "lastModifiedAt": "2022-10-04T19:04:56.455813+00:00", "lastModifiedBy": "<user>", "lastModifiedByType": "User" }, "type": "Microsoft.ContainerService/fleets/members" }
Убедитесь, что кластеры-члены успешно присоединились к ресурсу Fleet с помощью
az fleet member list
команды.az fleet member list --resource-group ${GROUP} --fleet-name ${FLEET} -o table
В случае успешного выполнения выходные данные должны выглядеть примерно так:
ClusterResourceId Name ProvisioningState ResourceGroup ----------------------------------------------------------------------------------------------------------------------------------------------- ------------ ------------------- --------------- /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/managedClusters/aks-member-1 aks-member-1 Succeeded <GROUP> /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/managedClusters/aks-member-2 aks-member-2 Succeeded <GROUP> /subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<GROUP>/providers/Microsoft.ContainerService/managedClusters/aks-member-3 aks-member-3 Succeeded <GROUP>
Следующие шаги
- Доступ к API Kubernetes кластера Fleet Hub.
Azure Kubernetes Service