‫Se você pensou em suas implantações e
‫serviços nelas, talvez tenha percebido que,
‫até agora, não falamos sobre OSI Layer 7, nem
‫roteamento de
‫nomes HTTP, nem roteamento de DNS, nem o que
‫você quiser chamar. Basicamente, a idéia de que
‫se você estiver em um servidor com vários sites que precisam usar as
‫mesmas portas, certo. Nas portas 80 e 443,
‫você precisará de algo que direcione para contêineres diferentes, com
‫base em algo que não seja apenas a porta.
‫Isso no Kubernetes é conhecido como Ingress.
‫É um recurso específico e não é necessariamente um balanceador
‫de carga ou qualquer coisa que você
‫atribuiria a um serviço.
‫Tecnicamente, é outra coisa realmente
‫focada no problema comum da maioria dos clusters
‫que desejam executar muitos sites diferentes
‫ou contêineres diferentes para diferentes
‫URLs e nomes. É aí que todo o
‫projeto está focado no projeto Ingress.
‫Por padrão, ele não está instalado
‫no cluster do Kubernetes, mas há recursos oficiais para ele.
‫A maneira como isso funciona é que o Kubernetes
‫não inventou um proxy HTTP.
‫Eles apenas fornecem mecanismos para
‫que outros proxies de terceiros usem
‫recursos para instalar a entrada no cluster.
‫Em seguida, você pode informar seus aplicativos, com base em
‫qual deles você usa, como usar esse proxy para chegar
‫ao seu contêiner.
‫Um bom exemplo pode ser o site A. com e você tem site
‫B. com.
‫Essas serão duas implantações diferentes.
‫Você precisa obter as mesmas portas em todos os seus
‫nós ... é 80443.
‫Você precisa obter os diferentes sites nos
‫diferentes contêineres. É para isso que serve o Ingress.
‫No Swarm, não tínhamos esse recurso pronto para uso.
‫Então, você realmente precisava implantar alguns proxies como um
‫contêiner e ele realmente não tinha nada de especial a ver
‫com esse contêiner. Não entendia o que era o Ingress.
‫Mas, Kubernetes faz.
‫Quando você analisa a documentação, o tipo padrão de exemplo
‫sobre o qual todos falam é o Nginx.
‫Nós usamos o Nginx neste curso.
‫Esse provavelmente deve ser o que você deve tentar primeiro.
‫Eu prefiro outra coisa.
‫Na verdade, eu gosto do Traefik e você verá isso em alguns dos
‫meus exemplos, especialmente no meu curso Swarm.
‫Quando você me vê conversando em conferências, frequentemente
‫falo sobre o Traefik porque era um proxy criado no
‫mundo dos contêineres.
‫O princípio era a ideia de que todos
‫esses contêineres efêmeros estavam girando e desligando, e precisamos
‫reprogramar um proxy e precisamos nos preocupar com
‫SSL e todas as outras coisas necessárias para vários
‫sites em um cluster de contêineres.
‫Então, eles projetaram este novo produto que agora está
‫gerando outros produtos. Agora tem uma empresa inteira
‫por trás disso e oferece suporte a contratos. Você pode
‫querer verificar isso. Muitos fornecedores criam esses plugins
‫para o Kubernetes, incluindo os principais, certo.
‫HAProxy, F5 e novos
‫players como Envoy e Istio também suportam tipos
‫de entrada. Eu direi que, tecnicamente, o próprio
‫recurso de entrada ainda é beta em 1. 15
‫Cada um deles terá sua própria implementação, dependendo
‫de qual você escolher.
‫O F5 é um balanceador de carga de hardware externo muito
‫comum na empresa.
‫Obviamente, o controlador do Ingress ajudará a
‫controlar esse recurso externo de dentro do seu Kubernetes.
‫O ponto principal de tudo
‫isso é que, quando os desenvolvedores de
‫aplicativos escrevem seu YAML com o pessoal
‫do DevOps, ou talvez com a equipe do Ops, eles
‫podem colocar as anotações no YAML necessárias para a entrada
‫controlador para descobrir o que fazer com eles.
‫Basicamente, como eu os direciono?
‫Quais são os caminhos certos? Para onde estou levando?
‫Quais portas estou usando? Estou pegando SSL para
‫você? Estou recebendo certificados? Você vai
‫me fornecer um pouco? Tudo isso é tratado.
‫Primeiro, sugiro que você procure nos recursos.
‫Talvez apenas experimente o Nginx por padrão.
‫Definitivamente, se você não tem uma
‫opinião, experimente o Traefik porque é fácil de
‫usar e possui muitos recursos, incluindo o Let's Encrypt para obter
‫automaticamente certificados para você e seus sites imediatamente.
‫Se você conhece seus próprios requisitos de hardware ou de software
‫para o que precisa fazer com o Ingress, há uma lista
‫na documentação que você pode ver nos
‫recursos aqui de todas as diferentes opções do Ingress.