Requerimientos
RKE2 es muy liviano, pero tiene algunos requisitos mínimos que se describen a continuación.
Prerrequisitos
Dos nodos RKE2 no pueden tener el mismo nombre de nodo. Por defecto, el nombre del nodo se toma del nombre de host de la máquina.
Si dos o más de tus máquinas tienen el mismo nombre de host, debes realizar una de las siguientes acciones:
- Actualizar el nombre de host a un valor único.
- Configurar el parámetro
node-nameen el archivo de configuración con un valor único. - Configurar el parámetro
with-node-iden el archivo de configuración comotruepara añadir un número de ID generado aleatoriamente al nombre de host.
NOTA:
El parámetro
with-node-idestá disponible a partir de las versiones de mayo de 2023 (v1.27.2+rke2r1, v1.26.5+rke2r1, v1.25.10+rke2r1, v1.24.14+rke2r1).
Sistemas Operativos
Linux
Consulta la Matriz de Soporte de RKE2 para ver todas las versiones de sistemas operativos validadas con RKE2. En general, RKE2 debería funcionar en cualquier distribución de Linux que utilice systemd e iptables.
Hardware
Los requisitos de hardware escalan según el tamaño de tus implementaciones. A continuación se describen las recomendaciones mínimas:
Linux
- RAM: Mínimo 4GB (se recomiendan al menos 8GB).
- CPU: Mínimo 2 (se recomiendan al menos 4).
Guía de Tamaño de VM
Cuando hay limitaciones en CPU y RAM en los nodos de plano de control + etcd, podría haber restricciones en la cantidad de nodos agentes que se pueden unir bajo condiciones de carga estándar.
| CPU del Servidor | RAM del Servidor | Número de Agentes |
|---|---|---|
| 2 | 4 GB | 0-225 |
| 4 | 8 GB | 226-450 |
| 8 | 16 GB | 451-1300 |
| 16+ | 32 GB | 1300+ |
Se recomienda unir nodos agentes en lotes de 50 o menos para permitir que la CPU libere espacio, ya que hay un pico en el uso de recursos al unir nodos. Recuerda modificar el valor predeterminado de cluster-cidr si deseas más de 255 nodos.
Estos datos se obtuvieron bajo condiciones de prueba específicas y pueden variar según el entorno y las cargas de trabajo. Las pruebas se realizaron en v1.27.4+rke2r1 con máquinas aprovisionadas en AWS con volúmenes gp3 estándar de 20 GiB.
- Monitorizar recursos en Grafana utilizando Prometheus como fuente de datos.
- Desplegar cargas de trabajo que simulen actividad continua en el clúster:
- Una carga básica que escala continuamente hacia arriba y hacia abajo.
- Una carga que se elimina y recrea en bucle.
- Una carga constante que contiene múltiples recursos, incluyendo CRDs.
- Unir nodos agentes en lotes de 30-50.
Discos
El rendimiento de RKE2 depende del rendimiento de la base de datos, y dado que RKE2 ejecuta etcd de manera integrada almacenando los datos en disco, recomendamos usar un SSD siempre que sea posible para garantizar un rendimiento óptimo.
Red
IMPORTANTE: Si tu nodo tiene NetworkManager instalado y habilitado, asegúrate de que esté configurado para ignorar las interfaces gestionadas por CNI. Si tu nodo utiliza Wicked, asegúrate de habilitar la configuración sysctl de reenvío.
El servidor RKE2 necesita que los puertos 6443 y 9345 estén accesibles por otros nodos en el clúster.
Todos los nodos deben poder comunicarse entre sí a través del puerto UDP 8472 cuando se utiliza Flannel VXLAN.
Si deseas utilizar el servidor de métricas, deberás abrir el puerto 10250 en cada nodo.
Importante: El puerto VXLAN en los nodos no debe exponerse al mundo, ya que abre la red del clúster a cualquier persona. Ejecuta tus nodos detrás de un firewall o grupo de seguridad que desactive el acceso al puerto 8472.
Reglas de Red Entrantes
| Puerto | Protocolo | Origen | Destino | Descripción |
|---|---|---|---|---|
| 6443 | TCP | Nodos agentes RKE2 | Nodos servidor RKE2 | API de Kubernetes |
| 9345 | TCP | Nodos agentes RKE2 | Nodos servidor RKE2 | API del supervisor RKE2 |
| 10250 | TCP | Todos los nodos | Todos los nodos | Métricas de kubelet |
| 2379 | TCP | Nodos servidor RKE2 | Nodos servidor RKE2 | Puerto cliente etcd |
| 2380 | TCP | Nodos servidor RKE2 | Nodos servidor RKE2 | Puerto peer etcd |
| 2381 | TCP | Nodos servidor RKE2 | Nodos servidor RKE2 | Puerto de métricas etcd |
| 30000-32767 | TCP | Todos los nodos | Todos los nodos | Rango de puertos NodePort |
Reglas de Red Específicas del CNI
Canal
| Puerto | Protocolo | Origen | Destino | Descripción |
|---|---|---|---|---|
| 8472 | UDP | Todos los nodos | Todos los nodos | CNI Canal con VXLAN |
| 9099 | TCP | Todos los nodos | Todos los nodos | Verificaciones de salud |
| 51820 | UDP | Todos los nodos | Todos los nodos | CNI Canal con WireGuard IPv4 |
| 51821 | UDP | Todos los nodos | Todos los nodos | CNI Canal con WireGuard IPv6 |
Cilium
| Puerto | Protocolo | Origen | Destino | Descripción |
|---|---|---|---|---|
| 8/0 | ICMP | Todos los nodos | Todos los nodos | Verificaciones de salud |
| 4240 | TCP | Todos los nodos | Todos los nodos | Verificaciones de salud |
| 8472 | UDP | Todos los nodos | Todos los nodos | Cilium CNI con VXLAN |
Calico
| Puerto | Protocolo | Origen | Destino | Descripción |
|---|---|---|---|---|
| 179 | TCP | Todos los nodos | Todos los nodos | Calico CNI con BGP |
| 4789 | UDP | Todos los nodos | Todos los nodos | Calico CNI con VXLAN |
| 5473 | TCP | Todos los nodos | Todos los nodos | Calico CNI con Typha |
| 9098 | TCP | Todos los nodos | Todos los nodos | Verificaciones de salud Typha |
| 9099 | TCP | Todos los nodos | Todos los nodos | Verificaciones de salud |
Flannel
| Puerto | Protocolo | Origen | Destino | Descripción |
|---|---|---|---|---|
| 4789 | UDP | Todos los nodos | Todos los nodos | Flannel CNI con VXLAN |
Referencias
- Documentación Oficial
- Se han omitido las referencias a Windows, es una traducción parcial del sitio original.