1.1K
Minikube es una excelente herramienta de código abierto que permite a los desarrolladores, entusiastas e ingenieros de DevOps tener en sus manos un clúster de Kubernetes en pleno funcionamiento sin las complejidades o el tiempo que implica poner en marcha un clúster K8s completo. En esta guía, veremos cómo instalar Minikube en Ubuntu 22.04, Ubuntu 20.04 y 18.04.
¿Qué es Minikube?
Antes de profundizar en la instalación y la interacción con Minikube, veamos la solución de clúster Minikube Kubernetes. Minikube es una solución de código abierto que le permite activar un clúster de Kubernetes de un solo nodo localmente en su computadora. Si tiene Docker instalado, Minikube ejecutará el nodo dentro de un contenedor.
También puede ejecutar Minikube dentro de una máquina virtual (VM) usando un hipervisor. Los desarrolladores pueden usarlo para aprender, probar y desarrollar aplicaciones usando Kubernetes sin configurar un clúster de varios nodos a gran escala. Este es el objetivo principal de Minikube: simplificar el proceso de introducción a Kubernetes.
Hace que los K8 sean accesibles para los usuarios que pueden no tener acceso a muchos recursos o a un entorno de Kubernetes dedicado. Con un clúster local, Minikube permite a los usuarios concentrarse en aprender los conceptos de Kubernetes y desarrollar aplicaciones sin la complejidad de administrar un clúster de producción a gran escala o los desafíos de aprovisionar uno para comenzar.
Requisitos previos para instalar Minikube
Antes de sumergirse en el proceso de instalación, asegúrese de que su sistema Ubuntu cumpla con los siguientes requisitos:
- Una versión compatible de Ubuntu (22.04, 20.04 o 18.04)
- Soporte de virtualización de hardware habilitado en el BIOS
- Al menos 2 GB de memoria libre y 20 GB de espacio libre en disco
- Privilegios de root para la instalación
Instalación de dependencias
Para instalar Minikube en Ubuntu, primero debemos instalar algunas dependencias: Docker y Kubectl. Primero, instalemos Docker.
Instalación del motor Docker
Docker es una plataforma que permite a los desarrolladores automatizar la implementación y administración de aplicaciones dentro de contenedores. Para instalar Docker en su sistema Ubuntu, siga estos pasos:
- Actualice la lista de paquetes:
sudo apt-get update
- Instale Docker CE (Community Edition) siguiendo la guía oficial de Docker aquí: Instalar Docker Engine en Ubuntu | Documentación acoplable.
A continuación se muestra un resumen de los comandos para instalar Docker en Ubuntu de la documentación oficial.sudo apt-get update sudo apt-get install \ ca-certificates \ curl \ gnupg sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg echo \ "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Después de instalar Docker, verifica la instalación comprobando la versión de Docker:
docker --version
Instalación de Kubectl
Kubectl es una herramienta de línea de comandos que le permite interactuar con un clúster de Kubernetes. Para instalar Kubectl, ejecute los siguientes comandos:
- Descargue el último binario de Kubectl:
curl -LO https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl
- Hacer el ejecutable binario:
chmod +x ./kubectl
- Mueva el binario a su RUTA:
sudo mv ./kubectl /usr/local/bin/kubectl
Verifique la instalación de Kubectl comprobando su versión:
kubectl version --client
Instalación de Minikube
Con Docker y Kubectl instalados, ahora podemos proceder a instalar Minikube. Siga los pasos a continuación:
- Descarga el último binario de Minikube:
wget https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
- Hacer el ejecutable binario:
chmod +x minikube-linux-amd64
- Mueva el binario a su RUTA:
sudo mv minikube-linux-amd64 /usr/local/bin/minikube
Verifique la instalación de Minikube comprobando su versión:
minikube version
Empezar Minikube
Con Minikube instalado, es hora de iniciar el clúster de Kubernetes de un solo nodo. El clúster de un solo nodo será la configuración Minikube del nodo del plano de control que funciona como trabajador. Para hacer esto, ejecute el siguiente comando:
minikube start
De forma predeterminada, Minikube usa el controlador Docker, lo que significa que creará un contenedor Docker para el plano de control de Kubernetes. Si prefiere usar otro administrador de máquinas virtuales, como VirtualBox, puede especificarlo usando el -conductor bandera:
minikube start --driver=virtualbox
Espere a que se complete el comando. Una vez que haya terminado, debería ver un mensaje que indica que el clúster de Kubernetes se está ejecutando. Recuerda que debes instalar Virtualbox, ya que esto no se hace automáticamente como parte de la configuración de Minikube.
Interactuando con su Minikube Cluster
Una vez que haya iniciado con éxito su clúster de Minikube, el siguiente paso es comunicarse con él mediante la herramienta de línea de comandos de Kubectl. Kubectl le permite administrar y monitorear su clúster de manera eficiente.
Comprobación del estado del clúster
Para ver el estado actual de su clúster Minikube, ejecute el siguiente comando:
minikube status
Este comando le proporcionará información sobre Minikube VM, el host del plano de control de Kubernetes y otros detalles relevantes.
Inspección de nodos en el clúster
Para ver los nodos presentes en su clúster, use este comando:
kubectl get nodes
Como clúster de Kubernetes de un solo nodo, Minikube mostrará un nodo con el estado «Listo», lo que significa que el plano de control de Kubernetes funciona correctamente.
Para ver el conjunto de contextos de Minikube, puede usar el comando:
kubectl config get-contexts
Acceso al panel de Kubernetes
El panel de Kubernetes ofrece una interfaz de usuario basada en la web que brinda una descripción general del estado de su clúster y le permite administrar los recursos de Kubernetes de manera efectiva. Para acceder al tablero, siga estos pasos:
- Habilite el complemento del tablero:
minikube addons enable dashboard
- Inicie el tablero y obtenga su URL:
minikube dashboard --url
El comando devolverá una URL que puede usar para acceder al tablero desde su navegador.
Trabajar con complementos de Minikube
Los complementos de Minikube son funciones y herramientas que se pueden habilitar o deshabilitar para personalizar su clúster de acuerdo con sus preferencias. Para ver los complementos disponibles, ejecute:
minikube addons list
Para habilitar o deshabilitar un complemento, use el Habilitación de complementos de minikube o complementos minikube deshabilitar comandos, seguido del nombre del complemento.
Ejemplo: habilitar el complemento del servidor de métricas
El complemento Metrics Server proporciona datos de uso de recursos para su clúster de Kubernetes. Para habilitarlo, ejecute:
minikube addons enable metrics-server
Detención y eliminación de su clúster Minikube
Cuando ya no necesite su clúster de Minikube, puede detenerlo y eliminarlo con los siguientes comandos:
- Detenga el clúster de Minikube:
minikube stop
- Elimina el clúster de Minikube:
minikube delete
Preguntas frecuentes sobre Minikube
Esta sección abordará algunas preguntas frecuentes sobre Minikube y su uso.
¿Puedo ejecutar varios nodos con Minikube?
Minikube está diseñado para ejecutar un clúster de Kubernetes de un solo nodo con fines de aprendizaje, desarrollo y prueba. Si bien no admite múltiples nodos de forma nativa, puede usar herramientas como Kind o K3s para crear clústeres de múltiples nodos en su máquina local. Sin embargo, para entornos de producción, se recomienda utilizar un servicio de Kubernetes administrado a gran escala, como Google Kubernetes Engine (GKE), Amazon Elastic Kubernetes Service (EKS) o Azure Kubernetes Service (AKS).
¿Cómo cambio entre diferentes versiones de Kubernetes en Minikube?
Minikube le permite ejecutar diferentes versiones de Kubernetes especificando la versión durante el inicio minikube dominio. Para ejecutar una versión específica, use el –versión-kubernetes indicador seguido del número de versión deseado, así:
minikube start --kubernetes-version v1.22.0
La lista de versiones de Kubernetes admitidas se encuentra en la Página de lanzamientos de Minikube GitHub.
¿Cómo elijo entre el controlador Docker y el hipervisor VirtualBox para Minikube?
Minikube admite varios controladores, incluido el controlador Docker y el hipervisor VirtualBox. La elección depende de sus requisitos y recursos del sistema. El controlador Docker usa contenedores Docker para ejecutar el clúster de Minikube, que puede ser más eficiente en términos de uso de recursos. El hipervisor VirtualBox crea una máquina virtual separada para su clúster Minikube, lo que puede proporcionar un mejor aislamiento. Para elegir un controlador específico, utilice el -conductor bandera durante la inicio minikube comando, así:
minikube start --driver=docker
o
minikube start --driver=virtualbox
¿Cómo accedo a los servicios que se ejecutan dentro de mi clúster Minikube?
Para acceder a los servicios que se ejecutan dentro de su clúster de Minikube, puede usar el servicio minikube comando seguido del nombre del servicio. Este comando abrirá una ventana del navegador o proporcionará una URL que apunta al servicio. Por ejemplo, para acceder a un servicio llamado mi-serviciocorrer:
minikube service my-service
Este comando abrirá el servicio en su navegador web predeterminado o mostrará una URL que puede usar para acceder al servicio manualmente.
Terminando
Minikube es una excelente herramienta de Kubernetes para el desarrollo y el aprendizaje. Si desea una manera rápida y fácil de obtener un clúster de Kubernetes, Minikube es una excelente opción. Con Minikube, puede experimentar con el Panel de control de Kubernetes, las API y muchos otros excelentes complementos. Además, puede experimentar con Kubernetes y desarrollar aplicaciones en un entorno local, eliminando la necesidad de un clúster complejo a gran escala.