Los contenedores son extremadamente útiles en situaciones en las que se desea ejecutar una aplicación o un software específico sin la sobrecarga de recursos adicional que supone una máquina virtual. Kubernetes es una excelente plataforma para implementar y administrar todos los contenedores, y vale la pena que cualquiera que esté interesado en DevOps la aprenda.

Afortunadamente, no es necesario configurar sistemas operativos complejos ni reunir un montón de nodos. Si tienes unaPC de repuesto, puedes convertirla en un servidor Kubernetes con la ayuda de MicroK8s.

Lo que necesitarás

La placa base del Lenovo ThinkServer SR250 V2

A menos que planee implementar cientos de contenedores, debería estar bien con cualquier PC de la última década, suponiendo que pueda ejecutar Linux, por supuesto. Hablando de eso, necesitará un sistema operativo preinstalado antes de continuar con el resto del artículo.

Lo ideal sería que utilizaras Talos Linux si planeas adentrarte en el ecosistema de Kubernetes. Pero como esta guía está orientada al usuario promedio que solo quiere ejecutar K8s en su sistema obsoleto, optaremos porUbuntu. Admito que es bastante ineficiente ejecutar Kubernetes en el niño prodigio favorito de todos en el mundo de Linux, pero su facilidad de acceso, combinada con la compatibilidad con SSH, hace que el proceso sea mucho más fácil para los principiantes.

Para aquellos que se preocupen por el menor rendimiento de la interfaz gráfica de usuario de Ubuntu, pueden replicar todo el proyecto en Ubuntu Server, ya que todo el procedimiento contará con comandos de terminal. Por último, utilizaremos el paquete MicroK8s para reducir aún más la complejidad del proyecto.

Relacionado
Cómo instalar Ubuntu

¿Quieres instalar Ubuntu en lugar de Windows u otro sistema operativo? Te guiamos a través de todo el proceso

Instalación de MicroK8s

Una vez que haya instalado Ubuntu, es hora de comenzar con el procedimiento de instalación.

  1. Inicie la aplicación de terminal presionandoCtrl+Alt+T.
  2. Instale el paquetesnapdejecutando el siguiente comando:
    sudo apt install snapd -y
    Instalación del paquete Snapd en la terminal de Ubuntu
  3. Ejecute este comando en la terminal para instalar el paquete MicroK8s.
    sudo snap install microk8s --classic
    Instalación del paquete MicroK8s en la terminal de Ubuntu
  4. Con la ayuda del comandousermod, otorgue acceso de administrador al usuario actual.
    sudo usermod -a -G microk8s $USUARIO
    Usando el comando usermod en la terminal de Ubuntu
  5. Cree un nuevo directorio llamadokubey usechmodpara otorgar acceso completo al usuario.
    • mkdir -p ~/.kube
    • chmod 0700 ~/.cubo
      Los comandos para crear el directorio kube y modificar sus permisos de acceso en la terminal de Ubuntu
  6. Actualice la sesión con los privilegios actualizados utilizando el comandosu.
    su - $USER
    El comando su en la terminal de Ubuntu
    Asegúrese de ingresar la contraseña de root cuando lo solicite la terminal.
  7. Por último, inicialice el servicioMicroK8s .
    El comienzo de Microk8
    Iniciando el servicio MicroK8s en la terminal de Ubuntu

Cómo acceder al panel web de MicroK8s

MicroK8s tiene una interfaz en línea sólida que facilita la gestión de los contenedores, pero deberá habilitarla en la terminal.

  1. Inicie una instancia delTablerode MicroK8s ejecutando este comando:
    microk8s habilita el panel de control
    Habilitar el panel de control de MicroK8s en la terminal de Ubuntu
  2. Utilice el argumentoproxypara que el Tablero sea accesible desde un navegador web.
    Proxy del panel de control de microk8s
    Iniciar el servicio proxy del panel de control de MicroK8s en la terminal de Ubuntu
  3. Haga clic en la URL127.0.0.1:10443y elijaAceptar y aceptar los riesgosen la pestañaAvanzadocuando su navegador le advierta que no abra el Panel de Control.
    Cómo abrir el panel de control de MicroK8s en Ubuntu
  4. Utilice el token generado dentro de la terminal para iniciar sesión en el Dashboard.
    Cómo iniciar sesión en el panel de control de MicroK8s en Ubuntu

Una vez dentro del panel, puedes hacer un seguimiento de todos tus pods, su consumo de recursos y otros detalles. Si aún no estás dispuesto a incursionar en los comandos de terminal, el panel es un excelente medio para familiarizarte con el funcionamiento de Kubernetes.

Creando un contenedor en MicroK8s

Uso del panel web

Por supuesto, este tutorial estaría incompleto si no implementáramos un contenedor. Hay varios métodos que puedes usar para lograrlo, pero destacaré dos de mis métodos preferidos. El primero involucra el Dashboard al que accedimos anteriormente.

  1. En la página de iniciodel Panel de control, haga clic en el ícono+ .
    El icono Más en el panel de MicroK8s
  2. Haga clic enCargardespués de ingresar el código para el archivo de configuración YAML que contiene los detalles sobre laimagen,la plantilla,los metadatosy otros parámetros en la pestañaCrear desde entradapara inicializar su primer contenedor.
    Ingrese el código del archivo YAML para crear un contenedor usando el Tablero de MicroK8s
  3. Alternativamente, puede cambiar a la pestañaCrear desde archivoy seleccionar el archivoYAML/JSONalmacenado en su sistema.
    Selección del archivo YAML para crear un contenedor mediante el panel de MicroK8s
    Asegúrese de presionar el botónCargardespués.
  4. Para una opción aún más sencilla, puede navegar a la pestañaCrear desde formularioeImplementarel contenedor después de especificar sus detalles.
    Implementación de un contenedor mediante el panel de control de MicroK8s

Uso de imágenes Docker

Dado que Docker proporciona un acceso fácil a una gran cantidad de imágenes de contenedores útiles, recomiendo probarlo si quieres imágenes creadas previamente.

  1. Instale el paqueteDockerejecutando el siguiente comando.
    sudo apt-get install docker.io -y
    El comando de terminal para instalar el paquete Docker en Ubuntu
  2. Al igual que antes, ejecuteusermodpara proporcionar privilegios de administrador al usuario principal antes de reiniciar la sesión con la ayuda del comandosu.
    • sudo usermod -aG docker ${USUARIO}
    • su - ${USER}
      El comando de terminal para modificar los privilegios del grupo Docker en Ubuntu
  3. Utilice el comandodocker pullpara obtener su imagen favorita.
    docker pull nombre_imagen
    El comando de terminal para extraer una imagen de Docker en Ubuntu
    He utilizadohttpdde Apache para este tutorial, pero también puedes utilizar otras imágenes de servidor web ligeras.
  4. Habilite elregistro de MicroK8sy asígnele suficiente almacenamiento utilizando el argumentode tamaño :
    microk8s habilitar registro: tamaño=100Gi
    El comando de terminal para habilitar el registro de MicroK8s en Ubuntu
  5. A continuación, etiquete la imagen de Docker que desea utilizar para un contenedor MicroK8s antes de enviarla al registro de MicroK8s que opera en elhost localcon el número de puerto32000.
    • etiqueta docker nombre_imagen localhost:32000/nombre_imagen
    • docker push localhost:32000/nombre_de_imagen
      El comando de terminal para agregar una imagen de Docker al registro de MicroK8s en Ubuntu
  6. (Opcional) Si Docker muestra errores al agregar la imagen al registro de MicroK8s, deberá modificar el archivodaemon.json. Primero, ábralo con eleditor nano.
    sudo nano /etc/docker/daemon.json
    El comando de terminal para acceder al archivo daemon.json en Ubuntu
    Luego, ingrese los siguientes argumentos antes de presionarCtrl+Xy pulsarYpara guardar y salir del archivo. Asegúrese de utilizar la sangría correcta para el código.
    {"registros inseguros": ["localhost:32000"]}
    Los nuevos argumentos para el archivo daemon.json en Ubuntu
    Asegúrese de reiniciar Docker para aplicar los cambios mediante el comandosystemctl:
    sudo systemctl reiniciar docker
  7. Implemente el contenedor MicroK8s ejecutando el siguiente comando:
    microk8s kubectl crea implementación nombre_contenedor --image=nombre_imagen
    El comando de terminal para implementar un contenedor MicroK8s usando una imagen Docker en Ubuntu
  8. Puede utilizar el comandoget podspara verificar si el contenedor se creó correctamente.
    Pods de obtención de microk8s kubectl
    El comando de terminal para verificar los pods MicroK8s en Ubuntu

Suponiendo que ya haya configurado el Panel de Control anteriormente, el contenedor aparecerá en la interfaz de usuario web junto con sus pods y réplicas.

Uso de una PC adicional para obtener experiencia práctica e informativa con Kubernetes

El panel de control de MicroK8s ejecutándose en Ubuntu

Con esto, ya debería saber todo lo necesario para adentrarse en el maravilloso (y complicado) mundo de Kubernetes. Una vez que haya adquirido un conocimiento sólido de MicroK8s, podrá instalar Talos Linux y configurar varios nodos para una instalación completa de Kubernetes.

Si buscas un método sencillo para crear contenedores y máquinas virtuales sin tener que recurrir a la brujería de K8s, te recomiendo que pruebesProxmox. Es una plataforma excelente que combina una interfaz de usuario fácil de usar con funciones sólidas y que vale la pena probar incluso si eres completamente nuevo en el campo de la virtualización.

Relacionado
Intenté ejecutar macOS en Proxmox: así fue como funcionó

Gracias a Proxmox, puedes convertir cualquier PC antiguo en un Hackintosh

1