Parâmetros do serviço LoadBalancer

Esta página descreve os parâmetros dos manifestos de serviço que controlam o comportamento e a configuração do serviço LoadBalancer. Antes de ler esta página, certifique-se de que está familiarizado com os conceitos do serviço LoadBalancer do Google Kubernetes Engine (GKE).

Parâmetros de serviços

O GKE suporta os seguintes parâmetros para serviços LoadBalancer.

Parâmetro Campo e descrição do serviço Internos Externo Apoio técnico de versões
Balanceador de carga de rede de encaminhamento interno networking.gke.io/load-balancer-type: "Internal"

Indica ao GKE que crie um balanceador de carga de rede de encaminhamento direto interno.

O balanceador de carga usa back-ends do NEG se o manifesto do serviço for aplicado a um cluster com o subconjunto do GKE ativado.GCE_VM_IP O balanceador de carga usa back-ends de grupos de instâncias se o manifesto do serviço for aplicado a um cluster que não tenha a subdivisão do GKE ativada.

Para mais informações, consulte o artigo Agrupamento de nós .

Todas as versões suportadas.
Balanceador de carga de rede de passagem externo baseado em serviços de back-end cloud.google.com/l4-rbs: "enabled"

Indica ao GKE que crie um balanceador de carga de rede de encaminhamento externo baseado em serviços de back-end.

O balanceador de carga usa back-ends de NEG se o manifesto do serviço for aplicado a um cluster que execute a versão 1.32.2-gke.1652000 ou posterior do GKE.GCE_VM_IP O balanceador de carga usa back-ends de grupos de instâncias se o manifesto do serviço for aplicado a um cluster que execute uma versão do GKE suportada anteriormente.

Para mais informações, consulte o artigo Agrupamento de nós .

GKE 1.25.5
Balanceamento de carga ponderado networking.gke.io/weighted-load-balancing: "pods-per-node"

Permite que os nós com mais pods de publicação recebam uma proporção maior de novas ligações em comparação com os nós com menos pods de publicação.

GKE 1.31.0 e superior
Política de tráfego interno spec.internalTrafficPolicy

Quando definido como Local, o GKE apenas encaminha pacotes de pods de clientes num nó para pods de publicação no mesmo nó. Quando definido como Cluster, o GKE encaminha pacotes de pods de clientes num nó para pods de publicação em qualquer nó. Para mais detalhes, consulte a Política de Tráfego Interno do Serviço.

Este parâmetro não é suportado em clusters que executam o GKE Dataplane V2.

GKE 1.22 ou superior
Política de Tráfego Externo spec.externalTrafficPolicy

Controla que VMs de nós passam nas verificações de funcionamento do balanceador de carga e como os pacotes são encaminhados para pods prontos e de publicação no cluster. Também controla como os nós são agrupados em GCE_VM_IP NEGs quando a subdivisão do GKE está ativada.

Para ver detalhes, consulte o artigo Conceitos do serviço LoadBalancer.

GKE 1.14 ou superior (1.23.4-gke.400 ou superior para o conjunto de nós do Windows).
Afinidade zonal (pré-visualização) spec.trafficDistribution

Ativa a afinidade zonal para serviços LoadBalancer internos. A afinidade zonal controla a zona para a qual o balanceador de carga de rede de passagem interna encaminha o tráfego recebido para clientes compatíveis quando é possível uma correspondência zonal. Para usar a afinidade zonal, tem de ativar a subdivisão do GKE.

Para mais informações, consulte o artigo Afinidade zonal e distribuição de tráfego.

GKE 1.33.3-gke.1392000 ou posterior.
Porta de verificação de estado spec.healthCheckNodePort

Implementa uma verificação de funcionamento do balanceador de carga para serviços LoadBalancer. Este parâmetro só é válido se spec.externalTrafficPolicy estiver definido como Local.

Todas as versões suportadas.
Regras de firewall e lista de autorizações de endereços IP de origem spec.loadBalancerSourceRanges

Configura regras de firewall opcionais no GKE e na rede de VPC para permitir apenas determinados intervalos de origem. kube-proxy também configura regras iptables para corresponder aos intervalos de origem especificados.

Todas as versões suportadas.
Endereços IP estáticos
  • spec.loadBalancerIP (apenas IPv4)
  • networking.gke.io/load-balancer-ip-addresses

Especifica um endereço IPv4 estático, um intervalo de endereços IPv6 estáticos ou ambos, que são atribuídos às regras de encaminhamento do equilibrador de carga. Consulte as Considerações para partilhar um endereço IP comum para ver os requisitos de configuração importantes e os detalhes de implementação.

  • spec.loadBalancerIP: todas as versões suportadas.
  • networking.gke.io/load-balancer-ip-addresses: GKE 1.29 e posterior. Consulte os parâmetros de endereço IP estático para requisitos de anotação ou configuração de cluster adicionais.
Níveis de serviço de rede cloud.google.com/network-tier

Especifica os níveis de serviço de rede que o GKE usa para a regra de encaminhamento externo e o endereço IP. Os valores válidos da anotação são Standard e Premium (predefinição).

GKE 1.19 e posteriores.
Sub-rede personalizada
  • networking.gke.io/internal-load-balancer-subnet
  • networking.gke.io/load-balancer-subnet

(aplica-se apenas ao IPv6)
  • networking.gke.io/internal-load-balancer-subnet: todas as versões suportadas
  • networking.gke.io/load-balancer-subnet: GKE 1.29 e posterior. Consulte as anotações de sub-rede personalizadas para ver requisitos adicionais.
Acesso global networking.gke.io/internal-load-balancer-allow-global-access: "true"

Permite que o endereço IP da regra de encaminhamento seja acessível por clientes em qualquer região da rede VPC ou uma rede ligada.

Pré-visualização no GKE 1.16 ou superior. Disponível ao público em geral no GKE 1.17.9-gke.600 ou superior.
Todas as portas

O GKE configura automaticamente a regra de encaminhamento para usar todas as portas se forem especificadas mais de cinco (até 100) portas únicas em spec.ports[].port.

GKE versão 1.18.19-gke.1400 ou posterior
ipFamilyPolicy

spec.ipFamilyPolicy

Define como o GKE atribui endereços IP a um serviço. Pode definir o spec.ipFamilyPolicy como SingleStack, PreferDualStack ou RequireDualStack.

Para saber mais, consulte o artigo Serviços de pilha dupla IPv4/IPv6.

Os clusters do GKE na versão 1.29 ou posterior suportam a rede de pilha dupla para serviços LoadBalancer.
ipFamilies (opcional)

spec.ipFamilies

Define a família de endereços IP para atribuir serviços de pilha única ou de pilha dupla. Use qualquer um dos seguintes valores:

  • IPv4 apenas para o serviço IPv4 de pilha única.
  • IPv6 para o serviço apenas IPv6.
  • IPv4,IPv6 para o serviço de pilha dupla em que o endereço IP principal do serviço é IPv4.
  • IPv6,IPv4 para o serviço de pilha dupla em que o endereço IP principal do serviço é IPv6.
Os clusters do GKE na versão 1.29 ou posterior suportam a rede de pilha dupla para serviços LoadBalancer.

Porta de verificação de funcionamento

Conforme descrito em Verificações de funcionamento do balanceador de carga, o GKE implementa sempre uma verificação de funcionamento do balanceador de carga quando cria um balanceador de carga de rede de encaminhamento externo ou um balanceador de carga de rede de encaminhamento interno.

Se pode configurar o parâmetro healthCheckNodePort ou não, depende da seguinte configuração externalTrafficPolicy:

externalTrafficPolicy Porta de verificação de funcionamento
Cluster

Não pode usar o spec.healthCheckNodePort.

Local

Pode selecionar uma porta personalizada através do elemento spec.healthCheckNodePort. Se não for especificado, o plano de controlo do Kubernetes atribui uma porta de verificação de funcionamento a partir do intervalo de portas do nó.

Regras de firewall e lista de autorizações de endereços IP de origem

A menos que tenha configurado um cluster para ignorar a criação de regras de firewall da VPC para serviços LoadBalancer, o GKE cria uma regra de firewall da VPC de permissão de entrada para cada serviço.

Cada regra de firewall criada automaticamente tem as seguintes caraterísticas:

  • A direção da regra de firewall é de entrada e a respetiva ação é permitir. As regras de firewall de negação implícita de entrada em Trusted Cloud significam que o GKE usa um modelo de lista de autorizações quando cria regras de firewall de entrada.
  • O GKE define o protocolo e a porta de destino da regra de firewall para os especificados na lista spec.ports[] do serviço.
  • O GKE configura regras de firewall para serviços LoadBalancer definindo explicitamente o parâmetro de destino para o endereço IP virtual do LoadBalancer (a regra de encaminhamento do balanceador de carga).
  • O GKE define o parâmetro de destino da regra de firewall para incluir todos os nós do cluster.
  • Se o Serviço incluir spec.loadBalancerSourceRanges[], o GKE define o parâmetro de origem da regra de firewall para os endereços IP nessa lista. Além disso, o GKE configura rotas e regras no sistema operativo do nó para limitar os endereços IP de origem para o tráfego com balanceamento de carga, usando kube-proxy e iptables (Dataplane antigo) ou cilium-agent e regras eBPF (GKE Dataplane V2). Se o serviço não incluir loadBalancerSourceRanges[], o GKE define o parâmetro de origem da regra de firewall para todos os endereços IP (0.0.0.0/0).

Endereços IP estáticos

Pode criar um endereço IP estático e configurar o GKE para atribuir esse endereço estático à regra de encaminhamento do balanceador de carga. A utilização de um endereço IP estático garante que o endereço IP do equilibrador de carga permanece o mesmo, mesmo que faça alterações ao serviço LoadBalancer. Sem um endereço IP estático, o GKE pode atribuir um endereço IP diferente à regra de encaminhamento do balanceador de carga quando atualiza um serviço LoadBalancer. O endereço IP da regra de encaminhamento não é o mesmo que o endereço do serviço spec.clusterIP. O endereço ClusterIP de um serviço nunca é alterado quando atualiza um serviço LoadBalancer.

Parâmetros de endereço IP estático

Para instruir um serviço LoadBalancer a usar um endereço IP estático, use o parâmetro spec.loadBalancerIP ou a anotação networking.gke.io/load-balancer-ip-addresses. Na versão 1.29 e posteriores do GKE, a anotação tem precedência sobre spec.loadBalancerIP se o manifesto do serviço contiver o parâmetro e a anotação.

Parâmetro ou anotação e valor Requisitos e capacidades
spec.loadBalancerIP:
IPv4_ADDRESS

Pode especificar um endereço IPv4 interno estático para um serviço Internal LoadBalancer apenas IPv4. Pode especificar um endereço IPv4 externo estático para um serviço de balanceamento de carga externo apenas IPv4. O parâmetro funciona com todas as versões do GKE suportadas.

networking.gke.io/load-balancer-ip-addresses:
IP_ADDRESS_RESOURCE_NAME
  • Para serviços LoadBalancer de pilha única, defina o valor da anotação para o nome do recurso de endereço IPv4 ou IPv6 e não para o próprio endereço IP.
  • Para serviços LoadBalancer de pilha dupla, defina o valor da anotação para o nome do recurso de endereço IPv4 estático e o nome do recurso de intervalo de endereços IPv6 estático separados por uma vírgula.

Pode especificar um endereço IPv4 estático, um intervalo de endereços IPv6 estáticos ou ambos para serviços Internal e External LoadBalancer apenas IPv4, apenas IPv6 e de pilha dupla. A anotação requer o GKE 1.29 ou posterior e os seguintes requisitos adicionais:

  • Para usar esta anotação com um serviço Internal LoadBalancer, tem de criar o serviço Internal LoadBalancer num cluster depois de ativar a subdivisão do GKE.
  • Para usar esta anotação com um serviço de balanceamento de carga externo, tem de incluir a anotação cloud.google.com/l4-rbs: "enabled" no manifesto do serviço quando criar o serviço de balanceamento de carga externo.

Considerações para a partilha de um endereço IP comum

Dois ou mais serviços LoadBalancer podem fazer referência ao mesmo endereço IP estático se a regra de encaminhamento para cada equilibrador de carga usar uma combinação única de endereço IP, protocolo, especificação de porta e especificação de níveis de serviço de rede, conforme indicado na tabela nesta secção. Além disso:

  • Na verdade, os endereços IPv6 estáticos são /96intervalos de endereços IPv6, mas o GKE só configura os nós para aceitarem pacotes no primeiro endereço IPv6 (/128) no intervalo /96.

  • Para que dois ou mais serviços Internal LoadBalancer usem o mesmo endereço IPv4 interno ou intervalo de endereços IPv6 interno, o endereço IP estático tem de ser criado com a finalidade SHARED_LOADBALANCER_VIP.

Serviço de balanceador de carga interno Serviço External LoadBalancer
Especificação de portas

As regras de encaminhamento para equilibradores de carga de passagem internos suportam até cinco números de porta individuais ou podem ser configuradas para usar todas as portas.

Quando um serviço de balanceador de carga interno tem mais de cinco spec.ports[] especificados, o GKE configura a regra de encaminhamento para o balanceador de carga de rede de passagem interna para usar todas as portas.

As regras de encaminhamento com o mesmo endereço IP e protocolo não podem ter portas sobrepostas. Isto significa que não pode criar vários serviços Internal LoadBalancer que partilham o mesmo endereço IP, protocolo e portas. Por exemplo:

  • Se criar um serviço de balanceamento de carga interno através da porta TCP 80, não pode criar outro serviço através das portas TCP 80, 81 e 90, porque a porta 80 sobrepõe-se.
  • Se um serviço de balanceador de carga interno usar as portas TCP 80, 8080 e 90, não pode criar outro serviço que use TCP em todas as portas, uma vez que isso também resultaria em portas sobrepostas

Para mais informações, consulte: Regras de encaminhamento do balanceador de carga de rede de passagem interna que usam um endereço IP comum.

O GKE cria um conjunto de destino com base no balanceador de carga de rede de encaminhamento externo se o manifesto do serviço LoadBalancer não tiver a anotação cloud.google.com/l4-rbs: "enabled".

As regras de encaminhamento para balanceadores de carga de rede de passagem externos baseados em conjunto de destino têm de usar intervalos de portas contíguos. O intervalo de portas contíguas inclui todas as portas de que o serviço precisa, mas o intervalo também pode incluir portas adicionais não usadas pelo serviço. Por exemplo, um serviço External LoadBalancer baseado num balanceador de carga de rede de passagem externo baseado num conjunto de destinos que especifica as portas 80 e 443 no respetivo manifesto de serviço usa uma regra de encaminhamento do balanceador de carga com um intervalo de portas de 80 a 443. Este intervalo de portas impede que outros serviços External LoadBalancer usem qualquer uma das portas 80, 443 e qualquer um dos números entre 80 e 443.

O GKE cria um balanceador de carga de rede de encaminhamento externo baseado em serviços de back-end se o manifesto do serviço LoadBalancer incluir a anotação cloud.google.com/l4-rbs: "enabled". As regras de encaminhamento para equilibradores de carga de rede de passagem externos baseados em serviços de back-end suportam até cinco números de porta discretos ou um intervalo de portas contíguo.

Níveis de serviço de rede Não configurável: os endereços internos são sempre de nível Premium.

Configurável para endereços IPv4 externos regionais estáticos. Os intervalos de endereços IPv6 externos regionais estáticos só podem ser criados no nível Premium.

A especificação dos níveis de serviço de rede do endereço IP externo estático tem de corresponder a uma das seguintes opções:

  • O nível especificado na anotação cloud.google.com/network-tier do manifesto do serviço LoadBalancer, se essa anotação estiver presente no manifesto, ou
  • O nível predefinido do projeto, se a anotação cloud.google.com/network-tier estiver ausente do manifesto do serviço LoadBalancer.

O nível predefinido do projeto é Premium, a menos que o tenha configurado de forma diferente.

Reserva de endereços IP

O GKE não reserva os endereços IP estáticos configurados através da anotação spec.loadBalancerIP ou networking.gke.io/load-balancer-ip-addresses. Isto significa que o endereço IP que atribui ao seu serviço pode ser libertado quando o serviço é eliminado.

Para manter o endereço IP reservado, tem de criar manualmente um recurso de endereço no seu projeto. O endereço IP estático tem de ter os seguintes atributos:

  • Serem apenas regionais.
  • Estar na mesma região que o cluster.
  • Estar no mesmo Network Service Tiers que o serviço LoadBalancer.
  • Ter um nome que não use o nome do LoadBalancer, prefixos como k8s- ou o UUID do serviço.

Se não reservar o endereço, os registos do projeto podem conter entradas sobre recursos de endereços criados e removidos pouco depois. Isto faz parte do aprovisionamento normal de serviços e deve ser esperado.

Sub-rede do LoadBalancer

Pode configurar um serviço de balanceamento de carga interno para usar um endereço IPv4 efémero ou estático, um intervalo de endereços IPv6 ou ambos, numa sub-rede personalizada localizada na mesma região e rede VPC que o cluster. Use uma sub-rede personalizada para um serviço de balanceador de carga interno para:

  • Agrupar balanceadores de carga de rede de encaminhamento interno criados por serviços de balanceamento de carga interno de dois ou mais clusters do GKE na mesma rede VPC e região.
  • Crie serviços Internal LoadBalancer cujos Network Load Balancers de passagem internos tenham endereços IPv4 separados dos endereços IPv4 dos nós do cluster.
  • Num cluster de pilha dupla, crie serviços Internal LoadBalancer cujos balanceadores de carga de rede de encaminhamento interno tenham intervalos de endereços IPv6 separados dos endereços IPv6 dos nós e dos pods do cluster. É obrigatória uma sub-rede do LoadBalancer personalizada para suportar os serviços do LoadBalancer interno se a sub-rede do cluster tiver um intervalo de endereços IPv6 externo.

Pode configurar um serviço de LoadBalancer externo para usar um intervalo de endereços IPv6 efémero ou estático numa sub-rede personalizada localizada na mesma região e rede VPC que o cluster. Use uma sub-rede personalizada para criar serviços External LoadBalancer cujos balanceadores de carga de rede de passagem externos tenham intervalos de endereços IPv6 separados dos endereços IPv6 dos nós e dos pods do cluster. É obrigatório ter uma sub-rede LoadBalancer personalizada para suportar serviços LoadBalancer externos num cluster de pilha dupla, porque a sub-rede do cluster tem um intervalo de endereços IPv6 internos.

Anotações de sub-rede personalizadas

Use uma das seguintes anotações para instruir um serviço LoadBalancer a usar um endereço IP efémero ou estático numa sub-rede personalizada. Se um manifesto de serviço LoadBalancer incluir ambas as anotações, a anotação networking.gke.io/load-balancer-subnet tem precedência, desde que os respetivos requisitos de anotação sejam cumpridos.

Anotação e valor Requisitos e capacidades
networking.gke.io/internal-load-balancer-subnet:
SUBNET_RESOURCE_NAME

Só pode usar a anotação para especificar uma sub-rede personalizada para um serviço de balanceamento de carga interno apenas IPv4. A anotação funciona com todas as versões do GKE suportadas.

networking.gke.io/load-balancer-subnet:
SUBNET_RESOURCE_NAME

Pode especificar uma sub-rede personalizada para um serviço Internal LoadBalancer apenas IPv4, apenas IPv6 ou de pilha dupla. Pode especificar uma sub-rede personalizada para um serviço de balanceamento de carga externo apenas IPv6 ou de pilha dupla. A anotação requer o GKE 1.29 ou posterior e os seguintes requisitos adicionais:

  • Para usar esta anotação para especificar uma sub-rede personalizada para um serviço Internal LoadBalancer, tem de criar o serviço Internal LoadBalancer num cluster depois de ativar o GKE subsetting.
  • Para usar esta anotação para especificar uma sub-rede personalizada para um serviço External LoadBalancer, tem de incluir a anotação cloud.google.com/l4-rbs: "enabled" no manifesto do serviço quando criar o serviço External LoadBalancer.

Sub-rede e endereço IPv4 para um serviço Internal LoadBalancer

A tabela seguinte descreve as combinações válidas de especificação de sub-rede e endereço IPv4 para um serviço de balanceamento de carga interno apenas IPv4 ou de pilha dupla.

Endereço IPv4 estático Endereço IPv4 efémero
Sub-rede personalizada
Sub-rede personalizada e endereço IPv4 estático: o endereço IPv4 interno estático tem de ter sido criado no intervalo de endereços IPv4 principal da sub-rede personalizada. Sub-rede personalizada e endereço IPv4 efémero: o GKE usa um endereço IPv4 interno não atribuído no intervalo de endereços IPv4 principal da sub-rede personalizada.
Sub-rede do cluster Sub-rede do cluster e endereço IPv4 estático: o endereço IPv4 interno estático tem de ter sido criado no intervalo de endereços IPv4 principal da sub-rede do cluster. Sub-rede do cluster e endereço IPv4 efémero: o GKE usa um endereço IPv4 interno não atribuído no intervalo de endereços IPv4 primário da sub-rede do cluster.

Sub-rede e intervalo de endereços IPv6 para um serviço de balanceamento de carga interno

A tabela seguinte descreve as combinações válidas de especificação de sub-rede e intervalo de endereços IPv6 para um serviço de balanceamento de carga interno apenas IPv6 ou de pilha dupla. Embora a regra de encaminhamento IPv6 do Network Load Balancer de passagem interna use um intervalo de endereços /96IPv6 interno, o GKE só configura os nós para aceitar pacotes cujos destinos correspondam ao primeiro endereço IPv6 (/128) do intervalo /96da regra de encaminhamento.

Intervalo de endereços IPv6 estáticos Intervalo de endereços IPv6 efémeros
Sub-rede de pilha dupla personalizada
  • Tem de estar na mesma rede de VPC e região que o cluster.
  • Tem de ter um intervalo de endereços IPv6 internos (tipo de acesso INTERNAL).
  • Tem de ser especificado através da anotação networking.gke.io/load-balancer-subnet.
Sub-rede personalizada e intervalo de endereços IPv6 estáticos: o intervalo de endereços IPv6 /96 internos estáticos tem de ter sido criado no intervalo de endereços IPv6 /64 internos da sub-rede personalizada. Sub-rede personalizada e intervalo de endereços IPv6 efémeros: o GKE usa um intervalo de endereços /96 IPv6 interno não atribuído do intervalo de endereços /64 IPv6 interno da sub-rede personalizada.
Sub-rede de pilha dupla do cluster
  • Tem de ter um intervalo de endereços IPv6 internos (tipo de acesso INTERNAL).
Sub-rede do cluster e intervalo de endereços IPv6 estáticos: o intervalo de endereços IPv6 /96 internos estáticos tem de ter sido criado no intervalo de endereços IPv6 /64 internos da sub-rede do cluster. Intervalo de endereços IPv6 e sub-rede do cluster: O GKE usa um intervalo de endereços /96 IPv6 interno não atribuído do intervalo de endereços /64 IPv6 interno da sub-rede do cluster.

Sub-rede e endereço IPv4 para um serviço de LoadBalancer externo

Para serviços de balanceamento de carga externos apenas IPv4 e de pilha dupla, o endereço IPv4 externo, quer seja um endereço IPv4 externo estático ou um endereço IPv4 externo efémero, não provém de uma sub-rede.

Sub-rede e intervalo de endereços IPv6 para um serviço de LoadBalancer externo

A tabela seguinte descreve as combinações válidas de especificação de sub-rede e intervalo de endereços IPv6 para um serviço de balanceamento de carga externo apenas IPv6 ou de pilha dupla. Embora a regra de encaminhamento IPv6 do Network Load Balancer de passagem externa use um intervalo de endereços /96IPv6 externo, o GKE só configura os nós para aceitar pacotes cujos destinos correspondam ao primeiro endereço IPv6 (/128) do intervalo /96da regra de encaminhamento.

Intervalo de endereços IPv6 estáticos Intervalo de endereços IPv6 efémeros
Sub-rede de pilha dupla personalizada
  • Tem de estar na mesma rede de VPC e região que o cluster.
  • Tem de ter um intervalo de endereços IPv6 externos (tipo de acesso EXTERNAL).
  • Tem de ser especificado através da anotação networking.gke.io/load-balancer-subnet.
Sub-rede personalizada e intervalo de endereços IPv6 estáticos: o intervalo de endereços IPv6 /96 externos estáticos tem de ter sido criado no intervalo de endereços IPv6 /64 externos da sub-rede personalizada. Os intervalos de endereços IPv6 externos estáticos só podem ser criados no nível Premium. Sub-rede personalizada e intervalo de endereços IPv6 efémeros: O GKE usa um intervalo de endereços /96 IPv6 externos não atribuídos do intervalo de endereços /64 IPv6 externos da sub-rede personalizada.
Sub-rede de pilha dupla do cluster
  • Tem de ter um intervalo de endereços IPv6 externos (tipo de acesso EXTERNAL).
Sub-rede do cluster e intervalo de endereços IPv6 estáticos: o intervalo de endereços IPv6 /96 externos estáticos tem de ter sido criado no intervalo de endereços IPv6 /64 externos da sub-rede do cluster. Os intervalos de endereços IPv6 externos estáticos só podem ser criados no nível Premium. Sub-rede do cluster e intervalo de endereços IPv6 efémeros: o GKE usa um intervalo de endereços /96 IPv6 externos não atribuídos do intervalo de endereços /64 IPv6 externos da sub-rede do cluster.

Acesso global

Quando a anotação networking.gke.io/internal-load-balancer-allow-global-access é false ou não especificada para um serviço de balanceador de carga interno, o GKE cria um balanceador de carga de rede de passagem interno cuja regra de encaminhamento tem o acesso global desativado. Quando o acesso global está desativado, os clientes que precisam de aceder ao balanceador de carga têm de estar localizados na mesma região e rede VPC, ou numa rede ligada à rede VPC do cluster.

Quando a anotação networking.gke.io/internal-load-balancer-allow-global-access é true para um serviço Internal LoadBalancer, o GKE ativa a opção de acesso global na regra de encaminhamento do balanceador de carga de rede de passagem interno. Os clientes localizados em qualquer região da rede VPC ou numa rede ligada à rede VPC do cluster podem aceder ao equilibrador de carga.

Para mais informações sobre como o acesso global se aplica a clientes numa rede associada, consulte:

Regras de encaminhamento de todas as portas

As regras de encaminhamento para balanceadores de carga de rede de passagem internos suportam cinco números de porta exclusivos ou todas as portas.

No GKE, um serviço de balanceamento de carga interno só pode suportar até 100 portas no spec.ports[].portdo serviço. Se um serviço de equilibrador de carga interno definir até cinco portas, a regra de encaminhamento inclui essas portas específicas. No entanto, se o serviço especificar mais de cinco portas, a regra de encaminhamento é configurada automaticamente para corresponder a todas as portas. Quando configura uma regra de encaminhamento para usar todas as portas, o GKE apenas cria regras de firewall de permissão de entrada para as portas específicas configuradas em spec.ports[].port no serviço.

Para mais informações sobre as regras de encaminhamento do Network Load Balancer de passagem interna e as especificações de portas válidas, consulte o artigo Regras de encaminhamento e especificações de portas.

Serviço LoadBalancer de pilha dupla IPv4/IPv6

Pode criar um serviço de LoadBalancer interno ou externo que pode ser de pilha única (apenas IPv4 ou apenas IPv6) ou de pilha dupla. Os serviços LoadBalancer de pilha única criam uma única regra de encaminhamento com um endereço IPv4 ou um endereço IPv6. Os serviços LoadBalancer de pilha dupla criam duas regras de encaminhamento: uma com um endereço IPv4 e outra com um endereço IPv6. Para criar um serviço LoadBalancer de pilha dupla IPv4/IPv6, implemente-o num cluster de pilha dupla IPv4/IPv6 e conclua qualquer uma das seguintes opções, consoante o tipo de equilibrador de carga que usar:

Para cada serviço, pode definir as especificações ipFamilyPolicy e ipFamilies. Para saber mais, consulte o artigo Pilha dupla IPv4/IPv6.

Restrições dos serviços LoadBalancer de pilha dupla

  • Os serviços LoadBalancer com endereços IPv6 só são suportados em clusters com o tipo de pilha ipv4-ipv6. Para mais informações, saiba como usar um endereço IP de pilha dupla para um cluster nativo da VPC.
  • Não é possível atualizar os serviços LoadBalancer criados com um endereço de pilha única para serviços de pilha dupla.

  • Os serviços LoadBalancer criados com endereços de pilha dupla podem ser alterados para pilha única de acordo com as seguintes condições:

    • Um serviço com ipFamilies ["IPv4","IPv6"] pode ser alterado para um serviço com ipFamilies IPv4, mas não IPv6.
    • Um serviço com ipFamilies ["IPv6","IPv4"] pode ser alterado para um serviço com ipFamilies IPv6, mas não IPv4.