Personalizar a saída de cluster com tipos de saída no Serviço Kubernetes do Azure (AKS)

Você pode personalizar a saída para um cluster AKS para se ajustar a cenários específicos. Por padrão, o AKS provisiona um balanceador de carga SKU padrão para ser configurado e usado para saída. No entanto, a configuração padrão pode não atender aos requisitos de todos os cenários se IPs públicos não forem permitidos ou saltos extras forem necessários para a saída.

Este artigo aborda os vários tipos de conectividade de saída disponíveis em clusters AKS.

Nota

Agora você pode atualizar a criação do cluster após a outboundType criação.

Limitações

  • A configuração outboundType requer clusters AKS com um vm-set-type de VirtualMachineScaleSets e load-balancer-sku de Standard.

Tipos de saída no AKS

Você pode configurar um cluster AKS usando os seguintes tipos de saída: balanceador de carga, gateway NAT ou roteamento definido pelo usuário. O tipo de saída afeta apenas o tráfego de saída do cluster. Para obter mais informações, consulte configurando controladores de entrada.

Nota

Você pode usar sua própria [tabela de rotas][byo-route-table] com UDR e rede kubenet. Verifique se a identidade do cluster (entidade de serviço ou identidade gerenciada) tem permissões de Colaborador para a tabela de rotas personalizada.

Tipo de saída de loadBalancer

O balanceador de carga é usado para saída através de um IP público atribuído pelo AKS. Um tipo de loadBalancer saída suporta serviços Kubernetes do tipo loadBalancer, que esperam saída do balanceador de carga criado pelo provedor de recursos AKS.

Se loadBalancer estiver definido, o AKS conclui automaticamente a seguinte configuração:

  • Um endereço IP público é provisionado para saída de cluster.
  • O endereço IP público é atribuído ao recurso do balanceador de carga.
  • Os pools de back-end para o balanceador de carga são configurados para nós de agente no cluster.

O diagrama mostra a entrada I P e a saída I P, onde a entrada I P direciona o tráfego para um balanceador de carga, que direciona o tráfego de e para um cluster interno e outro tráfego para o I P de saída, que direciona o tráfego para a Internet, M C R, Serviços necessários do Azure e o Plano de Controle K S.

Para obter mais informações, consulte Usando um balanceador de carga padrão no AKS.

Tipo de saída de managedNatGateway ou userAssignedNatGateway

Se managedNatGateway ou userAssignedNatGateway for selecionado para outboundType, o AKS depende do gateway NAT de Rede do Azure para saída de cluster.

  • Selecione managedNatGateway ao usar redes virtuais gerenciadas. O AKS provisiona um gateway NAT e o anexa à sub-rede do cluster.
  • Selecione userAssignedNatGateway ao usar a rede virtual traga sua própria rede. Essa opção requer que você tenha provisionado um gateway NAT antes da criação do cluster.

Para obter mais informações, consulte Usando o gateway NAT com o AKS.

Tipo de saída de userDefinedRouting

Nota

O userDefinedRouting tipo de saída é um cenário de rede avançado e requer configuração de rede adequada.

Se userDefinedRouting estiver definido, o AKS não configurará automaticamente os caminhos de saída. A configuração da saída deve ser feita por você.

Você deve implantar o cluster AKS em uma rede virtual existente com uma sub-rede que tenha sido configurada anteriormente. Como você não está usando uma arquitetura SLB (balanceador de carga padrão), você deve estabelecer uma saída explícita. Essa arquitetura requer o envio explícito de tráfego de saída para um dispositivo como um firewall, gateway, proxy ou para permitir que o NAT seja feito por um IP público atribuído ao balanceador de carga ou dispositivo padrão.

Para obter mais informações, consulte configurando a saída do cluster por meio do roteamento definido pelo usuário.

Atualização após a outboundType criação do cluster

Alterar o tipo de saída após a criação do cluster implantará ou removerá recursos conforme necessário para colocar o cluster na nova configuração de saída.

As tabelas a seguir mostram os caminhos de migração suportados entre tipos de saída para redes virtuais gerenciadas e BYO.

Caminhos de migração suportados para VNet gerenciada

Rede virtual gerenciada loadBalancer managedNATGateway userAssignedNATGateway userDefinedRouting
loadBalancer N/A Suportado Não suportado Não suportado
managedNATGateway Suportado N/A Não suportado Não suportado
userAssignedNATGateway Não suportado Não suportado N/A Não suportado
userDefinedRouting Suportado Suportado Não suportado N/A

Caminhos de migração suportados para BYO VNet

BYO VNet loadBalancer managedNATGateway userAssignedNATGateway userDefinedRouting
loadBalancer N/A Não suportado Suportado Suportado
managedNATGateway Não suportado N/A Não suportado Não suportado
userAssignedNATGateway Suportado Não suportado N/A Suportado
userDefinedRouting Suportado Não suportado Suportado N/A

A migração só é suportada entre loadBalancer, managedNATGateway (se estiver usando uma rede virtual gerenciada) userAssignedNATGateway e userDefinedRouting (se estiver usando uma rede virtual personalizada).

Aviso

A migração do tipo de saída para tipos gerenciados pelo usuário (userAssignedNATGateway e userDefinedRouting) alterará os endereços IP públicos de saída do cluster. se Intervalos de IP autorizados estiver ativado, certifique-se de que o novo intervalo de IP de saída seja anexado ao intervalo de IP autorizado.

Aviso

Alterar o tipo de saída em um cluster interrompe a conectividade de rede e resultará em uma alteração do endereço IP de saída do cluster. Se alguma regra de firewall tiver sido configurada para restringir o tráfego do cluster, será necessário atualizá-las para corresponder ao novo endereço IP de saída.

Atualizar cluster para usar um novo tipo de saída

Nota

Você deve usar uma versão >= 2.56 da CLI do Azure para migrar o tipo de saída. Use az upgrade para atualizar para a versão mais recente da CLI do Azure.

  • Atualize a configuração de saída do cluster usando o az aks update comando.

Atualizar cluster do balanceador de carga para managedNATGateway

az aks update -g <resourceGroup> -n <clusterName> --outbound-type managedNATGateway --nat-gateway-managed-outbound-ip-count <number of managed outbound ip>

Atualizar cluster de managedNATGateway para loadbalancer

az aks update -g <resourceGroup> -n <clusterName> \
--outbound-type loadBalancer \
<--load-balancer-managed-outbound-ip-count <number of managed outbound ip>| --load-balancer-outbound-ips <outbound ip ids> | --load-balancer-outbound-ip-prefixes <outbound ip prefix ids> >

Aviso

Não reutilize um endereço IP que já esteja em uso em configurações de saída anteriores.

Atualizar cluster de managedNATGateway para userDefinedRouting

az aks update -g <resourceGroup> -n <clusterName> --outbound-type userDefinedRouting

Atualizar cluster do balanceador de carga para userAssignedNATGateway no cenário vnet BYO

  • Associe o gateway nat à sub-rede à qual a carga de trabalho está associada. Consulte Criar um gateway NAT gerenciado ou atribuído pelo usuário
az aks update -g <resourceGroup> -n <clusterName> --outbound-type userAssignedNATGateway

Próximos passos