Kubernetes · 4 min read · Nov 03, 2025
Configurar un clúster de Kubernetes en una instancia de AWS EC2 con Ubuntu usando kubeadm

En este artículo, veremos cómo configurar un clúster de Kubernetes con 2 nodos trabajadores y 1 nodo maestro en servidores Ubuntu 18.04 LTS. Usaremos la herramienta “ kubeadm “ para configurar el clúster. Kubeadm es una herramienta diseñada para proporcionar “ kubeadm init “ y “ kubeadm join “ para crear clústeres de Kubernetes. Antes de proceder con la creación del clúster, entendamos brevemente algunos términos.
- Docker:
Docker es una plataforma abierta para desarrollar, enviar y ejecutar aplicaciones. Docker te permite separar tus aplicaciones de tu infraestructura para que puedas entregar software rápidamente. Con Docker, puedes gestionar tu infraestructura de la misma manera que gestionas tus aplicaciones. - Imagen:
Una imagen es una plantilla de solo lectura con instrucciones para crear un contenedor Docker. A menudo, una imagen se basa en otra imagen, con alguna personalización adicional. - Contenedor:
Un contenedor es una instancia ejecutable de una imagen. Puedes crear, iniciar, detener, mover o eliminar un contenedor usando la API de Docker o la CLI. Puedes conectar un contenedor a una o más redes, adjuntar almacenamiento a él, o incluso crear una nueva imagen basada en su estado actual. - Kubernetes:
Kubernetes es un sistema de orquestación de contenedores de código abierto para automatizar la implementación, escalado y gestión de aplicaciones. - Nodos:
Un nodo representa una sola máquina en el clúster. - Pods:
Un pod es un grupo de contenedores que se despliegan juntos en el mismo host. Es la unidad básica de ejecución de una aplicación Kubernetes. - Despliegues:
Un Despliegue ejecuta múltiples réplicas de tu aplicación y reemplaza automáticamente cualquier instancia que falle o se vuelva no receptiva. Proporciona actualizaciones declarativas para Pods y ReplicaSets. - Conjunto de Réplicas:
Asegura cuántas réplicas de un pod deben estar en ejecución. Se puede considerar como un reemplazo para el controlador de replicación.
- Controlador de Replicación:
Es un supervisor para pods de larga duración. Lanzará un número especificado de pods llamados réplicas y se asegurará de que sigan funcionando todo el tiempo.
- Servicio:
Es una abstracción que define un conjunto lógico de Pods y una política para acceder a ellos.
El Servidor API, etcd, el Administrador de Controladores y el Programador son los componentes del Maestro y Docker, el Servicio Kubelet y el Servicio Proxy de Kubernetes son los componentes del Nodo Trabajador. No discutiremos estos componentes en este documento. Si deseas conocer más sobre estos componentes, puedes visitar la página oficial de Kubernetes aquí.
Requisitos previos
- 3 Servidores Ubuntu 18.04 con un mínimo de 2 GB de RAM y 2 CPUs.
- Un usuario del sistema con acceso “sudo” en cada servidor.
Lo que haremos
- Configurar un clúster de Kubernetes con kubeadm
Configurar un clúster de Kubernetes con kubeadm
Aquí,
Tenemos 3 Servidores Ubuntu 18.04 LTS.
Servidor 1= nodo1
Servidor 2= nodo2
Servidor 3= maestro
Antes de proceder con la instalación real, cambiemos el nombre del host de los servidores.
Puedes usar los siguientes comandos para establecer un nombre de host en cada servidor. Después de ejecutar los siguientes comandos en cada servidor, vuelve a iniciar sesión en los servidores para que obtengan un nuevo nombre de host.
sudo hostnamectl set-hostname "maestro"
sudo hostnamectl set-hostname "nodo1"
sudo hostnamectl set-hostname "nodo2"Sigue los pasos mencionados a continuación para levantar el clúster de Kubernetes en funcionamiento.
Obtener la clave gpg de Docker *(Ejecuta el siguiente comando en todos los nodos):*
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -Agregar el repositorio de Docker (Ejecuta el siguiente comando en todos los nodos):
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
Obtener la clave gpg de Kubernetes (Ejecuta el siguiente comando en todos los nodos):
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -Agregar el repositorio de Kubernetes (Ejecuta el siguiente comando en todos los nodos):
cat << EOF | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
Actualizar tus paquetes (Ejecuta el siguiente comando en todos los nodos):
sudo apt-get updateInstalar Docker, kubelet, kubeadm y kubectl (Ejecuta el siguiente comando en todos los nodos):
sudo apt-get install -y docker-ce=18.06.1~ce~3-0~ubuntu kubelet=1.15.7-00 kubeadm=1.15.7-00 kubectl=1.15.7-00
Mantenerlos en la versión actual (Ejecuta el siguiente comando en todos los nodos):
sudo apt-mark hold docker-ce kubelet kubeadm kubectlAgregar la regla de iptables a sysctl.conf (Ejecuta el siguiente comando en todos los nodos):
echo "net.bridge.bridge-nf-call-iptables=1" | sudo tee -a /etc/sysctl.confHabilitar iptables inmediatamente (Ejecuta el siguiente comando en todos los nodos):
sudo sysctl -p
En el Maestro:
Inicializar el clúster (Ejecuta el siguiente comando solo en el nodo Maestro):
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Configurar kubeconfig local *(Ejecuta el siguiente comando solo en el nodo Maestro):*
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Aplicar la superposición de red CNI de Flannel (Ejecuta el siguiente comando solo en el nodo Maestro):
sudo kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.ymlEn Nodo1 y Nodo 2:
Unir los nodos trabajadores al clúster (Ejecuta el siguiente comando solo en Nodo1 y Nodo2):
sudo kubeadm join 172.31.4.161:6443 --token 0y52t6.ffsj8jkjfcl1sq8h \
--discovery-token-ca-cert-hash sha256:7aa1825042d19d3e567f7e4b447634e942fe9ed7f18f78464a9c05f451551ed5
Verificar que los nodos trabajadores se hayan unido al clúster con éxito (Ejecuta el siguiente comando en el nodo Maestro):
kubectl get nodesConclusión:
En este artículo, aprendimos a configurar un clúster de Kubernetes con la herramienta kubeadm. Vimos lo fácil que se puede crear un clúster si no se omiten los pasos y se realiza una instalación adecuada.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.