Tutorial de Kubernetes
Kubernetes (también conocido como K8s) permite gestionar de forma eficiente grandes cantidades de contenedores y automatiza muchos procesos en el desarrollo de software. Con solo unos pocos pasos puedes instalar un clúster de Kubernetes potente y empezar a usarlo en producción de inmediato.
La plataforma ideal para aplicaciones de contenedores de alto rendimiento y gran escalabilidad, integrada en el ecosistema de IONOS Cloud con soporte experto 24/7.
Paso 1: prepara el sistema
En este tutorial te mostramos a modo de ejemplo la instalación de Kubernetes en Ubuntu.
El primer paso consiste en preparar el sistema, actualizándolo a la versión más reciente e instalando todas las dependencias necesarias. Abre el terminal y ejecuta primero una actualización del sistema para asegurarte de que todos los paquetes estén al día:
sudo apt update && sudo apt upgrade -y
bashA continuación, instala los programas auxiliares más importantes que se requieren para la instalación de Kubernetes y Minikube. Para ello, utiliza el siguiente comando:
sudo apt install -y curl wget apt-transport-https ca-certificates gnupg lsb-release
bashEstas herramientas garantizan que puedas usar fuentes externas de forma segura y descargar e instalar otros paquetes de software sin problemas.
Paso 2: instala kubectl
Kubernetes trabaja con una gran variedad de servidores, llamados maestros (master) y nodos (nodes), que no tienen que estar ubicados en servidores físicos diferentes. Gracias al uso de máquinas virtuales, desde un ordenador se pueden activar varios nodos Kubernetes. Para probarlo, el programa gratuito Minikube es una buena opción, ya que permite trabajar con Kubernetes también de manera local. Dado que Minikube necesita una máquina virtual o Docker, el programa depende de un hipervisor o del software de contenedores. Además, es imprescindible contar con la herramienta kubectl.
En este tutorial te mostramos cómo dar tus primeros pasos con Kubernetes utilizando Docker. Sin embargo, también puedes hacerlo con un software de virtualización como VirtualBox.
Primero, instala kubectl (Kube Control) en tu sistema. Este programa es necesario para gestionar clústeres.
curl -LO "https://dl.k8s.io/release/$(curl -Ls https://dl.k8s.io/release/stable.txt)/bin/linux/arm64/kubectl"
chmod +x kubectl
sudo mv kubectl /usr/local/bin/
bashLos comandos de instalación dependen de la arquitectura de tu sistema.
Paso 3: instala Docker
Antes de poder utilizar Minikube, debes asegurarte de que Docker esté instalado en tu sistema. Docker funciona como entorno de ejecución de contenedores y permite que Minikube ejecute clústeres de Kubernetes sin necesidad de software de virtualización. Instala Docker con el siguiente comando:
sudo apt install -y docker.io
bashPara poder usar Docker sin permisos de administrador, añade tu cuenta de usuario al grupo docker:
sudo usermod -aG docker $USER
newgrp docker
bashPuede que necesites cerrar la sesión y volver a iniciarla para que la pertenencia al grupo se active. Por último, prueba la instalación con:
docker run hello-world
bashSi aparece un breve mensaje de éxito, significa que Docker se ha instalado correctamente y está listo para usarse con Minikube.
Paso 4: instala y arranca Minikube
En el siguiente paso, se instala Minikube en una versión compatible y se utiliza Docker como controlador. Primero, descarga la versión adecuada de Minikube, haz que el archivo sea ejecutable y muévelo a un directorio del sistema para que el comando esté disponible de forma global:
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-arm64
chmod +x minikube-linux-arm64
sudo mv minikube-linux-arm64 /usr/local/bin/minikube
bashDespués de la instalación, puedes comprobar con el siguiente comando si Minikube se ha configurado correctamente:
minikube version
bashA continuación, inicia Minikube con el siguiente comando:
minikube start --driver=docker
bashEn este escenario, Minikube utiliza Docker como entorno de ejecución de contenedores y crea el clúster de Kubernetes directamente dentro del entorno de Docker. Al iniciar Minikube, kubectl debería configurarse automáticamente de forma correcta. Para pasar de la línea de comandos a una interfaz gráfica de usuario (GUI), introduce otro comando. Este abrirá el Dashboard en el navegador predeterminado:
minikube dashboard
bash
- vCPU económico con núcleos dedicados
- Flexible y sin periodo mínimo contractual
- Soporte experto 24/7
Paso 5: usa Kubernetes
Una vez iniciado Minikube, el programa creará automáticamente un clúster con un único nodo. Puedes comprobarlo introduciendo un comando para kubectl:
kubectl get nodes
bashAhora ya puedes crear despliegues (deployments) desde el panel de control. Para ello, haz clic en la opción “Crear” (el signo “+” arriba a la derecha) y aparecerá un editor web en el que podrás crear un despliegue en formato JSON o YAML. Al hacerlo, Kubernetes generará automáticamente varios pods (grupos de contenedores), cuya cantidad puede modificarse escalando el despliegue. La función correspondiente se encuentra sobre el icono de tres puntos junto al despliegue.


Otra opción es crear despliegues a través de la terminal. Para ello, sin embargo, los contenidos han de estar ya integrados en una imagen Docker guardada en un repositorio.
kubectl create deployment --image=[Ruta a la imagen]
bashEn la terminal de comandos pueden solicitarse numerosas informaciones:
¿Qué despliegues existen?
kubectl get deployments
bash¿Cuántos pods hay?
kubectl get pods
bash¿Qué servicios hay?
kubectl get services
bash¿Qué nodos están activos?
kubectl get nodes
bash
Paso 6: publica un despliegue (deployment)
Llegados a este punto, hemos iniciado el despliegue, pero aún no lo hemos publicado. Para hacerlo, hay que crear un servicio (service):
kubectl expose deploy test-deployment
bashDe este modo, sin embargo, el servicio solo se ha publicado dentro del clúster. Para poder acceder al despliegue también desde fuera del clúster, hay que añadir flags adicionales:
kubectl expose deploy test-deployment --type=LoadBalancer --port=8080
bashA continuación, ya se puede iniciar el servicio con Minikube:
minikube service test-deployment
bashTambién existe un comando para eliminar el servicio:
kubectl delete service test-deployment
bashE, igualmente, uno para eliminar el despliegue:
kubectl delete deployment test-deployment
bashFinalmente, para cerrar Minikube, hay que detener el proceso:
minikube stop
bashY, si ya no quieres seguir trabajando con la máquina virtual o con el entorno de ejecución de contenedores, puede eliminarlos fácilmente:
minikube delete
bashAl hacerlo, también se eliminan tanto la configuración previa como los despliegues y pods creados, de manera que, si se vuelve a iniciar Minikube, se empieza de nuevo con un clúster vacío.