Skip to main content

Despliegue

image.png

Entorno

  -----------+-----------------------------+-----------------------------+------------
             |                             |                             |
       192.168.1.251                 192.168.1.252                192.168.1.253
  +----------+------------+    +-----------+------------+   +------------+------------+
  | [k8s-1.cluster.local] |    |  [k8s-2.cluster.local] |   |  [k8s-3.cluster.local]  |
  |     Control Plane     |    |      Worker Node       |   |      Worker Node        | 
  +------------------ ----+    +------------------------+   +-------------------------+

3 x servidores ubuntu24.04

El dominio estándar en Kubernetes es cluster.local. Funciona bien en la mayoría de los casos y es importante para la resolución de nombres entre servicios. 

Adicionalmente puedes añadir al fichero de resolución local de cada host /etc/hosts las siguientes lineas:

192.168.1.251   k8s-1.cluster.local      k8s-1
192.168.1.252   k8s-2.cluster.local      k8s-2
192.168.1.253   k8s-3.cluster.local      k8s-3

Instalación

MicroK8s instalará un Kubernetes minimalista y ligero que podrás ejecutar y usar en prácticamente cualquier máquina. Se instala en un instante:

# Instala la versión mas reciente estable de  Microk8s
sudo snap install microk8s --classic

# Evita auto-actualizaciones de Microk8s
sudo snap refresh --hold microk8s

MicroK8s crea un grupo para permitir el uso sin problemas de comandos que requieren privilegios de administrador. Para agregar su usuario actual al grupo y obtener acceso al directorio de caché .kube, ejecute los siguientes comandos:

sudo usermod -a -G microk8s $USER
mkdir -p ~/.kube
chmod 0700 ~/.kube
# Volver a ingresar a la sesión para que se aplique
su - $USER

Comandos

# Comprobar estado
microk8s status --wait-ready

# Ver nodos
microk8s kubectl get nodes

# Ver servicios
microk8s kubectl get services

Para usar solo el comando kubectl añadir al fichero ~/.bash_aliases la linea

alias kubectl='microk8s kubectl'

Clúster

Añadir nodos

Para crear un clúster a partir de dos o más instancias de MicroK8s en ejecución, utilice el comando microk8s add-node. La instancia de MicroK8s en la que se ejecuta este comando será un nodo master alojará el "control plane" de Kubernetes:

microk8s add-node

El comando devolverá algunas instrucciones de unión que deben ejecutarse en la instancia de MicroK8s que desea unir al clúster:

microk8s join 192.168.1.230:25000/92b2db237428470dc4fcfc4ebbd9dc81/2c0cb3284b05

Eliminar nodos

# En el nodo a eliminar
microk8s leave

# En el nodo master
microk8s remove-node <IP_nodo_a_eliminar>