768
Si está buscando implementar y administrar aplicaciones en contenedores de manera simple y eficiente, los MicroK8 pueden ser justo lo que necesita. MicroK8s es una versión ligera, rápida y fácil de instalar de Kubernetes que se ejecuta localmente en su computadora o servidor.
En este artículo, proporcionaremos una guía paso a paso para instalar MicroK8s, agregar su cuenta al grupo MicroK8s, habilitar el complemento DNS, habilitar y acceder al panel de control de Kubernetes e implementar una aplicación de ejemplo.
Requisitos
Este tutorial utiliza Ubuntu Server 22.04 con el administrador de paquetes Snap preinstalado. Siéntase libre de usar cualquier distribución donde Snap sea compatible o pueda instalarse.
Instalación de MicroK8
El primer paso para comenzar con MicroK8s es instalarlo. Afortunadamente, este es un proceso sencillo que se puede realizar con el administrador de paquetes instantáneos en Ubuntu, Debian y otras distribuciones de Linux que lo admiten. Para instalar MicroK8s, ejecute el siguiente comando:
sudo snap install microk8s --classic
Esto descargará e instalará la última versión estable de MicroK8s en su sistema. Una vez instalado, verá un mensaje de confirmación como el siguiente. El resultado muestra la versión instalada de microk8s.
Confirmemos el estado de microk8s ejecutando este comando.
sudo microk8s status
El resultado muestra la microk8s el estado del servicio, el estado de alta disponibilidad y los complementos habilitados y deshabilitados. Cubriremos más sobre complementos más adelante.
En este punto, ha completado el proceso de instalación de MicroK8s.
Agregar su cuenta al grupo MicroK8s
Por defecto, los comandos de MicroK8s requieren sudo permisos para ejecutar. Para evitar esto, puede agregar su cuenta de usuario al grupo MicroK8s, que le otorga permiso para ejecutar comandos de MicroK8s sin sudo. Para agregar su cuenta al grupo MicroK8s, ejecute el siguiente comando:
sudo usermod -aG microk8s $USER
Después de ejecutar este comando, cierre sesión y vuelva a iniciar sesión para que los cambios surtan efecto, o ejecute el siguiente comando.
newgrp microk8s
Ahora puede ejecutar los comandos de MicroK8s sin usar sudo. Por ejemplo, el siguiente comando enumera todos los nodos.
microk8s kubectl get nodes
Habilitación del complemento DNS
El complemento DNS es un componente importante de MicroK8s que proporciona resolución de nombres para los servicios de Kubernetes. Se recomienda habilitar el complemento DNS para garantizar que sus aplicaciones puedan comunicarse entre sí. Para habilitar el complemento DNS, ejecute el siguiente comando:
microk8s enable dns
Esto iniciará el complemento DNS y lo pondrá a disposición de sus aplicaciones.
Habilitación y acceso al panel de Kubernetes
El panel de control de Kubernetes es una interfaz basada en web que le permite administrar su clúster y aplicaciones de Kubernetes. Para habilitar el tablero, ejecute el siguiente comando:
microk8s enable dashboard
Ahora que el Tablero está habilitado, primero recuperemos el token que usaremos para iniciar sesión. Para hacerlo, ejecute el siguiente comando en la terminal.
microk8s kubectl create token default
Copie el token y guárdelo para usarlo más adelante.
A continuación, averigüemos el tablero de bash de kubernetes dirección IP del servicio.
microk8s kubectl get services --namespace kube-system
Como puede ver a continuación, la dirección IP del tablero es 10.152.182.223, y el número de puerto es 443.
La dirección IP anterior que ve es la IP del clúster, a la que solo se puede acceder dentro del clúster. Para que el tablero sea accesible fuera del clúster, creemos una regla de reenvío de puertos en el host.
Antes de ejecutar el siguiente comando, actualice estos dos elementos:
- Reemplace la PUERTO LOCAL con cualquier número de puerto disponible en su host.
- Reemplazar DIRECCIÓN IP DEL HOST con la dirección IP del host (dirección IP de la computadora donde instaló MicroK8s).
microk8s kubectl port-forward \ -n kube-system service/kubernetes-dashboard LOCALPORT:443 \ --address HOST-IP-ADDRESS
En el siguiente ejemplo, estoy reenviando la dirección IP del host 192.168.203.145 y puerto 20443 hacia Panel de control de Kubernetes servicio.
microk8s kubectl port-forward \ -n kube-system service/kubernetes-dashboard 20443:443 \ --address 192.168.203.145
Verás un resultado similar al siguiente. Este resultado indica que el reenvío de puertos está activo.
Abra un navegador web y navegue hasta la dirección de reenvío de puerto de la siguiente manera:
https://192.168.20.145:20443
Seleccionar Simbólicopega tu token en el Introducir token campo y haga clic en Iniciar sesión.
Y ya ha iniciado sesión en el Panel de Kubernetes de MicroK8s.
Ahora puede navegar por el tablero y descubrir su entorno de Kubernetes. Puedes ver los servicios.
Los espacios de nombres.
Y nodos, entre muchos otros.
Implementación de aplicaciones
Para implementar una aplicación, debe crear una implementación y exponerla como un servicio. Este es un ejemplo de implementación de la aplicación HTTPD:
Primero, cree una implementación llamada Servidor web utilizando el httpd imagen.
microk8s kubectl create deployment webserver --image=httpd
A continuación, ejecute el siguiente comando para exponer el Servidor web servicio en puerto 8080.
microk8s kubectl expose deployment webserver --port=80 --type=NodePort
Ahora, confirmemos que el servicio del servidor web está activo.
microk8s kubectl get svc webserver
Según el resultado a continuación, puede acceder al servicio del servidor web utilizando el 10.152.183.81 dirección IP en el puerto 80.
Ahora puede acceder a este servicio de servidor web utilizando las siguientes URL.
- HTTP://CLUSTER-IP
- HTTP://LOCALHOST:30631
- HTTP://HOST-IP:30631
curl HTTP://10.152.183.81 curl HTTP://localhost:30631 curl HTTP://192.168.203.145:30631
Pero, si su host no tiene cabeza y es imposible usar un navegador localmente, puede crear un reenvío de puerto para acceder al servicio de forma remota. En este ejemplo, vamos a reenviar el puerto 8080 en el host a la Servidor web servicio.
microk8s kubectl port-forward \ -n default service/webserver 8080:80 \ --address 192.168.203.145
Ahora puede acceder a él de forma remota a través de su elección del navegador web.
Conclusión
En conclusión, MicroK8s es una poderosa herramienta para administrar aplicaciones en contenedores, que ofrece una solución liviana y fácil de usar para desarrolladores y administradores de sistemas.
Siguiendo los pasos descritos en esta guía, puede comenzar rápidamente con MicroK8s, incluida la instalación, agregar su cuenta al grupo MicroK8s, habilitar el complemento DNS, habilitar y acceder al panel de control de Kubernetes e implementar una aplicación de ejemplo.
Con MicroK8s, puede optimizar sus procesos de desarrollo e implementación y aprovechar el poder y la flexibilidad de Kubernetes. Entonces, ¿por qué no probarlo hoy y ver qué puede hacer por usted?