Amazon Elastic Container Service (Amazon ECS) es el servicio de Amazon Web Services que se utiliza para ejecutar aplicaciones de Docker en un clúster escalable.
Paso 1: Configurar la primera ejecución con Amazon ECS
Paso 2: Crear una definición de tarea
Paso 3: Configurar el servicio
Paso 4: Configurar el clúster
Paso 5: Implementar y ver los recursos
Paso 6: Abrir la aplicación de muestra
Paso 7: Eliminar los recursos
PROCESO A SEGUIR
Slide 4
Autogestión de los contenedores.
Fiabilidad .
Aplicaciones libres de las dependencias instaladas en el sistema anfitrión.
Capacidad para desplegar multitud de contenedores en un mismo equipo físico.
Puesta en marcha de los servicios en un abrir y cerrar de ojos.
Contenedores muy livianos que facilitan su almacenaje, transporte y despliegue.
Capacidad para ejecutar una amplia gama de aplicaciones (prácticamente cualquier cosa que se nos ocurra podrá ejecutarse en un contenedor Docker).
Compatibilidad Multi-Sistema , podremos desplegar nuestros contenedores en multitud de plataformas.
La aplicación base de Docker gestionará los recursos existentes para asignarlos responsablemente entre los contenedores desplegados.
Podremos establecer una base desde la que comenzar nuestros proyectos, lo que nos ahorrará el tiempo de preparar el entorno para cada uno de ellos.
Podremos compartir nuestros contenedores para aumentar los repositorios de Docker así como beneficiarnos de los que compartan los demás.
Un microservicio es un patrón de diseño que convierte aplicaciones complejas en procesos simples y detallados pero reutilizables e interoperables que se pueden modificar e implementar de forma independiente.
Microservicios tienen las siguientes características:
Pequeños
Basados en sistemas de mensajería
Limitados por contextos
Desarrollados de forma autónoma
Implementados de forma independiente
Descentralizados
Independientes del lenguaje
Desarrollados y lanzados con procesos automatizados
Es el módulo de Docker encargado de gestionar clusters y orquestar servicios. Está basado en swarmkit
Swarm está formado por múltiples hosts Docker que se ejecutan con uno de los dos roles:
Swarm Manager: gestión y administración
Swarm Worker: ejecución de los servicios
Un host Docker puede ser manager, worker o los 2 roles.
Swarm se encargá de mantener ese estado óptimo gestionando la ejecución de los contenedores que mantienen esa configuración deseada.
A la ejecución de un contenedor que es parte de un servicio swarm se le denomina tareas (task). Hay que diferenciar los contenedores que se ejecutan de forma individual (standalone) o los que se ejecutan como parte de un servicio swarm.
Las máquinas virtuales pretendían en un principio resolver un problema de utilización en los servidores y fundamentalmente abstraen el hardware del sistema operativo, creando un entorno aislado para los sistemas operativos y aplicaciones. De esta manera es posible consolidar en un único servidor físico “muchas” máquinas virtuales.
Los contenedores pretenden abstraer las aplicaciones del sistema operativo, su objetivo es hacer las aplicaciones más portables.
se pueden “arrancar” en fracciones de segundo en lugar de minutos, ocupan MB en lugar de GB en disco y se pueden ejecutar de 10 a 100 veces más contenedores que máquinas virtuales en el mismo equipo.