

# Creación de un servicio que utilice VPC Lattice
<a name="ecs-vpc-lattice-create-service"></a>

Puede usar la Consola de administración de AWS o la AWS CLI para crear un servicio con VPC Lattice.

## Requisitos previos
<a name="create-ecs-vpc-lattice-prereqs"></a>

Antes de empezar este tutorial, asegúrese de que se cumplen los siguientes requisitos previos:
+ La última versión de la AWS CLI está instalada y configurada. Para obtener más información, consulte [Instalación de la AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html).
**nota**  
Puede utilizar puntos de conexión de servicio de doble pila para interactuar con Amazon ECS desde la AWS CLI, los SDK y la API de Amazon ECS a través de IPv4 e IPv6. Para obtener más información, consulte [Uso de puntos de conexión de doble pila en Amazon ECS](dual-stack-endpoint.md).
+ Los pasos descritos en [Configuración para utilizar Amazon ECS](get-set-up-for-amazon-ecs.md) están completos.
+ Su usuario de IAM dispone de los permisos requeridos que se especifican en la política de IAM [AmazonECS\_FullAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonECS_FullAccess) de ejemplo.

## Creación de un servicio que utiliza VPC Lattice con la Consola de administración de AWS
<a name="ecs-lattice-create-console"></a>

Siga estos pasos para crear un servicio con VPC Lattice mediante la Consola de administración de AWS.

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, elija **Clústeres**.

1. En la página **Clústeres**, seleccione el clúster en el que va a crear el servicio.

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

   Si nunca antes ha creado un servicio, siga los pasos que se indican en [Creación de un servicio de Amazon ECS mediante la consola](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/create-service-console-v2.html) y, a continuación, continúe con estos pasos cuando llegue a la sección de VPC Lattice.

1. Marque el botón para elegir **Activar VPC Lattice**.

1. A fin de utilizar un rol existente para el **rol de infraestructura de ECS para Amazon ECS**, elija uno que ya haya creado para usarlo al crear el grupo de destino de VPC Lattice. Para crear un nuevo rol, **cree un rol de infraestructura de ECS**.

1. Elija la **VPC**.

   La **VPC** depende del modo de red que haya seleccionado al registrar la definición de la tarea. Si utiliza el modo `host` o `network` con EC2, elija su VPC. 

   Si utiliza el modo `awsvpc`, la VPC se selecciona automáticamente en función de la VPC que haya elegido en **Redes** y no se podrá cambiar.

1. En **Grupos de destino**, elija el grupo o grupos de destino. Debe elegir un mínimo de un grupo de destino y un máximo de cinco. Elija **Agregar grupo de destino** para agregar grupos de destino adicionales. Elija el **nombre del puerto**, el **protocolo** y el **puerto** para cada grupo de destino que elija. Para eliminar un grupo de destino, elija **Eliminar**.
**nota**  
Si quiere agregar grupos de destino existentes, debe utilizar la AWS CLI. Para obtener instrucciones sobre cómo agregar grupos de destino mediante la AWS CLI, consulte [register-targets](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/register-targets.html) en la *Referencia de AWS Command Line Interface*.
Si bien un servicio de VPC Lattice puede tener varios grupos de destino, cada grupo de destino solo se puede agregar a un servicio.
Para crear un servicio en una configuración de solo IPv6, elija grupos de destino con un tipo de dirección IP de `IPv6`.

1. En este punto, vaya a la consola de VPC Lattice para continuar con la configuración. Aquí es donde se incluyen los nuevos grupos de destino en la acción predeterminada del oyente o en las reglas de un servicio de VPC Lattice existente. 

   Para obtener más información, consulte [Reglas de oyente para el servicio de VPC Lattice](https://docs.aws.amazon.com/vpc-lattice/latest/ug/listener-rules.html).

**importante**  
Debe permitir el prefijo `vpc-lattice` de la regla entrante en su grupo de seguridad o tareas y se puede producir un error en las comprobaciones de estado. 

## Creación de un servicio que utiliza VPC Lattice con la AWS CLI
<a name="ecs-lattice-create-cli"></a>

Utilice la AWS CLI para crear un servicio con VPC Lattice. Reemplace cada {{marcador de posición de entrada del usuario}} con información propia.

1. Cree un archivo de configuración de grupo de destino. El siguiente ejemplo se denomina `tg-config.json`

   ```
   {
       "ipAddressType": "IPV4",
       "port": 443,
       "protocol": "HTTPS",
       "protocolVersion": "HTTP1",
       "vpcIdentifier": "{{vpc-f1663d9868EXAMPLE}}"
   }
   ```

1. Utilice el siguiente comando para crear un grupo de destino de VPC Lattice.

   ```
   aws vpc-lattice create-target-group \
       --name my-lattice-target-group-ip \
       --type IP \
       --config file://{{tg-config.json}}
   ```
**nota**  
Para crear un servicio en una configuración de solo IPv6, cree grupos de destino con un tipo de dirección IP de `IPv6`. Para obtener más información, consulte [create-target-group](https://docs.aws.amazon.com/cli/latest/reference/vpc-lattice/create-target-group.html) en la *Referencia de comandos de la AWS CLI*.

   Ejemplo de código de salida:

   ```
   {
       "arn": "arn:aws:vpc-lattice:us-east-2:123456789012:targetgroup/tg-0eaa4b9ab4EXAMPLE",
       "config": {
           "healthCheck": {
               "enabled": true,
               "healthCheckIntervalSeconds": 30,
               "healthCheckTimeoutSeconds": 5,
               "healthyThresholdCount": 5,
               "matcher": {
                   "httpCode": "200"
               },
               "path": "/",
               "protocol": "HTTPS",
               "protocolVersion": "HTTP1",
               "unhealthyThresholdCount": 2
           },
           "ipAddressType": "IPV4",
           "port": 443,
           "protocol": "HTTPS",
           "protocolVersion": "HTTP1",
           "vpcIdentifier": "vpc-f1663d9868EXAMPLE"
       },
       "id": "tg-0eaa4b9ab4EXAMPLE",
       "name": "my-lattice-target-group-ip",
       "status": "CREATE_IN_PROGRESS",
       "type": "IP"
   }
   ```

1. El siguiente archivo JSON denominado {{ecs-service-vpc-lattice.json}} es un ejemplo que se utiliza para adjuntar un servicio de Amazon ECS a un grupo de destino de VPC Lattice. El `portName` en el siguiente ejemplo es el mismo que definió en el campo `name` de la propiedad `portMappings` de la definición de la tarea.

   ```
   {
       "serviceName": "{{ecs-service-vpc-lattice}}",
       "taskDefinition": "{{ecs-task-def}}",
           "vpcLatticeConfigurations": [
           {
               "targetGroupArn": "arn:aws:vpc-lattice:{{us-west-2:123456789012}}:targetgroup/{{tg-0eaa4b9ab4EXAMPLE}}",
               "portName": "{{testvpclattice}}",
               "roleArn": "arn:aws:iam::{{123456789012}}:role/ecsInfrastructureRoleVpcLattice"
           }
       ],
       "desiredCount": {{5}},
       "role": "{{ecsServiceRole}}"
   }
   ```

   Utilice el siguiente comando para crear un servicio de Amazon ECS y adjuntarlo al grupo de destino de VPC Lattice mediante el ejemplo de json anterior.

   ```
   aws ecs create-service \
       --cluster {{clusterName}} \
       --serviceName {{ecs-service-vpc-lattice}} \
       --cli-input-json file://{{ecs-service-vpc-lattice.json}}
   ```