

# Información sobre cómo crear una tarea de Windows de Amazon ECS para EC2
<a name="getting-started-ecs-ec2-v2"></a>

Para comenzar a utilizar Amazon ECS mediante EC2, registre una definición de tarea y cree un clúster y un servicio en la consola.

Siga estos pasos para comenzar a utilizar Amazon ECS mediante el tipo de lanzamiento de EC2.

## Requisitos previos
<a name="getting-started-ec2-prereqs"></a>

Antes de comenzar, complete los pasos en [Configuración para utilizar Amazon ECS](get-set-up-for-amazon-ecs.md) y corrobore que su usuario de IAM disponga de los permisos que se especifican en la política de IAM `AdministratorAccess` de ejemplo.

La consola intenta crear automáticamente el rol de IAM de puesta en marcha de tareas, que se requiere para las tareas de Fargate. Para asegurarse de que la consola pueda crear este rol de IAM, una de las siguientes condiciones debe ser verdadera:
+ El usuario tiene acceso de administrador. Para obtener más información, consulte [Configuración para utilizar Amazon ECS](get-set-up-for-amazon-ecs.md).
+ El usuario tiene los permisos de IAM para crear un rol de servicio. Para obtener más información, consulte [Creación de un rol para delegar permisos a un servicio de AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html).
+ Un usuario con acceso de administrador ha creado manualmente el rol de ejecución de tareas para que se encuentre disponible en la cuenta que se va a utilizar. Para obtener más información, consulte [Rol de IAM de ejecución de tareas de Amazon ECS](task_execution_IAM_role.md).

**importante**  
El grupo de seguridad que seleccione al crear un servicio con su definición de tareas debe tener el puerto 80 abierto para el tráfico entrante. Agregue las siguientes reglas de entrada al grupo de seguridad. Para obtener información acerca de cómo crear un grupo de seguridad, consulte [Cree un grupo de seguridad para su instancia de Amazon EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-security-group.html) en la *Guía del usuario de Amazon EC2*.  
Tipo: HTTP
Protocolo: TCP
Intervalo de puertos: 80
Source (Origen): Anywhere (Cualquiera) (`0.0.0.0/0`)

## Paso 1: creación de un clúster
<a name="getting-started-ec2-cluster-v2"></a>

Un clúster de Amazon ECS es una agrupación lógica de tareas, servicios e instancias de contenedores. 

Los siguientes pasos lo guiarán a través de la creación de un clúster con una instancia de Amazon EC2 registrada en él que nos permitirá ejecutar una tarea en el clúster. Si no se menciona un campo específico, deje el valor predeterminado de la consola.

**Para crear un nuevo clúster (consola de Amazon ECS)**

Antes de empezar, asigne el permiso de IAM correspondiente. Para obtener más información, consulte [Ejemplos de clústeres de Amazon ECS](security_iam_id-based-policy-examples.md#IAM_cluster_policies).

1. Abra la consola en [https://console.aws.amazon.com/ecs/v2](https://console.aws.amazon.com/ecs/v2).

1. En la barra de navegación, seleccione la región a utilizar.

1. En el panel de navegación, seleccione **Clusters (Clústeres)**.

1. En la página **Clusters** (Clústeres), elija **Create Cluster** (Crear clúster).

1. En **CLuster configuration** (Configuración de clúster), para **Cluster name** (Nombre del clúster), introduzca un nombre único.

   El nombre puede contener hasta 255 letras (minúsculas y mayúsculas), números y guiones.

1. (Opcional) Para cambiar la VPC y las subredes donde se inician sus tareas y servicios, en **Networking** (Redes), realice cualquiera de las siguientes operaciones:
   + Para eliminar una subred, en **Subnets** (Subredes), elija **X**para cada subred que desea eliminar.
   + Para cambiar a una VPC distinta de la VPC **predeterminada**, en **VPC**, elija una **VPC** existente y, a continuación, en **Subredes**, seleccione cada subred.

1. Para agregar instancias de Amazon EC2 al clúster, expanda **Infraestructura** y, a continuación, seleccione **Instancias de Amazon EC2**. A continuación, configure el grupo de Auto Scaling que actúa como proveedor de capacidad:

   1. Para utilizar un grupo de Auto Scaling existente, desde **Auto Scaling group (ASG)** (Grupo de Auto Scaling), seleccione el grupo.

   1. Para crear un grupo de Auto Scaling, desde **Auto Scaling group (ASG)** (Grupo de Auto Scaling), seleccione **Create new group** (Crear nuevo grupo) y, a continuación, proporcione los siguientes detalles sobre el grupo:
      + Para **Operating system/Architecture** (Arquitectura y sistema operativo), elija la AMI optimizada para Amazon ECS para las instancias de grupo de Auto Scaling.
      + Para **EC2 instance type** (Tipo de instancia EC2), elija el tipo de instancia para sus cargas de trabajo. Para obtener más información acerca de los diferentes tipos de instancias y sus casos de uso, consulte [Instancias de Amazon EC2](https://aws.amazon.com/ec2/instance-types/).

         El escalado administrado funciona mejor si el grupo de Auto Scaling utiliza los mismos tipos de instancia o similares. 
      + Para **Par de clave de SSH**, elija el par que demuestre su identidad cuando se conecta a la instancia.
      + Para **Capacity** (Capacidad), introduzca el número mínimo y el número máximo de instancias que va a lanzar en el grupo de Auto Scaling. Las instancias de Amazon EC2 generan costos mientras existan en los recursos de AWS. Para obtener más información, consulte [Precios de Amazon EC2](https://aws.amazon.com/ec2/pricing/). 

1. (Opcional) Para activar Container Insights, expanda **Monitoring** (Supervisión) y, a continuación, active **Use Container Insights** (Uso de Container Insights).

1. (Opcional) Para administrar las etiquetas de clúster, expanda **Tags** (Etiquetas) y, a continuación, realice una de las siguientes operaciones:

   [Agregar una etiqueta] Elija **Agregar etiqueta** y haga lo siguiente:
   + En **Key (Clave)**, escriba el nombre de la clave.
   + En **Valor**, escriba el valor de la clave.

   [Eliminar una etiqueta] Elija **Eliminar** a la derecha de la clave y el valor de la etiqueta.

1. Seleccione **Create (Crear)**.

## Paso 2: Registrar una definición de tareas
<a name="getting-started-ec2-task-def-v2"></a>

**Para registrar la definición de tarea de muestra con la Consola de administración de AWS**

1. En el panel de navegación, elija **Task Definitions**.

1. Elija **Create new task definition** (Crear nueva definición de tarea) y **Create new task definition with JSON** (Crear nueva definición de tarea con JSON).

1. Copie y pegue la siguiente definición de tarea de ejemplo en el cuadro y, a continuación, elija **Guardar**.

   ```
   {
       "containerDefinitions": [
           {
               "command": ["New-Item -Path C:\\inetpub\\wwwroot\\index.html -Type file -Value '<html> <head> <title>Amazon ECS Sample App</title> <style>body {margin-top: 40px; background-color: #333;} </style> </head><body> <div style=color:white;text-align:center> <h1>Amazon ECS Sample App</h1> <h2>Congratulations!</h2> <p>Your application is now running on a container in Amazon ECS.</p>'; C:\\ServiceMonitor.exe w3svc"],
               "entryPoint": [
                   "powershell",
                   "-Command"
               ],
               "essential": true,
               "cpu": 2048,
               "memory": 4096,
               "image": "mcr.microsoft.com/windows/servercore/iis:windowsservercore-ltsc2019",
               "name": "sample_windows_app",
               "portMappings": [
                   {
                       "hostPort": 443,
                       "containerPort": 80,
                       "protocol": "tcp"
                   }
               ]
           }
       ],
       "memory": "4096",
       "cpu": "2048",
       "family": "windows-simple-iis-2019-core",
       "executionRoleArn": "arn:aws:iam::012345678910:role/ecsTaskExecutionRole",
       "runtimePlatform": {"operatingSystemFamily": "WINDOWS_SERVER_2019_CORE"},
       "requiresCompatibilities": ["EC2"]
   }
   ```

1. Verifique su información y seleccione **Create (Crear)**.

## Paso 3: Crear un servicio
<a name="getting-started-ec2-service-v2"></a>

Un servicio Amazon ECS le ayuda a ejecutar y mantener simultáneamente un número determinado de instancias de una definición de tareas en un clúster de Amazon ECS. En caso de que alguna de las tareas falle o se detenga por algún motivo, el programador de servicio de Amazon ECS lanza otra instancia de la definición de tarea para sustituirla y mantener el recuento deseado de tareas en el servicio. Para obtener más información sobre los servicios, consulte [Servicios de Amazon ECS](ecs_services.md).

**Para crear un servicio**

1. En el panel de navegación, seleccione **Clusters (Clústeres)**.

1. Seleccione el clúster que creó en [Paso 1: creación de un clúster](#getting-started-ec2-cluster-v2).

1. En la pestaña **Services (Servicios)**, elija **Create (Crear)**.

1. En la sección **Environment** (Entorno), haga lo siguiente:

   1. Para **Compute options**, (Opciones de procesamiento), elija Launch type (Tipo de lanzamiento).

   1. En **Launch type (Tipo de lanzamiento)**, seleccione **EC2**

1. En la sección **Deployment configuration** (Configuración de implementación), haga lo siguiente:

   1. En **Family** (Familia), elija la definición de tarea que creó en [Paso 2: Registrar una definición de tareas](#getting-started-ec2-task-def-v2).

   1. En **Service name** (Nombre del servicio), ingrese un nombre para el servicio.

   1. En **Desired tasks** (Tareas deseadas), ingrese **1**.

1. Revise las opciones y elija **Crear**.

1. Elija **View service (Ver servicio)** para revisar el servicio.

## Paso 4: Ver el servicio
<a name="getting-started-ec2-view-v2"></a>

El servicio es una aplicación web para que pueda ver sus contenedores con un navegador web.

1. Abra la consola en [https://console.aws.amazon.com/ecs/v2](https://console.aws.amazon.com/ecs/v2).

1. En el panel de navegación, seleccione **Clusters (Clústeres)**.

1. Elija el clúster en el que ejecutó el servicio.

1. En la pestaña **Servicios**, en **Nombre del servicio**, elija el servicio que creó en [Paso 3: Crear un servicio](#getting-started-ec2-service-v2).

1. Seleccione la pestaña **Tareas** y, a continuación, elija la tarea de su servicio.

1. En la página de tareas, en la sección **Configuración**, en **IP pública**, elija **Dirección abierta**. En la captura de pantalla siguiente se muestra el resultado esperado.  
![\[Captura de pantalla de la aplicación de ejemplo de Amazon ECS. La salida indica que "Your application is now running on Amazon ECS" (Su aplicación se ejecuta ahora en Amazon ECS).\]](http://docs.aws.amazon.com/es_es/AmazonECS/latest/developerguide/images/ECS_Sample_Application.png)

## Paso 5: Eliminación
<a name="getting-started-ec2-cleanup-v2"></a>

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

Algunos recursos de Amazon ECS, tales como tareas, servicios, clústeres e instancias de contenedor, se limpian a través de 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 CloudFormation que los creó.

1. En el panel de navegación, seleccione **Clusters (Clústeres)**.

1. En la página **Clústeres**, seleccione el clúster de clúster que creó para este tutorial.

1. Seleccione la pestaña **Servicios**.

1. Seleccione el servicio y, a continuación, elija **Eliminar**.

1. En la pregunta de confirmación, escriba **delete** (eliminar) y, a continuación, elija **Delete** (Eliminar). 

   Espere hasta que se elimine el servicio.

1. Elija **Delete cluster**. En la pregunta de confirmación, ingrese **delete *cluster-name*** (eliminar nombre de clúster) y, a continuación, elija **Delete** (Eliminar). Al eliminar el clúster, se limpian los recursos asociados que se crearon con él, incluidos los grupos de Auto Scaling, las VPC o los balanceadores de carga.