Instalación de minikube

Índice

Minikube es una distribución minimalista de Kubernetes ideal para aprender a usar este orquestador, que instala una distribución de k8s en un único nodo, en este caso, en una máquina virtual usando libvirt y KVM. Para instalar minikube, en primer lugar, se descarga el binario desde el repositorio de Google en el que está publicado.

curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64

Después, se instala el binario en un directorio ejecutable como, por ejemplo /usr/local/bin. Este comando copia el binario a la ruta indicada y le da permiso de ejecución.

sudo install minikube-linux-amd64 /usr/local/bin/minikube

Para crear un “cluster” de kubernetes con minikube (aunque este cluster realmente sólo está formado por una máquina) se utiliza la orden start. Además, con la opción driver se indica el virtualizador que debe usar para crear la máquina virtual, en este caso, KVM.

❯ minikube start --driver=kvm2
😄  minikube v1.35.0 en Debian 12.9
✨  Using the kvm2 driver based on user configuration
👍  Starting "minikube" primary control-plane node in "minikube" cluster
🔥  Creando kvm2 VM (CPUs=2, Memory=3900MB, Disk=20000MB) ...
❗  Failing to connect to https://registry.k8s.io/ from inside the minikube VM
💡  To pull new external images, you may need to configure a proxy: https://minikube.sigs.k8s.io/docs/reference/networking/proxy/
🐳  Preparando Kubernetes v1.32.0 en Docker 27.4.0...
    ▪ Generando certificados y llaves
    ▪ Iniciando plano de control
    ▪ Configurando reglas RBAC...
🔗  Configurando CNI bridge CNI ...
🔎  Verifying Kubernetes components...
    ▪ Using image gcr.io/k8s-minikube/storage-provisioner:v5
🌟  Complementos habilitados: default-storageclass, storage-provisioner
💡  kubectl not found. If you need it, try: 'minikube kubectl -- get pods -A'
🏄  Done! kubectl is now configured to use "minikube" cluster and "default" namespace by default

Para interactuar con el cluster, es necesario contar con un cliente como kubectl. Este cliente se puede descargar desde los repositorios de los desarrolladores.

curl -LO "https://storage.googleapis.com/kubernetes-release/release/$(curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt)/bin/linux/amd64/kubectl"

Y se puede instalar con el comando install.

sudo install kubectl /usr/local/bin/kubectl

Así, el cliente y el cluster de k8s ya se pueden comunicar.

❯ kubectl get nodes
NAME       STATUS   ROLES           AGE    VERSION
minikube   Ready    control-plane   9m3s   v1.32.0
comments powered by Disqus

Relacionados

Cifrado asimétrico con GPG y OpenSSL

En este post se resume brevemente el procedimiento para crear claves de cifrado asimétrico tanto con GPG como con OpenSSL.

Leer

Despliegue de una aplicación con contenido persistente en Kubernetes

Para hacer persistente el contenido de una aplicación a los cambios de versiones en despliegues en Kubernetes hay que tener en cuenta dónde la aplicación almacena los datos. En este sentido, una aplicación puede almacenar los datos en el propio sistema donde se ejecuta o en una base de datos externa. Según esta configuración de la propia aplicación, el despliegue se hará de una de las formas que se recogen en este post.

Leer

Despliegue de una aplicación PHP en Kubernetes

En este post se documenta el despliegue de la aplicación Let`s Chat en Kubernetes.

Leer