🥇 Amazon Elastic Container Service (ECS)

🍿 Amazon elastic container service para Docker

Docker es una plataforma de software que permite create, probar y desplegar aplicaciones rápidamente.

Docker es altamente confiable: se pueden realizar deplous y escalar aplicaciones en un ambiente y saber como el código va a ejecutarse.

Docker escala de manera infinita: Ejecutar docker en AWS es una buena forma de montar aplicaciones distribuidas a cualquier escala.

Docker empaqueta paquetes de software en una forma estandarizada llamada “contenedores”.

Los contenedores te permiten de manera sencilla empaquetar el código de una aplicación, la configuración y las dependencias en bloques que proveen consistencia ambiental, eficiencia operacional, productividad de desarrollo y control de versiones.

🍿 Ejemplo

En un stack de aplicación normal se tienen varias capas.

Si consideramos que PHP, MySQL y Apache existen en diferentes versiones, al momento de escalar hay que asegurarse que todas las instancias provistas con estas dependencias tengan las mismas versiones instaladas para que funcionen de la misma forma.

La forma en la que docker funciona es envolviendo todas las dependencias en la misma forma, de tal forma que no importa que tipo de instancia se provisione, el ambiente será siempre el mismo.

🍿 Virtualización tradicional vs docker

En la virtualización tradicional contiene toda la VM como una sola entidad (SO, Dependencias, Aplicaciones, etc), esto provoca que solo el sistema operativo consuma hasta el 80% de los recursos asignados a la VM.

Los contenedores no requieren montar un sistema operativo sobre la VM, solo contienen la aplicación y sus dependencias.

🍿 Beneficios

🍿 Componentes en docker

🍿 Amazon EC2 Container Service (ECS)

Es un manejador de contenedores altamente escalable y rápido que permite de manera sencilla, ejecutar, detener y manejar contenedores de docker en un cluster de instancias EC2. Permite desplegar aplicaciones basadas en contenedores con llamadas sencillas a una API, para determinar el estado centralizado del cluster desde un servicio centralizado, y proporcionar acceso a muchas de las características de Amazon EC2.

🍿 Componentes

🥤 ECS

🥤 Contenedores

🥤 Docker Image

🥤 Registros de Contenedores

Amazon EC2 Container Registry (Amazon ECR) soporta repositorios privados de docker con permisos basados en recuross utilizando AWS IAM, de forma que especifica usuarios o instancias de Amazon EC2 que pueden acceder a respositorios e imagenes. Los desarolladores pueden utilizar Docker CLI para empujar, extraer y manejar imagenes.

🥤 ECS Task

Basicamente una task definition describe un contenedor de docker en formato json.

🍿 ECS Services

🍿 ECS Clusters

🍿 Calendarización en ECS

🍿 ECS Container Agent

El agente de contenedores de ECS (ECS Container Agent) permite a las instancias tipo contenedor conectarse al cluster. El agente de contenedores de Amazon ECS esta incluido en el Amazon ECS-OPtimized AMI, pero puede ser instalado en cualquier instancia de EC2 que soporte las especificaciones de Amazon ECS. El agente de ECS solo es soportado en instancias de EC2.

🍿 Seguridad en ECS

🍿 Límites de ECS

Workspaces.
comments powered by Disqus