Como o balanceamento de carga / VIP funciona com redes de sobreposição?

1

Estou tentando entender como o balanceamento de carga / VIP incorporado do Docker funciona com redes de sobreposição. Para explicar melhor como eu entendo isso, montei um diagrama. Minha esperança é que alguém possa confirmar ou rejeitar meu entendimento.

Digamos que eu tenha dois serviços em execução em um Docker Swarm: webserver e api . Ambos os dois serviços foram dimensionados para duas instâncias. Essas instâncias são executadas em NODE A e NODE B .

  1. Alguém lá fora no mundo faz um pedido que de alguma forma atinge NODE A .
  2. iptables no NODE A irá DNAT do pedido para o ingress-sbox no NODE A .
  3. O ingress-sbox (vamos apenas considerá-lo como uma caixa preta) decide que o pedido deve ir para o servidor web em NODE B .
  4. O ingress-sbox envia a solicitação para a ponte de rede de sobreposição "api" e a solicitação é roteada por meio do túnel vxlan para a ponte de rede de sobreposição "api" em NODE B .
  5. O contêiner do servidor da Web no NODE B recebe a solicitação por meio da ponte de rede de sobreposição "api".

Esta é uma compreensão justa de como as solicitações recebidas percorrerão uma rede de sobreposição?

... e uma pergunta de acompanhamento; o que acontece quando uma solicitação vai de webserver a api por meio de um balanceador de carga ( ingress-sbox ). As solicitações sempre serão balanceadas por meio do ingress-sbox no mesmo host do qual a solicitação é originada? Se este for o caso, eu assumo que isso significa que uma solicitação para um VIP de serviço sempre é roteada para o ingress-sbox que é executado no mesmo nó de onde uma solicitação é feita?

    
por sbrattla 08.02.2018 / 12:54

0 respostas