Desarrollo

Compatibilidad con Docker

Amazon ECS es compatible con Docker y le permite ejecutar y administrar contenedores Docker. Incluso se integra en la CLI de Docker Compose, para que pueda definir y ejecutar aplicaciones con varios contenedores. Las aplicaciones que empaquete como un contenedor localmente se implementarán y ejecutarán en Amazon ECS sin la necesidad de tener que hacer modificaciones en la configuración.

Compatibilidad con contenedores de Windows

Amazon ECS es compatible con la administración de contenedores de Windows. Una Amazon Machine Image (AMI) de Windows optimizada para Amazon ECS ofrece un nivel mejorado de visibilidad y rendimiento en el momento del lanzamiento de contenedores e instancias en relación con la CPU, el uso de memoria y las métricas de reserva.

AWS Copilot

La CLI de AWS Copilot es una herramienta para que los desarrolladores creen, liberen y operen aplicaciones en contenedores listas para la producción en Amazon ECS y AWS Fargate. Copilot incorpora las prácticas recomendadas, desde la infraestructura hasta la entrega continua y las pone a disposición de los clientes desde la comodidad de su línea de comando. Además, puede monitorear el estado del servicio al ver los registros o el estado del servicio, aumentar o reducir el escalado de los servicios de producción y poner en marcha un nuevo entorno para pruebas automatizadas. Descargue AWS Copilot

Compatibilidad con repositorios

Utilice Amazon ECS con cualquier repositorio de imágenes de Docker alojado por terceros o registro de Docker con acceso privado, como Docker Hub y Amazon Elastic Container Registry (Amazon ECR). Lo único que debe especificar es el repositorio en la definición de tareas y Amazon ECS recuperará las imágenes correspondientes a las aplicaciones.

Administración

Definiciones de tareas

Amazon ECS le permite definir tareas a través de una plantilla JSON declarativa denominada definición de tareas. En una definición de tareas, especifique el contenedor o los contenedores necesarios para dicha tarea, así como la imagen y el repositorio de Docker, los requisitos de memoria y CPU, los volúmenes de datos compartidos y la forma en que los contenedores están vinculados entre sí. Puede lanzar tantas tareas como desee a partir de un archivo único de definición de tareas que puede registrar en el servicio. Los archivos de definición de tareas le permiten controlar la versión de la especificación de su aplicación.

Control mediante programación

Amazon ECS le ofrece un conjunto de acciones de API sencillas que le permiten integrar y ampliar el servicio. Las acciones de API le permiten crear y eliminar clústeres, registrar tareas y anular su registro, lanzar y terminar contenedores de Docker y ofrecer información detallada sobre el estado del clúster y de sus instancias. También puede usar AWS CloudFormation para aprovisionar clústeres de Amazon ECS, registrar definiciones de tareas y programar contenedores.

Implementaciones de contenedores

Amazon ECS le permite actualizar con facilidad las versiones de sus contenedores. Puede cargar una versión nueva de la definición de tareas de su aplicación y el programador de Amazon ECS iniciará contenedores nuevos automáticamente a partir de la imagen actualizada, y detendrá los contenedores que ejecuten la versión anterior. Amazon ECS registra y anula el registro de contenedores automáticamente del balanceador de carga de aplicaciones asociado.

Implementaciones azul-verde

Las implementaciones azul-verde con AWS CodeDeploy le ayudan a minimizar el tiempo de inactividad durante las actualizaciones de la aplicación. Puede lanzar una nueva versión del servicio ECS de Amazon junto con la versión anterior y probar la nueva versión antes de redireccionar el tráfico. También puede monitorear el proceso de implementación y restaurar rápidamente si hay algún problema.

Recuperación automática de los contenedores

Amazon ECS recuperará automáticamente los contenedores con estado incorrecto para asegurarse de que disponga de la cantidad adecuada de contenedores para su aplicación.

Proveedores de capacidad

Los proveedores de capacidad permiten definir reglas flexibles sobre cómo se ejecutan las cargas de trabajo en contenedores en diferentes tipos de capacidad informática y administrar la escala de la capacidad. Los proveedores de capacidad trabajan tanto con Amazon EC2 como con AWS Fargate. Al ejecutar servicios y tareas, puede dividirlos en diferentes proveedores de capacidad, lo que habilita nuevas capacidades, como ejecutar un servicio en un porcentaje de división predefinido de la capacidad de Fargate y la de Fargate Spot.

Almacenamiento

Amazon Elastic File System (Amazon EFS) es un sistema de archivos elásticos totalmente administrado, simple y escalable, que le permite crear aplicaciones modernas, conservar y compartir datos y estados desde sus implementaciones de Amazon ECS y AWS Fargate. Todos los aspectos de la utilización de Amazon EFS con contenedores, incluida la conectividad, están resueltos, sin necesidad de administración. Puede centrarse simplemente en sus aplicaciones, no en la infraestructura. Más información sobre el almacenamiento de archivos persistente.

Programación y ubicación de tareas

Amazon ECS incluye varias estrategias de programación que colocan los contenedores en clústeres en función de las necesidades de sus recursos (por ejemplo, CPU o RAM) y requisitos de disponibilidad. Con las estrategias de programación disponibles, puede programar tareas en lote, servicios y aplicaciones de ejecución prolongada, y procesos daemon.

Programación de tareas

La programación de tareas de Amazon ECS le permite ejecutar procesos que realizan un trabajo y luego se detienen, como las tareas de procesamiento en lote. La programación inicia las tareas de manera automática a partir de una cola de tareas o en función de un intervalo de tiempo que usted defina.

Programación de servicios

La programación del servicio de Amazon ECS le permite ejecutar aplicaciones y servicios sin estado. Esta estrategia de programación garantiza que se ejecute constantemente un número específico de tareas y que estas se reinicien si tienen errores. Los clientes pueden asegurarse de que las tareas se registren en el balanceador de carga Elastic Load Balancing y pueden realizar comprobaciones de estado que los usuarios definan para las tareas en ejecución.

Programación daemon

La programación daemon de Amazon ECS ejecuta automáticamente la misma tarea en cada instancia seleccionada en su clúster de ECS. Esto facilita la ejecución de tareas que proporcionan una funcionalidad de administración común para un servicio como el registro, el monitoreo o las copias de seguridad.

Ubicación de tareas

Amazon ECS le permite a los usuarios personalizar la manera en la que se ubican las tareas en un clúster de instancias Amazon EC2 en función de atributos integrados, como el tipo de instancias, la zona de disponibilidad o los atributos personalizados definidos por el usuario. Utilice atributos como environment=production para etiquetar recursos, las acciones de la API list para encontrarlos y las acciones de las API RunTask y CreateService para programar tareas en ellos.

Con Amazon ECS, utilice estrategias de ubicación como empaquetamiento y distribución para definir con mayor precisión dónde se colocarán las tareas. Las políticas se pueden conectar para lograr capacidades de ubicación sofisticadas sin la necesidad de escribir código.

Redes

Detección de servicios

Amazon ECS está integrado con AWS Cloud Map para facilitar la detección y la conexión entre sus servicios en contenedores. AWS Cloud Map es un servicio de descubrimiento de recursos en la nube que le permite definir nombres personalizados para los recursos de su aplicación. Aumenta la disponibilidad de su aplicación porque el servicio web siempre detectará las ubicaciones más actualizadas de estos recursos que cambian de manera dinámica.

Malla de servicios

La malla de servicios facilita la creación y ejecución de aplicaciones de microservicios complejos al estandarizar la forma en que se comunican todos los microservicios de la aplicación. AWS App Mesh es un servicio que facilita la configuración de una parte de su aplicación para una visibilidad integral y una alta disponibilidad. Para usar App Mesh, agregue la imagen proxy de Envoy a la definición de tarea de ECS. App Mesh administra la configuración de Envoy para brindar capacidades de malla de servicios. App Mesh exporta métricas, registros y rastros a los puntos de enlace especificados en la configuración de arranque de Envoy proporcionada. App Mesh proporciona una API para configurar rutas de tráfico, interrupciones de circuito, reintentos y otros controles entre microservicios que están habilitados para la malla.

Redes de tareas

Amazon ECS admite las redes de Docker y se integra con Amazon VPC para brindar aislamiento a contenedores. Esto le brinda control sobre la manera en la que los contenedores se conectan con otros servicios y con el tráfico externo. Con Amazon ECS, puede elegir entre cuatro modos de red para los contenedores que se adaptan a diferentes casos de uso:

Redes de tareas/awsvpc
Este modo asigna a cada tarea de ECS en ejecución una interfaz de red elástica exclusiva, lo que permite utilizar todas las características de red en una VPC, como las instancias EC2.

Puente
Este modo crea un puente de Linux que conecta todos los contenedores en ejecución en el host en una red virtual local, a la cual se puede obtener acceso mediante la conexión de red predeterminada del host.

Host
Este modo añade contenedores directamente a la pila de red del host, lo que expone los contenedores en la red del host sin aislamiento.

Ninguno
Este modo deshabilita la red externa para contenedores.

Equilibrio de carga

Amazon ECS se integra con Elastic Load Balancing, lo que permite distribuir el tráfico en los contenedores con balanceadores de carga de aplicaciones o balanceadores de carga de redes. Debe especificar la definición de tarea y el balanceador de carga a utilizar y Amazon ECS agregará y quitará contenedores automáticamente del balanceador de carga. Especifique un puerto dinámico en la definición de tarea, que asigna a su contenedor un puerto no utilizado cuando se programa en una instancia EC2. Además, utilice el enrutamiento basado en rutas para compartir un balanceador de carga con varios servicios.

Monitoreo y registro

Monitoreo

Amazon ECS proporciona funciones de monitoreo para los contenedores y clústeres mediante Amazon CloudWatch. Puede monitorear el uso promedio y total de la CPU y la memoria durante la ejecución de tareas según su agrupación por definición de tarea, servicio o clúster. Configure alarmas de CloudWatch que le avisen cuando sea necesario incrementar o reducir la capacidad de los contenedores o clústeres.

Registro

Amazon ECS le permite registrar todas las llamadas a la API de Amazon ECS y recibir los archivos de registro mediante AWS CloudTrail. La información registrada incluye la identidad del intermediario de la API, la hora a la que se produce la llamada, la dirección IP de origen del intermediario, los parámetros de solicitud y los elementos de respuesta enviados por Amazon ECS. CloudTrail suministra un historial de llamadas a la API realizadas desde la consola de administración, los SDK y la CLI de AWS. Permite llevar a cabo análisis de seguridad, dar seguimiento a los cambios en los recursos y auditar la conformidad.

AWS Config

AWS Config se integra con Amazon ECS para proporcionarle visibilidad de la configuración de los recursos de AWS en su cuenta de AWS. AWS Config le permite a los usuarios monitorear y hacer un seguimiento de cómo se configuraron los recursos, cómo se relacionan entre sí y cómo cambian las configuraciones y las relaciones con el tiempo. AWS Config le permite simplificar la conformidad y la seguridad, la resolución de problemas operativos y la administración de recursos.

Implementaciones híbridas

AWS Outposts

Puede usar Amazon ECS en AWS Outposts para ejecutar aplicaciones en contenedores que requieren latencias particularmente bajas para los sistemas en las instalaciones. Outposts es un servicio totalmente administrado que extiende la infraestructura de AWS, los servicios de AWS, las API y las herramientas a prácticamente cualquier sitio conectado. Con Amazon ECS en Outposts, puede administrar contenedores en las instalaciones con la misma facilidad que administra sus contenedores en la nube.

Obtener más información acerca de los precios de Amazon ECS

Visite la página de precios
¿Está listo para comenzar?
Regístrese
¿Tiene más preguntas?
Contacte con nosotros