Hacia la predicción óptima de carga y el esquema de escalado automático personalizable para Kubernetes
Autores: Mondal, Subrota Kumar; Wu, Xiaohai; Kabir, Hussain Mohammed Dipu; Dai, Hong-Ning; Ni, Kan; Yuan, Honggang; Wang, Ting
Idioma: Inglés
Editor: MDPI
Año: 2023
Acceso abierto
Artículo científico
2023
Hacia la predicción óptima de carga y el esquema de escalado automático personalizable para Kubernetes
Categoría
Matemáticas
Subcategoría
Matemáticas generales
Palabras clave
Números grandes
Microservicios
Kubernetes
Escalador automático de pod horizontal
Aprendizaje profundo
Escalador automático de pod personalizado
Licencia
CC BY-SA – Atribución – Compartir Igual
Consultas: 25
Citaciones: Sin citaciones
La mayoría de los clientes empresariales ahora eligen dividir un gran servicio monolítico en un gran número de microservicios especializados y poco acoplados, que pueden ser desarrollados e implementados por separado. Docker, como tecnología de virtualización liviana, ha sido ampliamente adoptado para soportar diversos microservicios. En este momento, Kubernetes es una plataforma de orquestación portátil, extensible y de código abierto para gestionar estas aplicaciones de microservicios contenerizados. Para adaptarse a las solicitudes de usuario que cambian con frecuencia, ofrece un método de escalado automatizado, el Autoscaler de Pod Horizontal (HPA), que puede escalar en función de la carga de trabajo actual del sistema. Sin embargo, el método de autoescalado reactivo nativo no puede prever el escenario de carga de trabajo del sistema en el futuro para completar el escalado proactivo, lo que lleva a violaciones de la calidad de servicio, latencia de cola larga y uso insuficiente de recursos del servidor. En este documento, sugerimos un nuevo esquema de escalado proactivo basado en enfoques de aprendizaje profundo para compensar las deficiencias de HPA como el autoscaler predeterminado en Kubernetes. Después de una meticulosa evaluación experimental y análisis comparativo, utilizamos el modelo Gated Recurrent Unit (GRU) con una mayor precisión y eficiencia como modelo de predicción, complementado por un mecanismo de ventana de estabilidad para mejorar la precisión y estabilidad del modelo de predicción. Finalmente, con el marco de autoscaling personalizado de terceros, Custom Pod Autoscaler (CPA), empaquetamos nuestro algoritmo de autoscaling personalizado en un marco e implementamos el marco en el clúster de Kubernetes real. Los resultados experimentales exhaustivos demuestran la viabilidad de nuestro esquema de autoscaling, que supera significativamente al enfoque existente de Horizontal Pod Autoscaler (HPA).
Descripción
La mayoría de los clientes empresariales ahora eligen dividir un gran servicio monolítico en un gran número de microservicios especializados y poco acoplados, que pueden ser desarrollados e implementados por separado. Docker, como tecnología de virtualización liviana, ha sido ampliamente adoptado para soportar diversos microservicios. En este momento, Kubernetes es una plataforma de orquestación portátil, extensible y de código abierto para gestionar estas aplicaciones de microservicios contenerizados. Para adaptarse a las solicitudes de usuario que cambian con frecuencia, ofrece un método de escalado automatizado, el Autoscaler de Pod Horizontal (HPA), que puede escalar en función de la carga de trabajo actual del sistema. Sin embargo, el método de autoescalado reactivo nativo no puede prever el escenario de carga de trabajo del sistema en el futuro para completar el escalado proactivo, lo que lleva a violaciones de la calidad de servicio, latencia de cola larga y uso insuficiente de recursos del servidor. En este documento, sugerimos un nuevo esquema de escalado proactivo basado en enfoques de aprendizaje profundo para compensar las deficiencias de HPA como el autoscaler predeterminado en Kubernetes. Después de una meticulosa evaluación experimental y análisis comparativo, utilizamos el modelo Gated Recurrent Unit (GRU) con una mayor precisión y eficiencia como modelo de predicción, complementado por un mecanismo de ventana de estabilidad para mejorar la precisión y estabilidad del modelo de predicción. Finalmente, con el marco de autoscaling personalizado de terceros, Custom Pod Autoscaler (CPA), empaquetamos nuestro algoritmo de autoscaling personalizado en un marco e implementamos el marco en el clúster de Kubernetes real. Los resultados experimentales exhaustivos demuestran la viabilidad de nuestro esquema de autoscaling, que supera significativamente al enfoque existente de Horizontal Pod Autoscaler (HPA).