¿Le gustaría aprender a instalar el Dashboard de Kubernetes, configurar Apache como proxy y controlar la autenticación de usuario mediante Apache? En este tutorial, vamos a mostrarle cómo instalar el Dashboard de Kubernetes y habilitar el uso de Apache como proxy de autenticación en un equipo que ejecuta Ubuntu Linux.
• Ubuntu 20
• Ubuntu 19
• Ubuntu 18
• Kubernetes 1.18
Este tutorial instalará un clúster de Kubernetes de nodo único.
En nuestro ejemplo, la dirección IP del nodo maestro Kubernetes es 192.168.15.200.
Kubernetes – Tutoriales
En esta página, ofrecemos acceso rápido a una lista de tutoriales relacionados con Kubernetes.
Tutorial Kubernetes – Instalación del Master node
Instale la lista de paquetes necesarios.
Instale el servicio Docker.
Habilite el servicio Docker durante el arranque.
Edite el archivo de configuración del servicio Docker.
Agregue la siguiente configuración al final del elemento denominado: EXECSTART
Aquí está el archivo antes de nuestra configuración.
Aquí está el archivo después de nuestra configuración.
Cree un archivo de configuración del sistema.
Aquí está el contenido del archivo.
Habilite el archivo de configuración del sistema.
Edite el archivo de configuración denominado: MODULES. Conf
Agregue la siguiente configuración al final de este archivo.
Edite el archivo de configuración FSTAB y deshabilite el uso de La memoria de intercambio.
Aquí está el archivo antes de nuestra configuración.
Aquí está el archivo después de nuestra configuración.
Establezca un nombre de host único.
Cree un archivo para configurar las variables de entorno necesarias.
Aquí está el contenido del archivo.
Reinicie el equipo.
Descargue e instale la clave del repositorio de Kubernetes.
Agregue el repositorio oficial de Kubernetes.
Instale los paquetes de Kubernetes.
Descargue las imágenes de Kubernetes necesarias.
Aquí está la salida del comando.
Inicializar el clúster de Kubernetes.
Aquí está la salida del comando.
Tome nota del comando para agregar nodos al clúster de Kubernetes.
Establezca el permiso de archivo correcto en el archivo de configuración de Kubernetes.
Instale la configuración de red necesaria.
De forma predeterminada, el nodo maestro de Kubernetes no puede ejecutar PODS.
Opcionalmente, habilite el nodo maestro Kubernetes para ejecutar PODS.
En nuestro ejemplo, estamos usando un clúster de Kubernetes de nodo único.
Tutorial – Instalación de Kubernetes Dashboard
Instale la lista de paquetes necesarios.
Descargue el archivo YAML necesario.
Instale el Dashboard de Kubernetes.
Aquí está la salida del comando.
Cree una cuenta de servicio para el Dashboard.
Configure el rol de administrador de clúster en la cuenta de servicio del Dashboard.
Cree una cuenta de servicio para el proxy Apache.
Configure el rol de administrador de clúster en la cuenta de proxy Apache.
Enumere el secreto Apache disponible en el servidor Kubernetes.
Aquí está la salida del comando.
Fíjate que el nombre de tu secreto no será el mismo que el nuestro.
Obtenga el valor del token secreto Apache.
Aquí está la salida del comando.
Tome nota del valor del token Apache.
En nuestro ejemplo, este es el valor del token:
Enumere la dirección IP del clúster del servicio Dashboard.
Aquí está la salida del comando.
Tome nota de la dirección IP del clúster y del puerto TCP.
En nuestro ejemplo, el clúster de Dashboard utiliza el puerto TCP 443 y la dirección IP 10.107.55.24.
Ha terminado la configuración de Dashboard necesaria.
Kubernetes Proxy – Autenticación básica de usuario mediante Apache
En el nodo Maestro, instale el servidor Apache.
Habilite los módulos Apache necesarios.
Edite el archivo de configuración de Apache.
Agregue las siguientes líneas al final de este archivo.
Cree el archivo de contraseña de Apache y agregue la primera cuenta de usuario.
El sistema le pedirá que introduzca la contraseña de la nueva cuenta de usuario.
Aquí está el contenido del archivo.
Para crear cuentas de usuario adicionales, utilice el siguiente comando.
Cree una clave privada y el certificado mediante el comando OpenSSL.
Introduzca la información solicitada.
En la opción denominada COMMON_NAME, debe introducir la dirección IP o el nombre de host.
En nuestro ejemplo, usamos la dirección IP: 192.168.15.200
Convierta el certificado de proxy de Kubernetes existente y su clave en un único archivo con el formato PEM.
Edite el archivo de configuración de Apache para el sitio web predeterminado.
Aquí está el archivo, antes de nuestra configuración.
Aquí está el archivo, después de nuestra configuración.
Cambie la dirección IP de los elementos de configuración denominados PROXYPASS y PROXYPASSREVERSE a la dirección IP del clúster del Dashboard.
Cambie el valor del token del elemento de configuración denominado REQUESTHEADER por el valor de token secreto de Apache creado anteriormente.
En nuestro ejemplo, habilitamos el uso de HTTPS mediante certificados autofirmados.
En nuestro ejemplo, configuramos el uso de la autenticación básica de Apache.
Apache representará la comunicación HTTPS entre el usuario y la dirección IP del clúster de Dashboard.
Apache utilizará un certificado y una clave creados automáticamente durante la instalación del servidor de Kubernetes para realizar la autenticación TLS mutua en el Dashboard.
El servidor Apache agregará un encabezado a todos los paquetes enviados al Dashboard.
Este encabezado se denomina AUTHORIZATION BEARER y contiene el token secreto creado anteriormente en el proxy Apache.
Apache también redirigirá a los usuarios HTTP a la versión HTTPS de la URL solicitada.
Reinicie el servicio Apache.
Abra su navegador y acceda a la versión HTTPS de la dirección IP del servidor Apache.
En nuestro ejemplo, se introdujo la siguiente URL en el navegador:
• https://192.168.15.200
El servidor Apache requerirá que realice la autenticación de usuario.
Después de un inicio de sesión exitoso, se debe presentar el Dashboard de Kubernetes.
El proxy Apache realizará automáticamente la autenticación en el Dashboard de Kubernetes utilizando la característica denominada: AUTH HEADER.
Ha completado correctamente la configuración de Apache como proxy para el Dashboard de Kubernetes.