Planejar seus endereços IP

Neste documento, mostramos um exemplo de como alocar endereços IP para um cluster de administrador de alta disponibilidade (HA, na sigla em inglês) e dois clusters de usuário de alta disponibilidade.

Antes de começar

Para saber mais sobre clusters de administrador, clusters de usuário e alta disponibilidade, consulte Como escolher um modelo de implantação.

Exemplo de alocação de endereço IP

Nesta seção, você verá um exemplo de como alocar endereços IP em uma instalação que contém estes elementos:

  • Endereços IP para nós do cluster

  • Endereços IP para pods

  • Endereços IP do cluster para Serviços

  • Endereços IP virtuais (VIPs) para os planos de controle e proxies de entrada

  • VIPs a serem usados como endereços IP externos para serviços

Nós do cluster de administrador

O cluster de administrador neste exemplo tem três nós. Cada nó executa componentes do plano de controle.

Nós do cluster de usuário

Neste exemplo, cada cluster de usuário tem seis nós: três nós do plano de controle e três nós de trabalho.

Balanceamento de carga

Neste exemplo, suponha que os clusters estejam usando o balanceador de carga MetalLB integrado. O balanceador de carga é executado nos nós do cluster. Por isso, nenhuma outra máquina é necessária para o balanceamento de carga.

Sub-redes

Para este exemplo, suponha que cada cluster esteja no próprio domínio da camada 2 e os clusters estejam nestas sub-redes:

Cluster Sub-rede Gateway padrão
Cluster de administrador 172.16.20.0/24 172.16.20.1
Cluster de usuário 1 172.16.21.0/24 172.16.21.1
Cluster de usuário 2 172.16.22.0/24 172.16.22.1

O diagrama a seguir ilustra as três sub-redes. Os VIPs não são mostrados associados a um nó específico em um cluster. Isso ocorre porque o balanceador de carga do MetalLB pode escolher qual nó anuncia o VIP de um Serviço individual. Por exemplo, no cluster de usuário 1, um nó pode anunciar 172.16.21.52 e outro pode anunciar 172.16.21.53.

Endereços IP de um cluster de administrador e dois clusters de usuário.
Endereços IP de um cluster de administrador e dois clusters de usuário (clique para ampliar)

Exemplo de endereços IP: nós de cluster de administrador

Você precisa de três endereços IP para os nós do cluster de administrador, todos executando componentes do plano de controle. Por exemplo, é possível usar os seguintes endereços IP para nós no cluster de administrador. Os endereços neste exemplo são consecutivos, mas isso não é um requisito:

Endereços IP para nós no cluster de administrador
172.16.20.2 - 172.16.20.4

Exemplo de endereço IP: VIP do plano de controle para o cluster de administrador

Você precisa reservar um VIP para o servidor da API Kubernetes do cluster de administrador. No arquivo de configuração do cluster de administrador, ele é chamado de controlPlaneVIP. Por exemplo, é possível reservar o seguinte endereço IP para ser usado como o VIP do plano de controle para o cluster de administrador:

VIP do plano de controle para o cluster de administrador
172.16.20.50

Exemplo de endereços IP: nós do cluster de usuário 1

Exemplo: é possível usar os seguintes endereços IP para três nós do plano de controle e três nós de trabalho no cluster de usuário 1. Os endereços neste exemplo são consecutivos, mas isso não é um requisito:

Endereços IP para nós no cluster de usuário 1
172.16.21.2 - 172.16.21.7

Exemplos de endereços IP: VIPs para o cluster de usuário 1

A tabela a seguir mostra um exemplo de como designar VIPs para configuração no balanceador de carga para o cluster de usuário 1. Os VIPs neste exemplo são consecutivos, mas isso não é um requisito:

VIP Descrição Endereço IP
VIP do plano de controle para o cluster de usuário 1. Configurado no balanceador de carga para o cluster de usuário 1 172.16.21.50
VIP de entrada para o cluster de usuário 1 Configurado no balanceador de carga para o cluster de usuário 1 172.16.21.51
VIPs de serviço para o cluster de usuário 1 10 endereços para serviços do tipo LoadBalancer.
Configurado conforme necessário no balanceador de carga para o cluster de usuário 1.
Esse intervalo inclui o VIP de entrada.
Este é um requisito do balanceador MetalLB.
172.16.21.51 - 172.16.21.60

Exemplo de endereços IP: nós do cluster de usuário 2

Exemplo: é possível usar os seguintes endereços IP para nós no cluster de usuário 2. Os endereços neste exemplo são consecutivos, mas isso não é um requisito:

Endereços IP para nós no cluster de usuário 2
172.16.22.2 - 172.16.22.7

Exemplos de endereços IP: VIPs para o cluster de usuário 2

A tabela a seguir mostra um exemplo de como designar VIPs para configuração no balanceador de carga para o cluster de usuário 2. Os VIPs neste exemplo são consecutivos, mas isso não é um requisito.

VIP Descrição Endereço IP
VIP do plano de controle para o cluster de usuário 2 Configurado no balanceador de carga para o cluster de usuário 2 172.16.22.50
VIP de entrada para o cluster de usuário 2 Configurado no balanceador de carga para o cluster de usuário 2 172.16.22.51
VIPs de serviço para o cluster de usuário 2 10 endereços para serviços do tipo LoadBalancer.
Configurado conforme necessário no balanceador de carga para o cluster de usuário 2.
Esse intervalo inclui o VIP de entrada.
Este é um requisito para o balanceador de carga do MetalLB.
172.16.22.51 - 172.16.22.60

Exemplo de endereços IP: pods e serviços

Antes de criar um cluster, é preciso especificar um intervalo de CIDR a ser usado para endereços IP do pod e outro intervalo CIDR a ser usado para os endereços ClusterIP de Serviços do Kubernetes.

Decida quais intervalos CIDR você quer usar para pods e serviços. Exemplo:

FinalidadeIntervalo CIDR
Pods no cluster de administrador192.168.0.0/16
Pods no cluster de usuário 1192.168.0.0/16
Pods no cluster de usuário 2192.168.0.0/16
Serviços no cluster de administrador10.96.0.0/20
Serviços no cluster de usuário 110.96.0.0/20
Serviços no cluster de usuário 210.96.0.0/20

Os exemplos anteriores ilustram esses pontos:

  • O intervalo CIDR do pod pode ser o mesmo para vários clusters no modelo de rede padrão do modo ilha. Em uma rede de modo plano, os pods precisam ter endereços IP exclusivos em todos os clusters. Para mais informações sobre os modelos de rede que afetam os pods, consulte Modelos de rede em modo plano e de ilha.

  • O intervalo CIDR do serviço pode ser o mesmo para vários clusters.

  • Normalmente, você precisa de mais pods do que Serviços. Por isso, para um determinado cluster, você provavelmente quer um intervalo CIDR de pod maior que o intervalo CIDR de Serviço. O intervalo de exemplo de pod para um cluster de usuário é 192.168.0.0/16, que tem 2^(32-16) = 2^16 endereços. Mas o intervalo de Serviços de exemplo para um cluster de usuário é 10.96.0.0/20, que tem apenas 2^(32-20) = 2^12 endereços.

Evitar sobreposição

Verifique se os intervalos CIDR não se sobrepõem aos endereços IP que podem ser acessados na rede. Os intervalos de Serviços e pods não podem se sobrepor a nenhum endereço fora do cluster que você quer acessar de dentro dele.

Por exemplo, suponha que seu intervalo de serviço seja 10.96.0.0/20 e seu intervalo de pod seja 192.168.0.0/16. Qualquer tráfego enviado de um pod para um endereço em qualquer um desses intervalos será tratado como tráfego no cluster e não acessará qualquer destino fora dele.

Os intervalos de serviços e pods não podem se sobrepor a:

  • Endereços IP de nós em qualquer cluster

  • Endereços IP usados por máquinas de balanceador de carga

  • VIPs usados por nós do plano de controle e balanceadores de carga

  • Endereços IP de servidores DNS e NTP

Recomendamos que os intervalos de serviços e pods estejam no espaço de endereço particular RFC 1918.

Veja um motivo por que recomendamos usar endereços RFC 1918. Suponha que o intervalo de pods ou de serviços contenha endereços IP externos. Qualquer tráfego enviado de um pod para um desses endereços externos será tratado como tráfego no cluster e não chegará ao destino externo.

Variações da alocação de endereços IP

O exemplo neste documento mostra uma maneira de alocar endereços IP para um tipo específico de instalação. No entanto, há várias maneiras de instalar o Google Distributed Cloud, e a variação escolhida afetará o planejamento dos endereços IP.

Por exemplo, é possível usar clusters que não sejam de alta disponibilidade ou ter nós do cluster distribuídos em vários domínios da camada 2. É possível usar uma rede no modo plano em vez de uma rede no modo ilha.

Para ver exemplos de como os endereços IP são especificados nos arquivos de configuração do cluster para vários tipos de instalações, consulte Amostras de configuração do cluster.

Para mais informações sobre como planejar seus endereços IP para diferentes tipos de instalações, consulte os documentos a seguir: