Hito final: Despliegue en infraestructura virtual

Descripción

Hasta ahora se han visto diferentes tecnologías de gestión y despliegue de recursos virtuales. En la práctica, no se usa una sola tecnología: se usan diferentes tecnologías para diferentes servicios dentro de un aplicación, desde contenedores donde sea conveniente hasta instancias de máquinas virtuales pasando por plataformas como servicio (PaaS) y software como servicio (SaaS). En este hito final, se trata de aunar todas estas tecnologías y elegir, para cada subsistema, el tipo de despliegue que se considere más adecuado.

Prerrequisitos

Haber realizado y aprobado los hitos anteriores de la asignatura.

Explicación

La infraestructura virtual que eventualmente se usa en producción se rige por una serie de factores y tiene una serie de restricciones que dependerán de los recursos que estén disponibles y también de otros aspectos como el coste y eficiencia que se espera de los mismos. Decisiones como usar un PaaS gratuito siempre que se esté usando una pila más o menos estándar como MEAN o XAMPP o bien alojar en una máquina virtual pueden tener una gran influencia en el resultado final desde todos los puntos de vista; también usar contenedores desplegados en una máquina virtual o en el servicio específico, y por supuesto usar un proveedor u otro de los que se tengan.

Por eso en el mundo real™ rara vez se elige un solo proveedor o una sola tecnología; hay que tirar de varias y combinarlas: contenedores, máquinas virtuales y recursos como bases de datos también virtualizados conviven en un entorno de forma más o menos armoniosa. Por encima de ellos, herramientas como Vagrant permiten desplegar, de una sola vez, todo lo necesario. Siempre que se pueda desplegar de forma automática, en realidad importa poco la tecnología final que se use en el despliegue.

Por eso el objetivo de esta práctica es realizar un despliegue de una aplicación con varios servicios como se ha hecho hasta ahora, usando para cada servicio la tecnología y el proveedor de servicio que se considere más adecuada y primando, siempre, la posibilidad de desplegar usando una sola orden y de forma totalmente automática, incluso de forma desatendida.

Entrega de la práctica

Subir los fuentes a GitHub y hacer un pull request al documento de entregas como es habitual. El documento tendrá que incluir el nombre del proyecto y un enlace a un repositorio de contenedores docker o máquina virtual Azure o Amazon donde se haya desplegado el front-end. En caso de que el proyecto no sea visible, una captura de pantalla, que como todas las capturas tendrá que ir en la rama de documentación, es suficiente.

Valoración