Executando o serviço Kubernetes de réplica única em endereço IP público e sem balanceamento de carga

1

Estou executando um serviço no GKE / Kubernetes que expõe uma única porta UDP em um endereço IP estérico. (Promovi o endereço IP estático de um efêmero no GCE.) Se eu implantá-lo com campos da seguinte maneira, o serviço estará acessível.

spec:
  type: LoadBalancer
  loadBalancerIP: <static-ip-address>

No entanto, não pretendo executar mais de uma única réplica do meu serviço e nem tenho certeza se os balanceadores de carga do GKE funcionam com o UDP, por isso gostaria de tentar sem um.

A seguinte configuração alternativa ainda não funciona. Com ele, o serviço surge, mas em um endereço IP diferente e, portanto, não pode ser acessado externamente como desejado.

spec:
  type: NodePort
  externalIPs:
  - <static-IP-address>

Então, é possível executar um serviço visível externamente em um endereço IP estático "próprio" sem que o balanceador de carga seja possível e, em caso afirmativo, como?

UPDATE Progresso adicional indica que o balanceador de trabalho também funciona com o UDP, mas ainda parece redundante.

    
por Drux 24.07.2016 / 17:29

1 resposta

0

Um balanceador de carga L3 / 4 pegará os pacotes UDP de entrada e escolherá um back-end para enviá-los. Se você tiver apenas um backend, todos os pacotes terminarão lá. Uma vez que você tem múltiplos backends, você precisará entender se o balanceador de carga equilibra pacotes individuais de fluxos de pacotes (que são baseados na 5-tupla de {ip de origem, ip de destino, porta de origem, porta de destino, protocolo}). Você deve ler esta seção para entender como o balanceamento de carga UDP do GCP funciona.

    
por 31.07.2016 / 06:43