Partilhar via


Tipo de cluster de hub de atualização para o recurso do Azure Kubernetes Fleet Manager

Neste artigo, você aprenderá a atualizar um recurso do Azure Kubernetes Fleet Manager (Kubernetes Fleet) sem um cluster de hub para um recurso do Kubernetes Fleet que tenha um cluster de hub. Quando um recurso da Frota do Kubernetes é criado sem um cluster de hub, um cluster central do Serviço Kubernetes (AKS) do Azure não é criado para o recurso da Frota do Kubernetes. Quando um recurso da Frota do Kubernetes com um cluster de hub é criado, um cluster AKS central e gerenciado é criado para habilitar cenários como orquestração de carga de trabalho e balanceamento de carga de camada 4.

Para obter mais informações, consulte Escolhendo uma opção do Azure Kubernetes Fleet Manager.

Pré-requisitos e limitações

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

  • Instale ou atualize a CLI do Azure para a versão mais recente.
  • Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
  • Você deve ter um recurso existente da Frota do Kubernetes sem um cluster de hub. As etapas neste artigo mostram como criar um recurso da Frota do Kubernetes sem um cluster de hub. Se você já tiver um, poderá ignorar a configuração inicial e começar em Atualizar tipo de cluster de hub para o recurso Frota do Kubernetes.
  • Este artigo também inclui etapas sobre como ingressar em clusters de membros. Se você planeja acompanhar, você precisa de pelo menos um cluster AKS.

Importante

Os recursos da Frota do Kubernetes sem um cluster de hub podem ser atualizados para um recurso da Frota do Kubernetes com um cluster de hub. No entanto, um recurso da Frota do Kubernetes que já tenha um cluster de hub não pode ser rebaixado para um recurso da Frota do Kubernetes sem um cluster de hub. Todas as opções de configuração e configurações associadas ao recurso Kubernetes Fleet que tem um cluster de hub são imutáveis e não podem ser alteradas após a criação ou o tempo de atualização. A atualização de um recurso da Frota do Kubernetes sem um cluster de hub para um com um cluster de hub só pode ser feita por meio da CLI do Azure. Atualmente, não há nenhuma experiência equivalente no portal do Azure.

Configuração inicial

Para começar, crie um grupo de recursos e um recurso da Frota do Kubernetes sem um cluster de hub e junte-se ao cluster AKS existente como membro. Você precisará repetir o az fleet member create comando para cada cluster de membros individual que deseja associar ao recurso de frota.

RG=myResourceGroup
LOCATION=eastus
FLEET=myKubernetesFleet
FLEET_MEMBER=<name-identifying-member-cluster>
SUBSCRIPTION_ID=<your-subscription-id>
CLUSTER=<your-aks-cluster-name>

# Create resource group
az group create -n $RG -l $LOCATION

# Create a hubless fleet resource 
az fleet create -g $RG -n $FLEET

# Join member cluster to hubless fleet resource
az fleet member create --name $FLEET_MEMBER --fleet-name $FLEET --resource-group $RG --member-cluster-id /subscriptions/$SUBSCRIPTION_ID/resourceGroups/$RG/providers/Microsoft.ContainerService/managedClusters/$CLUSTER

Atualizar o tipo de cluster de hub para o recurso Frota do Kubernetes

Para atualizar o tipo de cluster de hub para o recurso Frota do Kubernetes, use o az fleet create comando com o --enable-hub sinalizador definido. Certifique-se de incluir quaisquer outras opções de configuração relevantes, pois o recurso da frota se tornará imutável após a conclusão desta operação.

# Upgrade the Kubernetes fleet resource without a hub cluster to one with a hub cluster
az fleet create --name $FLEET --resource-group $RG --enable-hub 

Validar a atualização

Depois de executar o az fleet create comando para atualizar o recurso da frota, verifique se a atualização foi bem-sucedida exibindo a saída. O provisioningState deve ler Succeeded e o hubProfile campo deve existir. Por exemplo, consulte a seguinte saída:

{
  ...
  "hubProfile": {
    "agentProfile": {
      "subnetId": null,
      "vmSize": null
    },
    "apiServerAccessProfile": {
      "enablePrivateCluster": false,
      "enableVnetIntegration": false,
      "subnetId": null
    },
    "dnsPrefix": "contoso-user-xxxx-xxxxxxx",
    "fqdn": "contoso-user-flth-xxxxxx-xxxxxxxx.hcp.eastus.azmk8s.io",
    "kubernetesVersion": "1.28.5",
    "portalFqdn": "contoso-user-flth-xxxxxxx-xxxxxxxx.portal.hcp.eastus.azmk8s.io"
  },
  "provisioningState": "Succeeded"
  ...
}

Voltar a juntar-se a clusters de membros

Para reingressar clusters membros no recurso de frota recém-atualizado, use o az fleet member reconcile comando para cada cluster de membro individual.

az fleet member reconcile -g $RG -f $FLEET -n $FLEET_MEMBER

Nota

Todos os clusters AKS aos quais você está se juntando ao recurso de frota pela primeira vez após a atualização já ter ocorrido não precisam ser reconciliados usando az fleet member reconcileo .

Verificar se os clusters de membros ingressaram com êxito

Para cada cluster de membros que você reingressar na frota recém-atualizada, exiba a saída e verifique se provisioningStateSucceeded. Por exemplo:

{
  ...
  "provisioningState": "Succeeded"
  ...
}

Verificar funcionalidade

Você precisa acessar a API do Kubernetes do cluster de hub. Se você não tiver acesso, consulte Access Fleet hub cluster Kubernetes API.

Para verificar se o recurso Kubernetes Fleet recém-atualizado está funcionando corretamente e se os clusters membros ingressaram com êxito, confirme se você pode acessar o servidor de API do cluster de hub usando o kubectl get memberclusters comando.

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

NAME           JOINED   AGE
aks-member-1   True     2m
aks-member-2   True     2m
aks-member-3   True     2m

Clean up resources (Limpar recursos)

Quando terminar, você pode remover o recurso de frota e os recursos relacionados excluindo o grupo de recursos. Lembre-se de que essa operação não removerá seus clusters AKS se eles residirem em um grupo de recursos diferente.

az group delete -n $RG

Próximos passos

Agora que seu recurso Kubernetes Fleet foi atualizado para ter um cluster de hub, você pode aproveitar os recursos que antes não estavam disponíveis para você. Por exemplo, consulte: