En este artículo, aprenderemos sobre la instalación del clúster de Kubernetes mediante Kubeadm en RHEL 8 y sus clones, como AlmaLinux 8, CentOS 8 y Rocky Linux 8.
Antes de comenzar, debe tener una comprensión básica sobre los conceptos y la arquitectura de Kubernetes . En este artículo, vamos a demostrar un clúster de dos nodos.
Para continuar con la instalación, necesitamos los requisitos básicos mencionados a continuación.
- Mínimo 2 hosts.
- 2 CPU.
- 2 GB de memoria física (RAM).
- 20 GB de espacio en disco.
- Conexión a Internet para descargar paquetes.
1. Configurar nombre de host y dirección IP
Establezca el nombre de host y configure los hosts en Master y Workers. Los hosts de archivos del sistema operativo se utilizan para convertir nombres de host o nombres de dominio en direcciones IP.
Aquí vamos a tener dos hosts:
- ostechmaster - Maestro
- ostechworker – Trabajador
Use el siguiente comando para configurar el nombre de host, se requiere reiniciar después de configurar el nombre de host.
# hostnamectl set-hostname ostechmaster
Editar /etc/hosts
archivo:
#vi /etc/hosts
Agregue el nombre de host y la dirección IP del servidor y del cliente en /etc/hosts
archivo:

Haga una prueba de ping para garantizar la conectividad:
[[email protected] ~]# ping ostechworkerPING ostechworker (172.31.5.141) 56(84) bytes de datos.64 bytes de ostechworker (172.31.5.141):icmp_seq=1 ttl=64 time=0.472 ms64 bytes de ostechworker (172.31.5.141):icmp_seq=2 ttl=64 tiempo=0,492 ms64 bytes de ostechworker (172.31.5.141):icmp_seq=3 ttl=64 tiempo=1,43 ms64 bytes de ostechworker (172.31.5.141):icmp_seq=4 ttl=64 tiempo=0,425ms
2. Deshabilitar SElinux
Deshabilite SElinux en Master y Workers, para que todos los contenedores puedan acceder fácilmente al sistema de archivos del host si SElinux está deshabilitado.
Hacer 'SELINUX=disabled
' en el archivo de configuración /etc/selinux/config
utilizando el editor vi. Es necesario reiniciar para reflejar el cambio de SElinux.
[[correo electrónico protegido] ~]# vi /etc/selinux/config

Asegúrese del estado de SElinux usando el siguiente comando.
[[email protected] ~]# sestatusSELinux status:disabled
3. Deshabilitar intercambio en maestro y trabajador
Es necesario desactivar el intercambio en todos los hosts de Kubernetes (Master y Workers). Este es el método de implementación preferido de la comunidad de Kubernetes. El servicio kubelet no se iniciará en el maestro y los trabajadores si el intercambio no está deshabilitado.
Ejecute el siguiente comando para deshabilitar SWAP:
[[email protected] ~]# swapoff -a &&sed -i '/swap/d' /etc/fstab
4. Permitir los puertos necesarios en el cortafuegos
Para que los componentes de Kubernetes interactúen entre sí, deben estar disponibles ciertos puertos esenciales. A continuación se muestran los puertos que se abrirán para aprovechar la conectividad entre los componentes de Kubernetes.
Plano de control/Servidor maestro:
Protocolo | Dirección | Rango de puertos | Propósito | Usado por |
TCP | Entrante | 6443 | Servidor API de Kubernetes | Todos |
TCP | Entrante | 2379-2380 | API de cliente de servidor etcd | kube-apserver, etcd |
TCP | Entrante | 10250 | API de Kubelet | Yo mismo, Plano de control |
TCP | Entrante | 10259 | kube-scheduler | Yo mismo |
TCP | Entrante | 10257 | kube-controller-manager | Yo mismo |
Protocolo | Dirección | Rango de puertos | Propósito | Usado por |
TCP | Entrante | 10250 | API de Kubelet | Yo mismo, Plano de control |
TCP | Entrante | 30000-32767 | Servicios de puerto de nodo | Todos |