Oñate Rodriguez-Pardo, Jaime2024-07-232024-07-232024-07-18https://hdl.handle.net/10115/38638Trabajo Fin de Grado leído en la Universidad Rey Juan Carlos en el curso académico 2023/2024. Directores/as: María Teresa González De Lena AlonsoEn el mercado actual, las aplicaciones, programas y servicios presentan grandes complejidades en su diseño y arquitectura. Esto se relaciona con su rendimiento, y con la capacidad de satisfacer las peticiones de clientes bajo cargas de trabajo inesperadas. Con cargas de trabajo bajas, se destina mas dinero del necesario para el servicio desplegado; y con cargas de trabajo superiores a la esperada, no se satisfacen servicios esenciales (afecta especialmente a la experiencia de usuario). Debido a estas cargas de trabajo arbitrarias, es necesario invertir en nuevas tecnologías que resuelvan el problema, como en la tecnología del escalado automático. Por otro lado, debido la complejidad implicada es necesario una herramienta que gestione el despliegue de esta tecnología, como los orquestadores de contenedores. En este trabajo de fin de grado se ha investigado la implementación de escalado automático en el despliegue de productos software utilizando orquestadores de contenedores. A lo largo del proyecto, se han identificado las limitaciones de los gestores de contenedores tradicionales y se ha explorado la viabilidad de emplear tecnologías avanzadas que proporcionen estas capacidades. El estudio se ha centrado en la transición de un gestor de contenedores a un orquestador de contenedores, esencial para gestionar aplicaciones que requieren escalado automático. Se ha demostrado que orquestadores como Kubernetes no solo facilitan el despliegue y escalado de contenedores, sino que también aseguran balanceo de carga, alta disponibilidad y recuperación ante fallos. Esto contrasta con las capacidades limitadas de los gestores de contenedores, que se restringen a manejar contenedores individuales en un solo host. En los capítulos siguientes, se presenta un análisis detallado del estado actual de las tecnologías de orquestación, se describe la lógica subyacente en los sistemas de orquestación de contenedores y se despliega un producto en un entorno de orquestación real, realizando pruebas para evaluar su rendimiento y capacidad de escalado. A pesar de la complejidad y coste de emplear un orquestador de contenedores, se vuelve necesario su uso en aplicaciones con cargas de trabajo variables e impredecibles.spaCreative Commons Atribución 4.0 Internacionalhttps://creativecommons.org/licenses/by/4.0/legalcodecontenedoresorquestador de contenedoresKubernetesDockerGoogle CloudclústerautoescaladoDocker SwarmGoogle Kubernetes EngineDESPLIEGUE DE UNA APLICACIÓN BASADA EN MICROSERVICIOS CON AUTO ESCALADO EN LA NUBE DE UN PROVEEDOR DE SERVICIOS CON ORQUESTADOR DE CONTENEDORESinfo:eu-repo/semantics/studentThesisinfo:eu-repo/semantics/openAccess