Introducción al uso de Amazon ECS con Fargate - 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.

Introducción al uso de Amazon ECS con Fargate

Amazon Elastic Container Service (Amazon ECS) es un servicio de administración de contenedores altamente escalable y rápido que facilita la tarea de ejecutar, detener y administrar sus contenedores. Puede alojar sus contenedores en una infraestructura sin servidor que administre Amazon ECS mediante el lanzamiento de sus servicios o tareas en AWS Fargate. Para obtener información general sobre Amazon ECS, consulte ¿Qué es Amazon Elastic Container Service?.

Introducción a Amazon ECS en AWS Fargate utilizando el tipo de lanzamiento Fargate para sus tareas. En las regiones donde Amazon ECS admite AWS Fargate, el asistente de primera ejecución de Amazon ECS le guía a través del proceso de introducción a Amazon ECS mediante el tipo de lanzamiento de Fargate. El asistente le ofrece la opción de crear un clúster y lanzar una aplicación web de ejemplo. Si ya tiene una imagen de Docker que le gustaría lanzar en Amazon ECS, puede crear una definición de tarea con esa imagen y utilizarla para el clúster en su lugar.

importante

Para obtener información sobre cómo empezar a trabajar con Amazon ECS utilizando el tipo de lanzamiento EC2, consulte Introducción al uso de Amazon ECS con Amazon EC2.

Para comenzar a utilizar Amazon ECS en AWS Fargate, realice los siguientes pasos.

Requisitos previos

Antes de comenzar, asegúrese de haber completado los pasos de Configuración con Amazon ECS y de que su usuario de AWS disponga de los permisos necesarios especificados en la política de ejemplo de IAM AdministratorAccess o Amazon ECS Permisos del asistente de primera ejecución.

El asistente de primera ejecución intenta crear automáticamente el rol de IAM de ejecución de tareas, que es necesario para las tareas de Fargate. Para asegurarse de que la experiencia de primer uso es capaz de crear este rol de IAM, se debe cumplir una de las condiciones siguientes:

Paso 1: Crear una definición de tarea

Una definición de tarea es una especie de plano de la aplicación. Cada vez que lance una tarea en Amazon ECS, debe especificar una definición de tarea. Esto permite que el servicio sepa qué imagen de Docker debe usar para los contenedores, cuántos contenedores debe utilizar en la tarea, así como la asignación de recursos para cada contenedor.

  1. Abra el asistente de primera ejecución de la consola de Amazon ECS en https://console.aws.amazon.com/ecs/home#/firstRun.

  2. En la barra de navegación, seleccione la región US East (N. Virginia).

    nota

    Puede completar este asistente de primera ejecución con estos pasos para cualquier región que admita Amazon ECS con Fargate. Para obtener más información, consulte Amazon ECS del AWS Fargate.

  3. Configure los parámetros de definición de contenedor.

    En Container definition (Definición de contenedor), el asistente de primera ejecución ya incluye las definiciones de contenedores sample-app, nginx y tomcat-webserver en la consola. Si lo desea, puede cambiar el nombre del contenedor o revisar y editar los recursos que este utiliza (tales como las unidades de CPU o los límites de memoria); para ello, elija Edit y editar los valores que se muestran. Para obtener más información, consulte Definiciones de contenedores.

    nota

    Si utiliza una imagen de Amazon ECR en la definición de contenedor, asegúrese de usar la nomenclatura registry/repository:tag completa para las imágenes de Amazon ECR. Por ejemplo, aws_account_id.dkr.ecr.region.amazonaws.com/my-web-app:latest.

  4. En Task definition (Definición de tarea), el asistente de primera ejecución establece una definición de tarea para usarla con las definiciones de contenedores precargadas. Si lo desea, puede cambiar el nombre de la definición de tarea y editar los recursos que esta utiliza (tales como los valores de Task memory y Task CPU). Para ello, elija Edit y edite los valores que se muestran. Para obtener más información, consulte Parámetros de definición de tarea.

    Para simplificar, las definiciones de tareas creadas en el asistente de primera ejecución se limitan a un único contenedor. Puede crear definiciones de tareas de varios contenedores más adelante en la consola de Amazon ECS.

  5. Seleccione Next (Siguiente).

Paso 2: Configurar el servicio

En esta sección del asistente, debe seleccionar cómo desea configurar el servicio de Amazon ECS que se crea a partir de la definición de tarea. Un servicio lanza y mantiene un número especificado de copias de la definición de tareas en su clúster. La aplicación Amazon ECS sample (Ejemplo de Amazon ECS) es una aplicación web de tipo Hello World que está diseñada para ejecutarse de forma indefinida. Dado que se ejecuta como un servicio, se reinicia si su estado se deteriora o si se detiene de forma inesperada.

El asistente de primera ejecución incluye una definición de servicio predefinida y el servicio sample-app-service definido puede verse en la consola. Si lo desea, puede cambiar el nombre del servicio o revisar y editar sus detalles. Para ello, elija Edit y haga lo siguiente:

  1. En el campo Service name, seleccione un nombre para el servicio.

  2. En el campo Number of desired tasks (Número de tareas deseadas), introduzca el número de tareas que desea lanzar con la definición de tarea especificada.

  3. En el campo Security group (Grupo de seguridad), especifique un rango de direcciones IPv4 desde las que se admitirá el tráfico entrante, en notación de bloque de CIDR. Por ejemplo, 203.0.113.0/24.

  4. (Opcional) Puede elegir usar un Balanceador de carga de aplicaciones con el servicio. Cuando se lanza una tarea desde un servicio que está configurado para utilizar un balanceador de carga, la tarea se registra en el balanceador de carga. El tráfico procedente del balanceador de carga se distribuye entre las instancias del balanceador de carga. Para obtener más información, consulte la Introducción a Application Load Balancers.

    importante

    Los Balanceador de carga de aplicaciones no incurren en costos mientras existen en los recursos de AWS. Para obtener más información, consulte Precios de Balanceador de carga de aplicaciones.

    Para usar un balanceador de carga con su servicio, siga los pasos que se describen a continuación.

    1. En la sección Container to load balance (Contenedor para balancear la carga), elija el Load balancer listener port (Puerto del agente de escucha del balanceador de carga). El valor predeterminado aquí está configurado para la aplicación de ejemplo, pero puede configurar distintas opciones del agente de escucha para el balanceador de carga. Para obtener más información, consulte Balanceo de carga de servicios.

  5. Revise la configuración del servicio y haga clic en Save y en Next.

Paso 3: Configurar el clúster

En esta sección del asistente, usted asigna el nombre al clúster y, a continuación, Amazon ECS se encarga automáticamente de la configuración de red y de IAM.

  1. En el campo Cluster Name, seleccione un nombre para su clúster.

  2. Haga clic en Next para continuar.

Paso 4: Revisar

  1. Revise la definición de tarea y la configuración de tareas y del clúster. A continuación, haga clic en Create (Crear) para finalizar. Se abrirá la página Launch Status (Estado de lanzamiento) que muestra el estado del lanzamiento. En ella se describen todos los pasos del proceso (esto puede tardar unos minutos en completarse mientras que se crea y se rellena el grupo de Auto Scaling).

  2. Una vez completado el lanzamiento, elija View service (Ver servicio).

Paso 5: Ver el servicio

Si el servicio es una aplicación web como la aplicación Amazon ECS sample (Ejemplo de Amazon ECS), puede ver sus contenedores con un navegador web.

  1. En la página Service: service-name, elija la pestaña Tasks.

  2. Elija una tarea de la lista de tareas en su servicio.

  3. En la sección Network, elija el valor de ENI Id de su tarea. Se abrirá la consola de Amazon EC2, donde puede ver los detalles de la interfaz de red asociada a la tarea, incluida la dirección IPv4 Public IP (IP pública IPv4).

  4. Escriba la dirección IPv4 Public IP (IP pública IPv4) en el navegador web. Debería aparecer una página web en la que se muestra la aplicación Amazon ECS sample (Ejemplo de Amazon ECS).

Paso 6: Eliminación

Cuando termine de usar un clúster de Amazon ECS, debe limpiar los recursos asociados para evitar incurrir en cargos por recursos que no está utilizando.

Algunos recursos de Amazon ECS, tales como tareas, servicios, clústeres e instancias de contenedor se limpian utilizando la consola de Amazon ECS. Otros recursos como, por ejemplo, las instancias de Amazon EC2, los balanceadores de carga de Elastic Load Balancing y los grupos de Auto Scaling, se deben limpiar manualmente en la consola de Amazon EC2 o eliminando la pila de AWS CloudFormation que los creó.

  1. Abra la consola de Amazon ECS en https://console.aws.amazon.com/ecs/.

  2. En el panel de navegación, elija Clusters (Clústeres).

  3. En la página Clusters, seleccione el clúster que desea eliminar.

  4. Elija Delete cluster (Eliminar clúster). En la pregunta de confirmación, escriba delete me (eliminarme) y, a continuación, elija Delete (Eliminar). Al eliminar el clúster, se limpian los recursos asociados que se crearon con el clúster, incluidos los grupos de Auto Scaling, las VPC o los balanceadores de carga.