Ejecutar tareas de Amazon ECS en Amazon WorkSpaces con Amazon ECS Anywhere
Akash Kumar, Amazon Web Services
Resumen
Amazon Elastic Container Service (Amazon ECS) Anywhere permite la implementación de tareas de Amazon ECS en cualquier entorno, incluida la infraestructura administrada por Amazon Web Services (AWS) y la infraestructura administrada por el cliente. Esto se puede hacer al tiempo que se utiliza un plano de control totalmente administrado por AWS que se ejecuta en la nube y que está siempre actualizado.
Las empresas suelen utilizar Amazon WorkSpaces para desarrollar aplicaciones basadas en contenedores. Para ello era necesario utilizar Amazon Elastic Compute Cloud (Amazon EC2) o AWS Fargate con un clúster de Amazon ECS para probar y ejecutar tareas de ECS. Ahora, con Amazon ECS Anywhere, se puede añadir Amazon WorkSpaces como instancias externas directamente a un clúster de ECS y ejecutar sus tareas directamente. Esto reduce el tiempo de desarrollo, ya que puede probar su contenedor con un clúster de ECS de forma local en Amazon WorkSpaces. También puede ahorrar el costo de utilizar instancias EC2 o Fargate para probar sus aplicaciones de contenedores.
Este patrón muestra cómo implementar tareas de ECS en Amazon WorkSpaces con Amazon ECS Anywhere. Se configura el clúster de ECS y se utiliza AWS Directory Service Simple AD para lanzar los WorkSpaces. A continuación, la tarea ECS de ejemplo lanza NGINX en los WorkSpaces.
Requisitos previos y limitaciones
Una cuenta de AWS activa
Interfaz de la línea de comandos de AWS (AWS CLI)
Credenciales de AWS configuradas en su máquina
Arquitectura
Pila de tecnología de destino
Una nube privada virtual (VPC)
Clúster de Amazon ECS
Amazon WorkSpaces
AWS Directory Service con AD Connector
Arquitectura de destino

La arquitectura incluye los siguientes servicios y recursos:
Un clúster de ECS con subredes públicas y privadas en una VPC personalizada
Simple AD en la VPC para proporcionar a los usuarios acceso a Amazon WorkSpaces
Amazon WorkSpaces aprovisionado en la VPC mediante Simple AD
AWS Systems Manager activado para añadir Amazon WorkSpaces como instancias administradas
El uso de Amazon ECS y AWS Systems Manager Agent (SSM Agent), Amazon WorkSpaces agregado a Systems Manager y al clúster de ECS
Un ejemplo de tarea de ECS para ejecutar en los WorkSpaces del clúster de ECS
Herramientas
AWS Directory Service Simple Active Directory (Simple AD) es un directorio administrado de manera autónoma que utiliza tecnología de un servidor compatible con Active Directory de Samba 4. Simple AD ofrece un subconjunto de las características que ofrece AWS Managed Microsoft AD, incluida la capacidad de gestionar los usuarios y conectarse de forma segura a las instancias de Amazon EC2.
Amazon Elastic Container Service (Amazon ECS) es un servicio de administración de contenedores escalable y rápido que ayuda a ejecutar, detener y administrar contenedores en un clúster.
AWS Identity and Access Management (IAM) le permite administrar de forma segura el acceso a los recursos de AWS mediante el control de quién está autenticado y autorizado a utilizarlos.
AWS Systems Manager le permite administrar las aplicaciones y la infraestructura que se ejecutan en la nube de AWS. Simplifica la administración de aplicaciones y recursos, reduce el tiempo requerido para detectar y resolver problemas operativos y ayuda a utilizar y administrar los recursos de AWS a escala de manera segura.
Amazon WorkSpaces le permite aprovisionar escritorios virtuales de Microsoft Windows o Amazon Linux basados en la nube para los usuarios, denominados WorkSpaces. Amazon Workspaces elimina la necesidad de adquirir e implementar hardware o instalar software complejo.
Epics
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Crear y configurar el clúster de ECS. | Para crear el clúster de ECS, siga las instrucciones que figuran en la Documentación de AWS, que incluyen los siguientes pasos:
| Arquitecto de la nube |
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Configurar Simple AD y lanzar Amazon WorkSpaces. | Para aprovisionar un directorio de Simple AD para su VPC recién creada y lanzar Amazon WorkSpaces, siga las instrucciones que figuran en la Documentación de AWS. | Arquitecto de la nube |
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Descargar los scripts adjuntos. | En su máquina local, descargue los archivos | Arquitecto de la nube |
Agregar el rol de IAM. | Añada variables de entorno en función de los requisitos de su empresa.
Ejecutar el siguiente comando.
| Arquitecto de la nube |
Agregar la política AmazonSSMManagedInstanceCores al rol de IAM. | Ejecutar el siguiente comando.
| Arquitecto de la nube |
Agregar la política AmazonEC2ContainerServiceforEC2Role al rol de IAM. | Ejecutar el siguiente comando.
| Arquitecto de la nube |
Comprobar el rol de IAM. | Para verificar el rol de IAM, ejecute el siguiente comando.
| Arquitecto de la nube |
Activar Systems Manager. | Ejecutar el siguiente comando.
| Arquitecto de la nube |
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Conectarse a su escritorio de WorkSpaces. | Para conectarse a sus Workspaces y configurarlos, siga las instrucciones que figuran en la Documentación de AWS. | Desarrollador de aplicaciones |
Descargar el script de instalación ecs-anywhere. | En el símbolo del sistema, ejecute el siguiente comando.
| Desarrollador de aplicaciones |
Comprobar la integridad del script del intérprete de comandos. | Ejecutar el siguiente comando (opcional).
| Desarrollador de aplicaciones |
Agregar un repositorio EPEL en Amazon Linux. | Para agregar un repositorio Extra Packages for Enterprise Linux (EPEL), ejecute el comando | Desarrollador de aplicaciones |
Instalar Amazon ECS Anywhere. | Para ejecutar el script de instalación, utilice el siguiente comando.
| |
Comprobar la información de la instancia desde el clúster de ECS. | Para verificar la información de la instancia de Systems Manager y ECS y validar que se ha agregado WorkSpaces al clúster, ejecute el comando siguiente desde su equipo local.
| Desarrollador de aplicaciones |
| Tarea | Descripción | Habilidades requeridas |
|---|---|---|
Para crear un rol de IAM de ejecución de tareas. | Descargue Ejecute el siguiente comando en su equipo local.
| Arquitecto de la nube |
Agregue la política al rol de ejecución. | Ejecutar el siguiente comando.
| Arquitecto de la nube |
Crear un rol de tarea. | Ejecutar el siguiente comando.
| Arquitecto de la nube |
Registrar la definición de tareas en el clúster. | Ejecute el siguiente comando en su equipo local.
| Arquitecto de la nube |
Ejecutar la tarea. | Ejecute el siguiente comando en su equipo local.
| Arquitecto de la nube |
Validar el estado de ejecución de la tarea. | Para obtener el ID de la tarea, ejecute el siguiente comando.
Ejecute el siguiente comando con el ID de la tarea.
| Arquitecto de la nube |
Comprobar la tarea en el WorkSpace. | Para comprobar que NGINX se está ejecutando en el WorkSpace, ejecute el comando | Desarrollador de aplicaciones |
Recursos relacionados
Conexiones
Para acceder al contenido adicional asociado a este documento, descomprima el archivo: attachment.zip