Rychlý start: Vytvoření prostředku Azure Kubernetes Fleet Manageru a připojení k členským clusterům pomocí Azure CLI

Začínáme s Azure Kubernetes Fleet Managerem (Fleet) pomocí Azure CLI k vytvoření prostředku flotily a pozdějšímu připojení clusterů Azure Kubernetes Service (AKS) jako členských clusterů.

Požadavky

Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.

  • Přečtěte si koncepční přehled této funkce, která poskytuje vysvětlení flotil a členských clusterů, na které se odkazuje v tomto dokumentu.

  • Účet Azure s aktivním předplatným. Vytvoření účtu zdarma

  • Identita (uživatel nebo instanční objekt), která se dá použít k přihlášení k Azure CLI. Pro dokončení kroků uvedených v tomto rychlém startu musí mít tato identita pro typy prostředků Fleet a 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
  • Nainstalujte nebo upgradujte Azure CLI na verzi 2.53.1 nebo novější.

  • Nainstalujte rozšíření Azure CLI pro vozový park pomocí az extension add příkazu a ujistěte se, že je vaše verze alespoň 1.0.0.

    az extension add --name fleet
    
  • Nastavte následující proměnné prostředí:

    export SUBSCRIPTION_ID=<subscription_id>
    export GROUP=<your_resource_group_name>
    export FLEET=<your_fleet_name>
    
  • Nainstalujte kubectl a kubelogin použijte az aks install-cli příkaz.

    az aks install-cli
    
  • Clustery AKS, ke kterým se chcete připojit jako členské clustery k prostředku Fleet, musí být v podporovaných verzích AKS. Další informace o zásadách podpory verzí AKS najdete tady.

Vytvoření skupiny zdrojů

Skupina prostředků Azure je logická skupina, ve které se nasazují a spravují prostředky Azure. Při vytváření skupiny prostředků se zobrazí výzva k zadání umístění. Toto umístění je umístění úložiště metadat vaší skupiny prostředků a místo, kde vaše prostředky běží v Azure, pokud během vytváření prostředků nezadáte jiné umístění.

Nastavte předplatné Azure a vytvořte skupinu prostředků pomocí az group create příkazu.

az account set -s ${SUBSCRIPTION_ID}
az group create --name ${GROUP} --location eastus

Následující příklad výstupu se podobá úspěšnému vytvoření skupiny prostředků:

{
  "id": "/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/fleet-demo",
  "location": "eastus",
  "managedBy": null,
  "name": "fleet-demo",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null,
  "type": "Microsoft.Resources/resourceGroups"
}

Vytvoření prostředku Fleet

Prostředek Fleet můžete vytvořit pro pozdější seskupení clusterů AKS jako členských clusterů. Ve výchozím nastavení tento prostředek umožňuje orchestraci seskupování a aktualizace členských clusterů. Pokud je centrum Fleet povolené, jsou povolené další funkce verze Preview, jako je šíření objektu Kubernetes do členských clusterů a vyrovnávání zatížení služby L4 napříč několika členskými clustery.

Důležité

Odteď není možné po vytvoření prostředku flotily změnit režim centra pro prostředek flotily.

Možnost 1 : Vytvoření flotily bez clusteru centra

Pokud chcete použít flotilu pouze pro orchestraci aktualizací, což je výchozí prostředí při vytváření nového prostředku Fleet, můžete vytvořit prostředek Fleet bez clusteru centra pomocí az fleet create příkazu. Další informace najdete v tématu Co je cluster centra (Preview)?.

az fleet create --resource-group ${GROUP} --name ${FLEET} --location eastus

Výstup by měl vypadat podobně jako v následujícím příkladu výstupu:

{
  "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"
}

Možnost 2 – Vytvoření flotily s clusterem centra

Pokud chcete kromě orchestrace aktualizací použít také rozšíření objektu Fleet pro Kubernetes a vyrovnávání zatížení s více clustery, musíte vytvořit prostředek Fleet s clusterem centra, který je povolený zadáním --enable-hub parametru pomocí az fleet create příkazu.

az fleet create --resource-group ${GROUP} --name ${FLEET} --location eastus --enable-hub

Výstup by měl vypadat podobně jako ukázkový výstup v předchozí části.

Připojení ke clusterům členů

Flotila v současné době podporuje připojení stávajících clusterů AKS jako členských clusterů.

  1. Nastavte následující proměnné prostředí pro členské clustery:

    export MEMBER_NAME_1=aks-member-1
    export MEMBER_CLUSTER_ID_1=/subscriptions/${SUBSCRIPTION_ID}/resourceGroups/${GROUP}/providers/Microsoft.ContainerService/managedClusters/${MEMBER_NAME_1}
    
  2. Pomocí příkazu připojte existující clustery AKS k prostředku az fleet member create Fleet.

    # 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}
    

    Výstup by měl vypadat podobně jako v následujícím příkladu výstupu:

    {
      "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"
    }
    
  3. Pomocí příkazu ověřte, že se členské clustery úspěšně připojily k prostředku az fleet member list Fleet.

    az fleet member list --resource-group ${GROUP} --fleet-name ${FLEET} -o table
    

    Pokud je výstup úspěšný, měl by vypadat podobně jako v následujícím příkladu výstupu:

    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>
    

Další kroky