Você tem duas opções:
- encaminhamento de porta simples
- externalIPs
- keepalived
Encaminhamento de porta simples
Execute o seguinte em todos os servidores
sudo iptables -t nat -I PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports <nodeport>
sudo iptables -t nat -I OUTPUT -p tcp -o lo --dport 443 -j REDIRECT --to-ports <nodeport>
substitua <nodeport>
pela porta escolhida para o nodeport. Isso requer que você execute um comando em todas as máquinas e é um pouco hacks. Uma solução melhor seria:
externalIps
Isso permite ligar qualquer porta em um nó específico, que será roteado pelo cluster. Isso fornece um único ponto de falha, obviamente, que pode ser corrigido com:
keepalived
keepalived é um software muito simples. Ele cria um endereço IP virtual, que é movido para apontar para um nó diferente quando o mestre falha. Efetivamente cria um endereço IP de alias para o servidor principal keepalived. Um bom começo seria keepalived-vip , que configura automaticamente o keepalived para os serviços que você fornece.
conclusão
Eu pessoalmente uso o keepalived-vip para isso, pois ele se ajusta muito melhor ao meu modelo de rede, mas se seus clientes puderem acessar qualquer um dos seus servidores, o simples redirecionamento de portas será a única maneira de fazê-lo.