Kubernetes Cluster con Kind


Por Martinez Henry


Resumen (TL;DR)

Kind es una herramienta que usa Docker para crear clústeres de Kubernetes locales, ideal para desarrollo y entornos de CI. Este artículo recorre la instalación y la creación de un clúster básico desde cero.


📑 Tabla de Contenido

  1. Introducción
  2. Entorno
  3. Instalación
  4. Creando un Clúster K8s

Kubernetes Cluster con Kind

En este artículo mostraré cómo crear un clúster de Kubernetes (k8s) usando la herramienta Kind. Kind es una herramienta que usa Docker para crear los nodos del clúster y puede utilizarse para desarrollo local o en entornos de CI. Para saber más, puedes visitar la página oficial de Kind.


Entorno

  • Linux Mint 20.2
  • Docker version 20.10.12, build e91ed57

Instalación

Para usar Kind, necesitas tener Docker instalado. Ver Cómo instalar Docker.

Después de instalar Docker, verifica que el daemon esté activo:

docker info

Ahora instala Kind siguiendo los pasos en la documentación oficial de Kind. En este caso, usando Homebrew:

brew install kind

Verifica la instalación:

kind version

Deberías ver algo como: kind v0.11.1 go1.16.4 linux/amd64


Creando un Clúster K8s

Para crear un clúster k8s con configuración básica ejecuta:

kind create cluster

Salida:

$ kind create cluster
Creating cluster "kind" ...
 ✓ Ensuring node image (kindest/node:v1.21.1)
 ✓ Preparing nodes
 ✓ Writing configuration
 ✓ Starting control-plane
 ✓ Installing CNI
 ✓ Installing StorageClass
Set kubectl context to "kind-kind"
You can now use your cluster with:

kubectl cluster-info --context kind-kind

Have a nice day!

Para verificar tu clúster:

kind get clusters

Para listar los nombres de los nodos:

kind get nodes

Salida:

$ kind get clusters
kind

$ kind get nodes
kind-control-plane

Ahora puedes usar kubectl para interactuar con tu clúster. Para instalarlo, consulta instalar kubectl.


Cierre

Con solo unos pocos comandos tienes un clúster de Kubernetes corriendo localmente. Kind es una de las formas más sencillas de tener un entorno k8s sin el overhead de una configuración en la nube, ideal para pruebas, desarrollo y pipelines de CI.


Referencias e Inspiraciones: