← Últimos artículos
💻 computer science

Predictive and Adaptive Resource Scheduling for Kubernetes–Ceph Hyperconverged Infrastructure on Proxmox VE

Este artículo propone y evalúa un modelo de planificación predictivo y adaptativo que integra la previsión de la carga de trabajo con decisiones de almacenamiento conscientes de Ceph para reducir significativamente la contención de recursos y la latencia de E/S en infraestructuras hiperconvergentes de Kubernetes–Ceph ejecutadas en Proxmox VE, logrando un equilibrio de carga y un rendimiento superiores en comparación con el planificador predeterminado de Kubernetes.

Autores originales: Doston Khasanov, Abdurauf Abdullaev, Halimjon Khujamatov, Temirbek Toshtemirov, Alisher Mamatov, Razvan Craciunescu

Publicado 2026-07-23
📖 8 min de lectura🧠 Análisis profundo

Autores originales: Doston Khasanov, Abdurauf Abdullaev, Halimjon Khujamatov, Temirbek Toshtemirov, Alisher Mamatov, Razvan Craciunescu

Artículo original bajo licencia CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Esta es una explicación generada por IA del artículo a continuación. No ha sido escrita ni avalada por los autores. Para mayor precisión técnica, consulte el artículo original. Leer descargo de responsabilidad completo

Imagina una ciudad bulliciosa donde las carreteras, la red eléctrica y el suministro de agua viven dentro del mismo vecindario. En el mundo de la computación moderna, esto se llama "infraestructura hiperconvergente". En lugar de tener edificios separados para servidores (computación), discos duros (almacenamiento) y cables de red, todo está empaquetado estrechamente en las mismas máquinas físicas. Es eficiente y ahorra espacio, pero crea un problema de tráfico complicado. Si un camión de reparto masivo (un programa con mucha carga de datos) intenta circular por una calle mientras un equipo de construcción (una tarea de almacenamiento) trabaja justo al lado, todo se queda atascado.

Para gestionar esta ciudad digital, utilizamos un sistema llamado Kubernetes. Piensa en Kubernetes como el controlador de tráfico de la ciudad. Su trabajo es decidir qué edificio (servidor) recibe cada nuevo camión de reparto (programa de software, o "pod"). Sin embargo, el controlador de tráfico estándar es un poco anticuado. Solo mira lo que está sucediendo en este preciso momento. Ve que un edificio está vacío y dice: "¡Genial, envía el camión allí!". No se da cuenta de que la red eléctrica de ese edificio ya está sufriendo debido a un proyecto de construcción cercano, o que el camión está a punto de llegar con una carga que causará un atasco en cinco minutos. Este estilo reactivo a menudo provoca que algunos edificios sean aplastados por demasiado trabajo mientras otros permanecen inactivos, y que las "carreteras" (almacenamiento de datos) se obstruyan, ralentizándolo todo.

Este es el rompecabezas que un equipo de investigadores de universidades de Uzbekistán y Rumanía decidieron resolver. Se preguntaron: ¿Qué pasaría si nuestro controlador de tráfico pudiera echar un vistazo al futuro? ¿Qué pasaría si pudiera predecir dónde estarán los atascos antes de que ocurran y mover los camiones en consecuencia? En su artículo, construyeron un sistema más inteligente, "predictivo y adaptativo", que no solo reacciona al presente, sino que planifica el futuro inmediato. Al combinar una herramienta de predicción sencilla con una nueva forma de ubicación de software, lograron suavizar el caos en su ciudad de prueba, demostrando que, a veces, un poco de previsión es mejor que un cerebro supercomplejo.

El Problema: El Controlador de Tráfico Reactivo

En el mundo digital, los investigadores configuraron un banco de pruebas "hiperconvergente" utilizando tres herramientas principales: Proxmox VE (la base que sostiene los servidores), Ceph (el sistema de almacenamiento que actúa como un disco duro compartido gigante) y Kubernetes (el controlador de tráfico).

En una configuración estándar, Kubernetes juega sobre seguro. Espera hasta que un servidor está ejecutando un programa, comprueba cuánta CPU (potencia de procesamiento) y memoria (memoria a corto plazo) se está utilizando, y luego decide dónde colocar el siguiente programa. Es como un policía de tráfico que solo ve los coches que están actualmente en la carretera. Si un servidor parece libre, el policía envía un nuevo coche allí. Pero en un sistema hiperconvergente, el "coche" podría necesitar acceder al "almacenamiento" (el disco duro) en ese mismo servidor. Si el policía no sabe que el almacenamiento del servidor ya está ocupado, el nuevo coche se queda atascado, causando un retraso.

Los investigadores descubrieron que este enfoque "reactivo" provoca tres grandes dolores de cabeza:

  1. Contención de Recursos: Demasiados programas luchando por la misma CPU o almacenamiento al mismo tiempo.
  2. Desequilibrio de Carga: Algunos servidores están sudando a mares (funcionando al 95% de su capacidad) mientras otros están durmiendo la siesta (funcionando al 40% de su capacidad).
  3. Latencia de Almacenamiento: El tiempo que tarda en leerse o escribirse la información se vuelve más lento porque el sistema de almacenamiento está abrumado.

La Solución: Una Bola de Cristal y un Mapa Flexible

El equipo propuso un nuevo modelo que actúa como un controlador de tráfico con una bola de cristal y un mapa flexible. Su sistema tiene cuatro partes principales trabajando juntas en un bucle:

  1. La Bola de Cristal (Predicción): En lugar de limitarse a mirar el momento actual, el sistema utiliza un truco matemático llamado "Media Móvil Ponderada Exponencialmente" (EWMA). Piensa en esto como un pronosticador del tiempo que observa la lluvia de los últimos días para adivinar si necesitarás un paraguas mañana. Predice cuánta CPU y almacenamiento necesitará un programa en los próximos minutos. Descubrieron que una configuración específica para este "pronóstico" funcionó mejor, prediciendo las necesidades de CPU con un error de aproximadamente 8.4%, la memoria con un error de 5.1% y las necesidades de almacenamiento con un error de 12.3%.
  2. El Mapa Flexible (Programación Adaptativa): Una vez que el sistema sabe lo que viene, no solo vuelca el programa en el primer servidor vacío. Calcula la "carga prevista" para cada servidor. Pregunta: "Si pongo este programa aquí, ¿se sobrecargará el servidor en cinco minutos?". Si la respuesta es sí, salta ese servidor y busca un lugar mejor.
  3. La Decisión Consciente del Almacenamiento: Esta es la fórmula secreta. El sistema no solo mira la CPU; también comprueba la salud del almacenamiento Ceph (los demonios OSD o de almacenamiento). Si un servidor tiene un disco de almacenamiento ocupado, el sistema sabe que debe enviar los programas de datos pesados a otro lugar, incluso si la CPU parece libre.
  4. El Ajuste Dinámico: Si un programa de repente necesita más potencia de la esperada, el sistema puede ajustar automáticamente sus límites sin colapsar o reiniciarse, manteniendo el flujo fluido.

El Experimento: Una Prueba de Tres Ciudades

Para ver si esto funcionaba, los investigadores construyeron una ciudad real a pequeña escala utilizando tres ordenadores físicos (nodos). Cada nodo tenía un procesador potente, 32 GB de RAM y dos unidades SSD NVMe (discos duros superrápidos). Llenaron esta ciudad con diferentes tipos de tráfico:

  • Camiones pesados en CPU: Programas que solo procesan números (como stress-ng).
  • Camiones pesados en Almacenamiento: Programas que leen y escriben cantidades masivas de datos (como fio).
  • Tráfico mixto: Bases de datos y aplicaciones web que hacen un poco de todo (como YCSB).

Ejecutaron dos escenarios en paralelo durante 30 minutos.

  • Escenario A (La Forma Antigua): Kubernetes estándar sin predicción.
  • Escenario B (La Nueva Forma): Su modelo predictivo y adaptativo.

Los Resultados: Calles más Suaves, Entregas más Rápidas

Los resultados fueron una victoria clara para el nuevo modelo, y las cifras cuentan una historia vívida de mejora.

1. Equilibrando la Carga:
En la forma antigua, el tráfico era increíblemente desigual. Un servidor estaba gritando bajo la presión, funcionando al 95.64% de su capacidad, mientras que otro apenas trabajaba al 39.73%. El "desequilibrio" (la diferencia entre el servidor más ocupado y el más tranquilo) era un caótico 53.29%.
Con el nuevo modelo, el tráfico se suavizó perfectamente. El servidor más ocupado bajó al 67.41% y el más tranquilo despertó al 56.33%. El desequilibrio cayó estrepitosamente a solo el 10.98%. Eso es una reducción del 79.4% en el caos. El nuevo sistema mantuvo todos los servidores en una banda estrecha y feliz de uso de entre el 54% y el 68%, lo que significa que nadie estaba sobretrabajado y nadie estaba aburrido.

2. Acelerando el Almacenamiento:
Debido a que el nuevo sistema sabía dónde estaba ocupado el almacenamiento, evitó obstruir las carreteras. El tiempo promedio para aplicar cambios de almacenamiento (latencia) bajó de 1.11 ms a 1.00 ms. Aunque esto suena como una diferencia minúscula, en el mundo de los datos, significa que el sistema es más consistente y fiable. El retraso del "peor de los casos" (el percentil 95) también mejoró de 1.15 ms a 1.00 ms, lo que demuestra que el sistema gestionó mucho mejor el tráfico pesado.

3. Sin Coste Adicional:
Los investigadores tuvieron cuidado de señalar que no necesitaron reconstruir toda la ciudad ni utilizar cerebros de IA complejos y costosos. Utilizaron herramientas estándar (Kubernetes y APIs de Prometheus) y un método de predicción sencillo. Demostraron que no se necesita un algoritmo supercomplejo para obtener grandes resultados; solo se necesita conectar los puntos entre la computación y el almacenamiento.

La Conclusión: Integración sobre Complejidad

La parte más emocionante de este artículo no es solo que funcionó, sino por qué funcionó. Los investigadores argumentan que el problema no era que el antiguo controlador de tráfico fuera demasiado tonto; era que estaba mirando el problema en una sola dimensión. Veía la CPU pero ignoraba el almacenamiento.

Simplemente añadiendo una capa de "previsión" y "conciencia del almacenamiento" al sistema existente, lograron ganancias masivas. Demostraron que la integración arquitectónica (hacer que la computación y el almacenamiento hablen entre sí) es más poderosa que simplemente complicar los algoritmos. Incluso una herramienta de predicción simple y ligera, combinada con una colocación inteligente, puede solucionar los mayores cuellos de botella en un sistema hiperconvergente.

Al final, este artículo sugiere que el futuro de la computación eficiente no consiste necesariamente en construir cerebros más grandes y más inteligentes, sino en asegurar que las diferentes partes del sistema se tomen de la mano y miren hacia adelante juntas. El controlador de tráfico no necesita ser un genio; solo necesita saber qué hay a la vuelta de la esquina.

¿Ahogado en artículos de tu campo?

Recibe resúmenes diarios de los artículos más novedosos que coincidan con tus palabras clave de investigación — con resúmenes técnicos, en tu idioma.

Probar Digest →