O que é o controlador de entrada de Kubernetes?

O que é o controlador de entrada de Kubernetes?
Existem muitas maneiras de mostrar o aplicativo do seu Kubernetes para a rede externa. Você só tem que escolher o melhor para suas necessidades. NodEport, Ingress, LoadBalancer e Clusterip são as quatro opções principais.

No entanto, vamos caminhar sobre o controlador de entrada neste guia. A API de entrada de Kubernetes permite que você revele os aplicativos do seu cluster Kubernetes na Internet, combinando diretrizes de roteamento em uma única fonte. Para usar a Ingress, você deve configurar um controlador de entrada em seu cluster, que é responsável pelo processamento de informações de recursos de entrada e permitir o tráfego com base nas regras de entrada. Vamos examinar rapidamente o que é uma entrada de Kubernetes e o que um controlador de entrada oferece antes de cavar os numerosos controladores de entrada.

Kubernetes oferece três formulários de serviço para expor determinados recursos da estrutura:

Clusterip: O serviço padrão de Kubernetes está clusterip. Essa funcionalidade é criada dentro de um cluster e só é acessível através de vagens dentro desse cluster. Então, sempre que queremos divulgar um serviço a outros pods no mesmo cluster, usamos esse tipo de serviço. O proxy Kubernetes é usado para gerenciar este serviço.

NodEport: Cada nó em seu cluster tem uma porta aberta chamada Nodeport. Mesmo que o seu programa esteja instalado em um nó diferente, o Kubernetes direciona diretamente o tráfego que entra no Nodeport para o aplicativo.

Balanceador de carga: Em Kubernetes, a forma muito mais básica de balanceamento de carga é a distribuição de carga, que é direta para corrigir no estágio do despachante. Kubernetes possui dois canais de distribuição de carga, os quais são regulados por uma função chamada Kube-Proxy, que lida com os endereços IP virtuais usados ​​por aplicativos.

Embora Kubernetes tenha sido emitido pela primeira vez em junho de 2014, a API de entrada de Kubernetes ainda está na versão beta a partir de Kubernetes versão 1.18. A API de entrada concentrou -se na adaptabilidade e permaneceu relativamente compacta desde o seu lançamento ao status beta em 2016 (Kubernetes V1.2).

Kubernetes Ingress é uma entidade API da Kubernetes que oferece regras de roteamento para gerenciar a acessibilidade dos usuários externos aos serviços de cluster de Kubernetes geralmente via HTTPS/HTTP. Você pode criar diretrizes facilmente para propagação de tráfego com entrada sem ter que criar uma série de balanceadores de carga ou expor cada operação no nó. Como resultado, é a opção certa para uso em configurações de produção.

Neste guia, elaboraremos um método no qual você pode facilmente ativar o controlador de entrada usando o Minikube.

Pré-requisitos

Para ativar o controlador de entrada em seu sistema, você deve ter instalado o cluster Minikube. Além disso, você deve ter direitos de sudo para acessar seu sistema.

Observação: Estamos trabalhando no Ubuntu 20.04 LTS ao escrever este guia. Você pode usar seu sistema operacional favorito para implementação.

Crie um cluster Minikube

Inicialmente, você precisa criar um cluster Minikube para ativar o controlador de entrada em Kubernetes. Para esse fim em particular, temos que lançar o terminal da linha de comando no Ubuntu 20.04 LTS.

Você pode iniciar a janela do terminal com a ajuda de dois métodos simples. Um deles é abri -lo usando a barra de aplicação do seu sistema operacional. A outra opção é usar a chave de atalho mais fácil de “Ctrl+Alt+T”.

Assim que você seguir qualquer um desses métodos, o terminal da linha de comando deve abrir. Primeiro de tudo, você precisa iniciar o cluster Minikube já instalado no seu Ubuntu 20.04 LTS Operating System. Para iniciar o Minikube, anote o comando abaixo mencionado no shell da linha de comando.

$ minikube Iniciar

Durante a execução deste comando, você deve esperar alguns momentos para começar com o Minikube. Após a execução bem -sucedida do comando, você pode conferir a versão Minikube exibida também. Depois de executar esta etapa, você pode verificar o status do minikube executando o comando citado no terminal.

status de $ minikube

A partir da imagem acima, você pode verificar se o host, Kubelet e Apiserver estão todos em execução.

Ative o controlador de entrada usando o Minikube

Assim que você inicia o minikube, você está pronto para ativar o controlador de entrada. Se você deseja verificar a lista de addon do minikube, deve executar o seguinte comando no terminal:

Lista de addons de $ minikube

Após a execução deste comando, você verá o status contra cada addon de Minikube. Alguns deles estão ativados e outros estão desativados. Agora, este é o momento certo para ativar o controlador de entrada usando o Minikube. Portanto, para esse propósito específico, você deve escrever o comando abaixo escrito na janela do seu terminal.

Addons de $ minikube Ativar entrada

Como esse comando tem a palavra -chave "Ativar", então permitirá o controlador de entrada em Kubernetes.

Após a execução deste comando, agora você pode ver que o "addon de entrada está ativado". Se você deseja verificar isso, pode executar o comando abaixo mencionado no terminal com a bandeira -n.

Você pode ver que agora o status está funcionando.

Conclusão

Olhando mais adiante, o controlador de entrada é um programa Kubernetes que ajusta um balanceador de carga HTTP baseado em recursos de entrada. Múltiplos balanceadores de carga exigem necessariamente várias aplicações do controlador de entrada. No artigo acima mencionado, explicamos o conceito de controlador de entrada em Kubernetes. Além disso, elaboramos as etapas de como ativar a entrada usando o Minikube. Acredito que, depois de ler este artigo, você não terá dúvidas sobre o controlador de entrada em Kubernetes.