Gostaria de aprender como instalar o Dashboard Kubernetes, configurar o Nginx como um proxy e controlar a autenticação do usuário usando o Nginx? Neste tutorial, vamos mostrar como instalar o Kubernetes Dashboard e ativar o uso do Nginx como proxy de autenticação em um computador executando o Ubuntu Linux.
• Ubuntu 20
• Ubuntu 19
• Ubuntu 18
• Kubernetes 1.18
Este tutorial instalará um nó mestre Kubernetes.
Em nosso exemplo, o endereço IP do nó mestre Kubernetes é 192.168.15.200.
Kubernetes – Tutoriais
Nesta página, oferecemos acesso rápido a uma lista de tutoriais relacionados a Kubernetes.
Tutorial Kubernetes – Instalação do Master Node
Instale a lista de pacotes necessários.
Instale o serviço Docker.
Habilite o serviço Docker durante a inicialização.
Edite o arquivo de configuração do serviço Docker.
Adicione a seguinte configuração no final do item nomeado: EXECSTART
Aqui está o arquivo antes de nossa configuração.
Aqui está o arquivo após nossa configuração.
Crie um arquivo de configuração do sistema.
Aqui está o conteúdo do arquivo.
Habilite o arquivo de configuração do sistema.
Edite o arquivo de configuração nomeado: MODULES.CONF
Adicione a seguinte configuração no final deste arquivo.
Edite o arquivo de configuração FSTAB e desabilite o uso da memória Swap.
Aqui está o arquivo antes de nossa configuração.
Aqui está o arquivo após nossa configuração.
Defina um nome de host único.
Crie um arquivo para configurar as variáveis de ambiente necessárias.
Aqui está o conteúdo do arquivo.
Reinicie o computador.
Baixe e instale a chave do repositório Kubernetes.
Adicione o repositório oficial do pacote Kubernetes.
Instale os pacotes Kubernetes.
Baixe as imagens necessárias de Kubernetes.
Aqui está a saída de comando.
Inicialize o cluster Kubernetes.
Aqui está a saída de comando.
Tome nota do comando para adicionar nós ao cluster Kubernetes.
Defina a permissão de arquivo correta no arquivo de configuração do Kubernetes.
Instale a configuração de rede necessária.
Por padrão, um node master Kubernetes não pode executar PODS.
Opcionalmente, habilite o mestre Kubernetes para executar PODS.
Em nosso exemplo, estamos usando um cluster Kubernetes de um nó único.
Tutorial – Instalação do Kubernetes Dashboard
Instale a lista de pacotes necessários.
Baixe o arquivo YAML necessário.
Instale o Kubernetes Dashboard.
Aqui está a saída de comando.
Crie uma conta de serviço para o Dashboard.
Configure a função administrador do Cluster na conta de serviço do Dashboard.
Crie uma conta de serviço para o proxy Nginx.
Configure a função administrador do Cluster na conta proxy Nginx.
Liste o segredo Nginx disponível no servidor Kubernetes.
Aqui está a saída de comando.
Note que o nome do seu segredo não será o mesmo que o nosso.
Obtenha o valor do token secreto do Nginx.
Aqui está a saída de comando.
Tome nota do valor do token Nginx.
Em nosso exemplo, este é o valor do token:
Liste o endereço IP do cluster do serviço do Dashboard.
Aqui está a saída de comando.
Tome nota do endereço IP do cluster e da porta TCP.
Em nosso exemplo, o cluster Dashboard está usando a porta TCP 443 e o endereço IP 10.107.55.24.
Você terminou a configuração necessária do Dashboard.
Kubernetes Proxy – Autenticação básica do usuário usando Nginx
No nó Master, instale o servidor Nginx.
Crie o arquivo de senha Nginx e adicione a primeira conta de usuário.
O sistema solicitará que você digite a senha na nova conta de usuário.
Aqui está o conteúdo do arquivo.
Para criar contas adicionais de usuário, use o seguinte comando.
Crie uma chave privada e o certificado usando o comando OpenSSL.
Insira as informações solicitadas.
Na opção nomeada COMMON_NAME, você precisa inserir o endereço IP ou o nome do host.
Em nosso exemplo, usamos o endereço IP: 192.168.15.200
Edite o arquivo de configuração Nginx para o site padrão.
Aqui está o arquivo, antes de nossa configuração.
Aqui está o arquivo, depois de nossa configuração.
Altere o endereço IP do item de configuração nomeado PROXY_PASS para o endereço IP do cluster Dashboard.
Altere o valor do token do item de configuração nomeado PROXY_SET_HEADER para o valor do token secreto Nginx criado anteriormente.
Em nosso exemplo, habilitamos o uso de HTTPS através de certificados auto-assinados.
Em nosso exemplo, configuramos o uso da autenticação básica Nginx.
O Nginx fará o proxy da comunicação HTTPS entre o usuário e o endereço IP do cluster Dashboard.
O Nginx usará um certificado e uma chave criados automaticamente durante a instalação do servidor Kubernetes para executar a autenticação TLS mútua no Dashboard.
O servidor Nginx adicionará um cabeçalho a todos os pacotes enviados ao Dashboard.
Este cabeçalho é chamado de AUTHORIZATION BEARER e contém o token secreto anteriormente criado para o proxy Nginx.
Reinicie o serviço Nginx.
Abra seu navegador e acesse a versão HTTPS do endereço IP do servidor Nginx.
Em nosso exemplo, a seguinte URL foi inserida no Navegador:
• https://192.168.15.200
O servidor Nginx exigirá que você execute a autenticação do usuário.
Após um login bem-sucedido, o Dashboard do Kubernetes deve ser apresentado.
O proxy Nginx executará automaticamente a autenticação no Dashboard Kubernetes usando o recurso chamado: AUTH HEADER.
Você terminou com sucesso a configuração do Nginx como um proxy para o Dashboard Kubernetes.