Partilhar via


Guia de início rápido: criar um recurso do Azure Kubernetes Fleet Manager e ingressar em clusters de membros usando a CLI do Azure

Comece a usar o Azure Kubernetes Fleet Manager (Fleet) usando a CLI do Azure para criar um recurso de frota e, posteriormente, conectar clusters do Serviço Kubernetes do Azure (AKS) como clusters de membros.

Pré-requisitos

Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure antes de começar.

  • Leia a visão geral conceitual desse recurso, que fornece uma explicação sobre frotas e clusters de membros referenciados neste documento.

  • Leia a visão geral conceitual dos tipos de frota, que fornece uma comparação de diferentes opções de configuração de frota.

  • Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.

  • Uma identidade (usuário ou entidade de serviço) que pode ser usada para fazer logon na CLI do Azure. Essa identidade precisa ter as seguintes permissões nos tipos de recursos Fleet e AKS para concluir as etapas listadas neste início rápido:

    • 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
  • Instale ou atualize a CLI do Azure para a versão 2.53.1 ou posterior.

  • Instale a extensão da CLI do Azure fleet usando o az extension add comando e certifique-se de que sua versão seja pelo menos 1.0.0.

    az extension add --name fleet
    
  • Defina as seguintes variáveis de ambiente:

    export SUBSCRIPTION_ID=<subscription_id>
    export GROUP=<your_resource_group_name>
    export FLEET=<your_fleet_name>
    
  • Instale kubectl e kubelogin use o az aks install-cli comando.

    az aks install-cli
    
  • Os clusters AKS que você deseja unir como clusters membros ao recurso Fleet precisam estar dentro das versões suportadas do AKS. Saiba mais sobre a política de suporte da versão do AKS aqui.

Criar um grupo de recursos

Um grupo de recursos do Azure é um grupo lógico no qual os recursos do Azure são implantados e gerenciados. Ao criar um grupo de recursos, você será solicitado a especificar um local. Esse local é o local de armazenamento dos metadados do grupo de recursos e onde os recursos são executados no Azure se você não especificar outro local durante a criação do recurso.

Defina a assinatura do Azure e crie um grupo de recursos usando o az group create comando.

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

O exemplo de saída a seguir é semelhante à criação bem-sucedida do grupo de recursos:

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

Criar um recurso de frota

Você pode criar um recurso Fleet para agrupar posteriormente seus clusters AKS como clusters membros. Quando criado por meio da CLI do Azure, por padrão, esse recurso permite o agrupamento de clusters de membros e a orquestração de atualizações. Se o hub do Fleet estiver habilitado, outros recursos de visualização serão habilitados, como a propagação de objetos do Kubernetes para clusters membros e o balanceamento de carga de serviço L4 em vários clusters membros. Para obter mais informações, consulte a visão geral conceitual dos tipos de frota, que fornece uma comparação de diferentes configurações de frota.

Importante

Depois que um recurso da Frota do Kubernetes for criado, é possível atualizar um recurso da Frota do Kubernetes sem um cluster de hub para um com um cluster de hub. Para recursos da Frota do Kubernetes com um cluster de hub, uma vez que privado ou público tenha sido selecionado, ele não pode ser alterado.

Se você quiser usar o Fleet apenas para orquestração de atualizações, que é a experiência padrão ao criar um novo recurso do Fleet por meio da CLI do Azure, poderá criar um recurso do Fleet sem o cluster de hub usando o az fleet create comando.

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

Sua saída deve ser semelhante à saída de exemplo a seguir:

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

Junte-se a clusters de membros

Atualmente, a Fleet suporta a adesão de clusters AKS existentes como clusters de membros.

  1. Defina as seguintes variáveis de ambiente para clusters membros:

    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. Junte seus clusters AKS existentes ao recurso Fleet usando o az fleet member create comando.

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

    Sua saída deve ser semelhante à saída de exemplo a seguir:

    {
      "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. Verifique se os clusters membros ingressaram com êxito no recurso Fleet usando o az fleet member list comando.

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

    Se for bem-sucedida, sua saída deverá ser semelhante à saída de exemplo a seguir:

    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>
    

Próximos passos