Dimensionamento da rede

Concluído

Saber o número de pods e nós é essencial antes de determinar quantos endereços IP você precisa. Agora que você sabe o número de pods e nós necessários, vamos ver o dimensionamento da rede.

Dimensionamento da sub-rede de rede virtual

Você deseja um máximo de sete VMs para os nós de cluster do Kubernetes. Lembre-se de que um nó extra é adicionado temporariamente aos clusters do Serviço Kubernetes do Azure (AKS) durante o processo de atualização. Portanto, você precisa fazer cálculos de tamanho de rede com base em oito máquinas virtuais (VM).

Maximum 7 VMs + 1 VM for upgrades = 8 node IP addresses

Por padrão, os clusters AKS que usam o plug-in CNI (Azure Container Networking Interface) são configurados para permitir um máximo de 30 pods por nó. Este valor é configurável para qualquer valor entre 10 e 250 pods. Os cálculos de dimensionamento de rede devem permitir que esse número máximo de pods seja implantado.

8 VMs x 30 pods per node maximum = 240 pod IP addresses

Você precisa de 8 endereços IP para nós e 240 endereços IP para pods.

8 node IP addresses + 240 pod IP addresses = 248 IP addresses

Gorjeta

Se você planeja usar um Balanceador de Carga do Azure interno com seu cluster, ele também requer um endereço IP. É uma prática comum usar uma sub-rede dedicada para balanceadores de carga, mas se você planeja usar a mesma sub-rede que seus nós, precisará contabilizá-la.

Neste design, você decidiu manter a configuração padrão do pool de nós. A configuração padrão usa um único pool de nós do Modo de Sistema que executa tudo. Se quiser garantir que os componentes do sistema estejam isolados dos aplicativos, você precisará de pelo menos dois pools de nós. Você deve ajustar os cálculos do intervalo de endereços IP para contabilizá-lo.

Agora você pode abordar a equipe responsável pela alocação de rede em sua organização e solicitar uma sub-rede que suporte 248 endereços IP. Quando você cria uma sub-rede em uma Rede Virtual do Azure, cinco endereços IP são reservados para uso do sistema. Um intervalo de endereços /24 teria 251 endereços IP utilizáveis, o que o tornaria um bom ajuste para o cluster.

Selecionando um intervalo de endereços de serviço do Kubernetes

Com a sub-rede de nó e pod selecionada, há apenas mais um intervalo de endereços para selecionar: o intervalo de endereços para o Serviço Kubernetes. O Serviço Kubernetes fornece um endereço IP virtual estático que permite que o tráfego seja roteado para seus pods. Esse intervalo de endereços só é usado para rotear o tráfego dentro do cluster. O intervalo de endereços nunca é usado ou exposto fora do cluster. Portanto, você precisa selecionar um intervalo de endereços de rede privada que não seja usado em outro lugar no Azure ou em suas redes locais.

Gorjeta

Como o intervalo de endereços de serviço do Kubernetes nunca é usado fora do cluster, é possível reutilizar esse intervalo de endereços em vários clusters.

As regras para selecionar um intervalo de endereços de serviço incluem:

  • O intervalo não pode estar dentro do intervalo de endereços IP da rede virtual usada para o cluster.
  • O intervalo não pode estar dentro do intervalo de endereços IP de quaisquer outras redes virtuais emparelhadas com a rede de cluster.
  • O intervalo não pode se sobrepor a nenhum intervalo de endereços IP usado em redes locais.
  • O intervalo não pode estar nos intervalos de endereços IP 169.254.0.0/16, 172.30.0.0/16, 172.31.0.0/16 ou 192.0.2.0/24.

Normalmente, você não precisa de muitos endereços IP para serviços dentro de um cluster. Normalmente, você tem um serviço na frente de um grupo de pods que executam várias réplicas de um aplicativo. Neste caso, você tem oito serviços diferentes formando o aplicativo, então você só precisa de oito endereços IP de serviço.

Outros serviços em execução no cluster, como Controladores de Entrada ou Malhas de Serviço, podem consumir mais endereços IP de serviço. É melhor considerar espaço extra para outros serviços que você possa usar no futuro. Geralmente, é uma boa ideia usar um intervalo de endereços generoso. Um intervalo de endereços /24 fornece muito espaço para o cluster trabalhar.

Selecionando um endereço IP de serviço DNS

O Kubernetes usa um serviço DNS (Sistema de Nomes de Domínio) interno para fornecer recursos de descoberta de serviço dentro do cluster. O serviço DNS precisa de um endereço IP dentro do intervalo de endereços do Serviço Kubernetes. Não é possível usar o primeiro endereço IP do intervalo de endereços do Serviço Kubernetes, mas qualquer outro valor é aceitável.

Agora você tem todas as informações necessárias para implantar o cluster.