Información general sobre herramientas para desarrolladores de Amazon ECS - Amazon Elastic Container Service

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Información general sobre herramientas para desarrolladores de Amazon ECS

Tanto si forma parte de una empresa grande como de una startup, Amazon ECS ofrece diversas herramientas que pueden ayudarle a poner en funcionamiento sus contenedores de inmediato, independientemente de su nivel de experiencia. Puede trabajar con Amazon ECS de las siguientes formas.

  • Descubra, desarrolle, administre y visualice sus aplicaciones y servicios de contenedor mediante la AWS Management Console.

  • Realice acciones específicas en los recursos de Amazon ECS con implementaciones automatizadas a través de la programación o scripts mediante la AWS Command Line Interface, los SDK de AWS o la API de ECS.

  • Defina y administre todos los recursos de AWS en su entorno con implementación automatizada mediante el AWS CloudFormation.

  • Utilice el flujo de trabajo completo del CLI de AWS Copilot end-to-end desarrollador para crear, lanzar y operar aplicaciones de contenedores que cumplan con las AWS mejores prácticas de infraestructura.

  • Utilice su lenguaje de programación preferido para definir la infraestructura o arquitectura como código con el AWS CDK.

  • Coloque en contenedores las aplicaciones que se alojan en las instalaciones, en instancias de Amazon EC2 o en ambas mediante la portabilidad integrada y el ecosistema de herramientas para contenedores de AWS App2Container.

  • Implemente una aplicación en Amazon ECS o pruebe contenedores locales con contenedores que se ejecuten en Amazon ECS mediante el formato de archivo de Docker Compose con CLI de Amazon ECS.

  • Lance contenedores desde la Integración de Docker Desktop con Amazon ECS mediante Amazon ECS en Docker Desktop.

AWS Management Console

La AWS Management Console es una interfaz basada en navegador que permite administrar los recursos de Amazon ECS. La consola proporciona información general visual del servicio, lo que facilita la exploración de las características y funciones de Amazon ECS sin necesidad de utilizar herramientas adicionales. Hay disponibles muchas explicaciones y tutoriales relacionados que pueden guiarlo en cuanto a la utilización de la consola.

Para ver un tutorial que le oriente a través de la consola, consulte Introducción a Amazon ECS.

Al comenzar, muchos clientes prefieren usar la consola porque les proporciona una indicación visual inmediata de si las acciones que realizan correctamente o no. Los clientes de AWS que están familiarizados con la AWS Management Console, puede administrar fácilmente los recursos relacionados, como balanceadores de carga e instancias de Amazon EC2.

Comience con la AWS Management Console.

AWS Command Line Interface

La AWS Command Line Interface (AWS CLI) es una herramienta unificada que se puede utilizar para administrar los servicios de AWS. Con esta única herramienta, puede controlar múltiples servicios de AWS y automatizarlos a través de scripts. Los comandos de Amazon ECS de la AWS CLI son idénticos a los de la API de Amazon ECS.

AWS proporciona dos conjuntos de herramientas de línea de comandos: AWS Command Line Interface (AWS CLI) y la AWS Tools for Windows PowerShell. Para obtener más información, consulte la Guía del usuario de AWS Command Line Interface y la Guía del usuario de AWS Tools for Windows PowerShell.

La AWS CLI es la opción perfecta para los clientes que prefieren y están acostumbrados al scripting y a interactuar con herramientas de línea de comandos y saben exactamente qué acciones quieren realizar en sus recursos de Amazon ECS. La AWS CLI también es útil para quienes desean familiarizarse con las API de Amazon ECS. Los clientes pueden usar la AWS CLI para realizar diversas operaciones en recursos de Amazon ECS, incluidas las operaciones de crear, leer, actualizar y eliminar, directamente desde la interfaz de la línea de comandos.

Utilice la AWS CLI si está familiarizado o desea familiarizarse con las API de Amazon ECS y los comandos correspondientes de la CLI y desea escribir scripts automatizados y realizar acciones específicas en los recursos de Amazon ECS.

AWS CloudFormation

AWS CloudFormation y Terraform para Amazon ECS ofrecen formas eficaces de definir su infraestructura como código. Puede rastrear fácilmente qué versión de plantilla o pila de AWS CloudFormation se está ejecutando en cualquier momento y restaurar una versión anterior, de ser necesario. Puede realizar implementaciones de infraestructura y aplicaciones de la misma manera automatizada. Esta flexibilidad y automatización hacen que AWS CloudFormation y Terraform sean dos formatos populares para la implementación de cargas de trabajo en Amazon ECS desde canalizaciones de entrega continua.

Para obtener más información acerca de AWS CloudFormation, consulte Creación de recursos de Amazon ECS con AWS CloudFormation.

Utilice AWS CloudFormation o Terraform si desea automatizar las implementaciones de infraestructura y las aplicaciones en Amazon ECS, y definir y administrar explícitamente todos los recursos de AWS en su entorno.

CLI de AWS Copilot

La CLI (interfaz de línea de comandos) de AWS Copilot es una herramienta integral que permite a los clientes implementar y operar aplicaciones empaquetadas en contenedores y entornos de Amazon ECS directamente desde el código fuente. Al utilizar AWS Copilot, puede realizar estas operaciones sin entender los elementos de AWS y Amazon ECS, como Application Load Balancers, subredes públicas, tareas, servicios y clústeres. AWS Copilot crea recursos de AWS en su nombre a partir de patrones de servicio obstinados, como un servicio web con balanceo de carga o un servicio de backend, lo que proporciona un entorno de producción inmediato para aplicaciones en contenedores. Puede realizar la implementar a través de una canalización de AWS CodePipeline en múltiples entornos, cuentas o regiones, y administrarlos a todos dentro de la CLI. Con AWS Copilot, también puede realizar tareas del operador, como la visualización de registros y el estado de su servicio. AWS Copilot es una all-in-one herramienta que le ayuda a gestionar más fácilmente sus recursos en la nube para que pueda centrarse en desarrollar y gestionar sus aplicaciones.

Para obtener más información, consulte Utilización de la interfaz de línea de comandos de AWS Copilot.

Utilice el flujo de trabajo completo para end-to-end desarrolladores de AWS Copilot para crear, lanzar y operar aplicaciones contenedoras que cumplan con las AWS mejores prácticas de infraestructura.

AWS CDK

El AWS Cloud Development Kit (AWS CDK) es un marco de desarrollo de software de código abierto que puede usar para modelar y aprovisionar los recursos de aplicaciones en la nube mediante lenguajes de programación conocidos. El AWS CDK aprovisiona los recursos de una manera segura y repetible a través de la AWS CloudFormation. Al usar el CDK, los clientes pueden generar su entorno con menos líneas de código utilizando el mismo lenguaje que usaron para crear su aplicación. Amazon ECS proporciona un módulo en el CDK con el nombre ecs-patterns, que crea arquitecturas comunes. Un patrón disponible es ApplicationLoadBalancedFargateService(). Este patrón crea un clúster, una definición de tarea y recursos adicionales para ejecutar un servicio de Amazon ECS con equilibrio de carga en AWS Fargate.

Para obtener más información, consulte Introducción a Amazon ECS mediante el AWS CDK.

Utilice AWS CDK si desea definir la infraestructura o la arquitectura como código en su lenguaje de programación preferido. Por ejemplo, puede utilizar el mismo lenguaje que emplea para escribir sus aplicaciones.

AWS App2Container

A veces, es posible que los clientes empresariales ya tengan aplicaciones alojadas en las instalaciones, en instancias EC2 o en ambas. Están interesados en la portabilidad y el ecosistema de herramientas de contenedores específicos de Amazon ECS, y deben crear los contenedores primero. AWS App2Container permite hacer precisamente eso. App2Container (A2C) es una herramienta de línea de comandos que le permite modernizar aplicaciones de.NET y Java en aplicaciones en contenedores. A2C analiza y crea un inventario de todas las aplicaciones que se ejecutan en máquinas virtuales, en las instalaciones o en la nube. Una vez que seleccione la aplicación que desea incluir en un contenedor, A2C empaqueta el artefacto de la aplicación y las dependencias identificadas en imágenes de contenedor. A continuación, configura los puertos de red y genera la tarea de Amazon ECS. Por último, crea una CloudFormation plantilla que puede implementar o modificar si es necesario.

Para obtener más información, consulte Introducción alAWSApp2Container.

Utilice App2Container si tiene aplicaciones alojadas en las instalaciones, en instancias de Amazon EC2 o en ambas.

CLI de Amazon ECS

La CLI de Amazon ECS permite ejecutar las aplicaciones en Amazon ECS y AWS Fargate utilizando el formato de archivo de Docker Compose. Puede aprovisionar recursos rápidamente, enviar y extraer imágenes mediante Amazon ECR y monitorear las aplicaciones en ejecución en Amazon ECS o AWS Fargate. También puede probar contenedores que se ejecutan localmente junto con contenedores en la nube dentro de la CLI.

Para obtener más información, consulte Utilización de la interfaz de línea de comandos de Amazon ECS.

Utilice la CLI de ECS si tiene una aplicación de Compose y desea implementarla en Amazon ECS, o pruebe contenedores locales con contenedores que se ejecutan en Amazon ECS en la nube.

Integración de Docker Desktop con Amazon ECS

AWS y Docker han colaborado para crear una experiencia de desarrollador simplificada que permita implementar y administrar contenedores en Amazon ECS directamente con las herramientas de Docker. Ahora puede crear y probar sus contenedores localmente con Docker Desktop y Docker Compose, y, a continuación, implementarlos en Amazon ECS en Fargate. Para comenzar con la integración de Amazon ECS y Docker, descargue Docker Desktop y, si lo desea, regístrese para obtener un ID de Docker. Para obtener más información, consulte Docker Desktop y Registro de ID de Docker.

Quienes recién se inician con los contenedores suelen aprender mediante la utilización de las herramientas de Docker, como la CLI de Docker y Docker Compose. Esto hace que el uso del complemento de la CLI de Docker Compose para Amazon ECS sea un siguiente paso natural en la ejecución de contenedores en AWS después de llevar a cabo una prueba local. Docker proporciona una explicación sobre la implementación de contenedores en Amazon ECS. Para obtener más información, consulte Docker Compose CLI - Amazon ECS.

Puede aprovechar las características adicionales de Amazon ECS, como la detección de servicios, el equilibrio de carga y otros recursos de AWS para utilizarlos con las aplicaciones con Docker Desktop.

También puede descargar el complemento CLI de Docker Compose para Amazon ECS directamente desde GitHub. Para obtener más información, consulte el complemento CLI de Docker Compose para Amazon ECS en GitHub.

SDK de AWS

También puede utilizar los SDK de AWS para administrar los recursos y las operaciones de Amazon ECS a partir de diversos lenguajes de programación. Los SDK proporcionan módulos para ayudar a encargarse de las tareas, incluso las que se incluyen en la siguiente lista.

  • Firmar criptográficamente sus solicitudes de servicio

  • Reintentar solicitudes

  • Tratar las respuestas a errores

Para obtener más información acerca de los SDK disponibles, consulte Herramientas para Amazon Web Services.

Resumen

Con tanta variedad de opciones, puede elegir las que mejor se adapten a usted. Considere las siguientes opciones.

  • Si está orientado visualmente, puede crear y operar contenedores visualmente utilizando la AWS Management Console.

  • Si prefiere las CLI, considere utilizar AWS Copilot o la AWS CLI. Como alternativa, si prefiere el ecosistema de Docker, puede aprovechar la funcionalidad de ECS desde la CLI de Docker y realizar implementaciones en AWS. Después de implementar estos recursos, puede continuar administrándolos a través de la CLI o visualmente a través de la consola.

  • Si es desarrollador, puede utilizar el AWS CDK para definir la infraestructura en el mismo lenguaje que se utilizó para la aplicación. Puede usar el CDK y el AWS Copilot para exportar a CloudFormation plantillas, donde puede cambiar la configuración granular, añadir otros AWS recursos y automatizar las implementaciones mediante scripts o una canalización de CI/CD, por ejemplo. AWS CodePipeline

La AWS CLI, los SDK o la API de ECS son herramientas útiles para automatizar acciones en recursos de ECS, lo que las hace ideales para realizar implementaciones. Para implementar aplicaciones mediante AWS CloudFormation, puede utilizar diversos lenguajes de programación o un simple archivo de texto para modelar y aprovisionar todos los recursos necesarios para las aplicaciones. A continuación, puede implementar su aplicación en varias regiones y cuentas de manera automatizada y segura. Por ejemplo, puede definir el clúster, los servicios, las definiciones de tareas o los proveedores de capacidad de ECS como código en un archivo e implementarlos mediante los comandos. AWS CLI CloudFormation

Para realizar tareas de operaciones, puede consultar y administrar recursos mediante programación a través de la AWS CLI, el SDK o la API de ECS. Comandos como describe-tasks o list-services muestran los metadatos más recientes o una lista de todos los recursos. Al igual que con las implementaciones, los clientes pueden escribir una automatización que incluya comandos como update-service para proporcionar una acción correctiva al detectar un recurso que se ha detenido inesperadamente. Para operar sus servicios, también puede utilizar AWS Copilot. Comandos como copilot svc logs o copilot app show proporcionan detalles sobre cada uno de los microservicios o sobre la aplicación en su conjunto.

Los clientes pueden utilizar cualquiera de las herramientas disponibles que se mencionan en este documento y utilizarlas en diversas combinaciones. Las herramientas de ECS ofrecen varias rutas para dominar ciertas herramientas y utilizar otras que se adapten a sus cambiantes necesidades. Por ejemplo, puede optar por un control más pormenorizado de los recursos o por mayor automatización según sea necesario. ECS también ofrece una gran variedad de herramientas para una amplia gama de necesidades y niveles de experiencia.