

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.

# Acceda a las aplicaciones de contenedores de forma privada en Amazon ECS mediante AWS Fargate PrivateLink, AWS y un Network Load Balancer
<a name="access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer"></a>

*Kirankumar Chandrashekar, Amazon Web Services*

## Resumen
<a name="access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer-summary"></a>

Este patrón describe cómo alojar de forma privada una aplicación contenedora de Docker en la nube de Amazon Web Services (AWS) mediante Amazon Elastic Container Service (Amazon ECS) con un tipo de lanzamiento de AWS Fargate, detrás de un Network Load Balancer, y cómo acceder a la aplicación mediante AWS. PrivateLink Amazon Relational Database Service (Amazon RDS) aloja la base de datos relacional para la aplicación que se ejecuta en Amazon ECS con alta disponibilidad (HA). Puede utilizar Amazon Elastic File System (Amazon EFS) si la aplicación requiere almacenamiento permanente.

Este patrón utiliza un [tipo de lanzamiento de Fargate](https://docs.aws.amazon.com/AmazonECS/latest/userguide/launch_types.html) para el servicio de Amazon ECS que ejecuta las aplicaciones de Docker, con un equilibrador de carga de red en el frontend. Luego, se puede asociar a un punto final de nube privada virtual (VPC) para acceder a través de AWS. PrivateLink Luego, este servicio de punto final de VPC se puede compartir con otros VPCs mediante sus puntos de enlace de VPC.

Puede usar Fargate con Amazon ECS para ejecutar contenedores sin tener que administrar servidores o clústeres de instancias de Amazon Elastic Compute Cloud EC2 (Amazon). También puede usar un grupo de Amazon EC2 Auto Scaling en lugar de Fargate. Para obtener más información, consulte [Acceda a aplicaciones de contenedores de forma privada en Amazon ECS mediante AWS PrivateLink y un Network Load Balancer](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-privatelink-and-a-network-load-balancer.html?did=pg_card&trk=pg_card).

## Requisitos previos y limitaciones
<a name="access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer-prereqs"></a>

**Requisitos previos **
+ Una cuenta de AWS activa
+ [Interfaz de la línea de comandos de AWS (AWS CLI) versión 2](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html), instalada y configurada en Linux, macOS o Windows
+ [Docker](https://www.docker.com/), instalado y configurado en Linux, macOS o Windows
+ Una aplicación que se ejecuta en Docker

## Arquitectura
<a name="access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer-architecture"></a>

![Se usa PrivateLink para acceder a una aplicación contenedora en Amazon ECS con un tipo de lanzamiento de AWS Fargate.](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/images/pattern-img/31cca5e2-8d8b-45ec-b872-a06b0dd97007/images/57cc9995-45f4-4039-a0bf-2d2b3d6a05de.png)


**Pila de tecnología**
+ Amazon CloudWatch
+ Amazon Elastic Container Registry (Amazon ECR)
+ Amazon ECS
+ Amazon EFS
+ Amazon RDS
+ Amazon Simple Storage Service (Amazon S3)
+ AWS Fargate
+ AWS PrivateLink
+ AWS Secrets Manager
+ Equilibrador de carga de aplicación
+ Equilibrador de carga de red
+ VPC

**Automatización y escala**
+ Puede usar [AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) para crear este patrón mediante [Infrastructure as Code](https://docs.aws.amazon.com/whitepapers/latest/introduction-devops-aws/infrastructure-as-code.html).

## Tools (Herramientas)
<a name="access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer-tools"></a>

**Servicios de AWS**
+ [Amazon Elastic Container Registry (Amazon ECR)](https://docs.aws.amazon.com/AmazonECR/latest/userguide/what-is-ecr.html) es un servicio de registro de imágenes de contenedor de AWS administrado que es seguro, escalable y fiable.
+ [Amazon Elastic Container Service (Amazon ECS)](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html) es un servicio de administración de contenedores altamente escalable y rápido que facilita la tarea de ejecutar, detener y administrar contenedores de Docker en un clúster.
+ [Amazon Elastic File System (Amazon EFS)](https://docs.aws.amazon.com/efs/latest/ug/whatisefs.html) ofrece un sistema de archivos NFS sencillo, escalable, elástico y completamente administrado que se utiliza con servicios de nube de AWS y recursos en las instalaciones.
+ [AWS Fargate](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html)es una tecnología que puede utilizar con Amazon ECS para ejecutar contenedores sin tener que gestionar servidores o clústeres de EC2 instancias de Amazon.
+ [Amazon Relational Database Service (Amazon RDS)](https://docs.aws.amazon.com/rds/index.html) es un servicio web que facilita la configuración, la operación y la escala de una base de datos relacional en Nube de AWS.
+ [Amazon Simple Storage Service (Amazon S3)](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Welcome.html) es un servicio de almacenamiento para Internet. Está diseñado para facilitar a los desarrolladores recursos de computación escalables basados en Web.
+ [AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/) lo ayuda a reemplazar las credenciales codificadas en su código, incluidas contraseñas, con una llamada a la API de Secrets Manager para recuperar el secreto mediante programación.
+ [Amazon Virtual Private Cloud (Amazon VPC)](https://docs.aws.amazon.com/vpc/latest/userguide/what-is-amazon-vpc.html) le permite lanzar recursos de AWS en una red virtual que haya definido.
+ [Elastic Load Balancing (ELB)](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/what-is-load-balancing.html) distribuye el tráfico entrante de aplicaciones o redes entre varios destinos, como EC2 instancias, contenedores y direcciones IP, en varias zonas de disponibilidad.

**Otras herramientas**
+ [Docker](https://www.docker.com/) facilita a los desarrolladores el proceso de empaquetar, enviar y ejecutar cualquier aplicación como un contenedor ligero, portátil y autosuficiente.

## Epics
<a name="access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer-epics"></a>

### Creación de componentes de redes
<a name="create-networking-components"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Cree una VPC. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 

### Crear el equilibrador de carga
<a name="create-the-load-balancers"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Crear un equilibrador de carga de red.  | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html)Para obtener ayuda con esta y otras explicaciones, consulte la sección *Recursos relacionados*. | Administrador de la nube | 
| Cree un Equilibrador de carga de aplicación. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 

### Crear un sistema de archivos de Amazon EFS
<a name="create-an-amazon-efs-file-system"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Crear un sistema de archivos de Amazon EFS. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 
| Defina el montaje de los destinos para las subredes. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 
| Compruebe que las subredes estén montadas como destinos.  | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 

### Creación de un bucket de S3
<a name="create-an-s3-bucket"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Cree un bucket de S3. | Si es necesario, abra la consola de Amazon S3 y [cree un bucket de S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3.html#creating-bucket) para almacenar los activos estáticos de la aplicación. | Administrador de la nube | 

### Crear un secreto en Secrets Manager
<a name="create-a-secrets-manager-secret"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
|  Para cifrar el secreto de Secrets Manager, cree una clave de AWS KMS. | Abra la consola de AWS Key Management Service (AWS KMS) y cree una clave KMS. | Administrador de la nube | 
|  Cree un secreto de Secrets Manager para almacenar la contraseña de Amazon RDS. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 

### Crear una instancia de Amazon RDS
<a name="create-an-amazon-rds-instance"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Creación de un grupo de subredes de base de datos.  | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 
| Cree una instancia de Amazon RDS. | Cree y configure una instancia de Amazon RDS dentro de las subredes privadas. Asegúrese de que **Multi-AZ** esté activado, para una alta disponibilidad (HA). | Administrador de la nube | 
| Cargue los datos en la instancia de Amazon RDS.  | Cargue los datos relacionales que necesita la aplicación en la instancia de Amazon RDS. Este proceso variará según las necesidades de la aplicación y la forma en que se defina y diseñe el esquema de la base de datos. | Administrador de base de datos | 

### Crear los componentes de Amazon ECS
<a name="create-the-amazon-ecs-components"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Cree un clúster de ECS. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 
| Cree las imágenes de Docker. | Cree las imágenes de Docker siguiendo las instrucciones de la [documentación de AWS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/create-container-image.html). | Administrador de la nube | 
| Cree un repositorio de Amazon ECR. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de nube, ingeniero DevOps  | 
| Pase las imágenes de Docker al repositorio de Amazon ECR.  | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 
| Cree una definición de tarea de Amazon ECS.  | Para ejecutar contenedores Docker en Amazon ECS, se requiere una definición de tareas. [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html)Para obtener ayuda sobre la configuración de la definición de la tarea, consulte “Creación de una definición de tarea” en la sección *Recursos relacionados*. Asegúrese de proporcionar las imágenes de Docker que envió a Amazon ECR. | Administrador de la nube | 
| Cree un servicio ECS y seleccione Fargate como tipo de lanzamiento. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 

### Configuración de AWS PrivateLink
<a name="set-up-aws-privatelink"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Configure el PrivateLink punto de conexión de AWS. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/es_es/prescriptive-guidance/latest/patterns/access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer.html) | Administrador de la nube | 

### Crear un punto de conexión de VPC
<a name="create-a-vpc-endpoint"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Cree un punto de conexión de VPC. | [Cree un punto de enlace de VPC para el punto](https://docs.aws.amazon.com/vpc/latest/privatelink/create-interface-endpoint.html) de PrivateLink enlace de AWS que creó anteriormente. El nombre de dominio completo (FQDN) del punto final de la VPC apuntará al FQDN del punto final de AWS PrivateLink . Esto crea una interfaz de red elástica para el servicio de punto de conexión de VPC a la que pueden acceder los puntos de conexión del servicio de nombres de dominio. | Administrador de la nube | 

### Establecimiento del destino
<a name="set-the-target"></a>


| Tarea | Descripción | Habilidades requeridas | 
| --- | --- | --- | 
| Agregue el equilibrador de carga de aplicación como destino. | Para agregar el equilibrador de carga de aplicación como destino para el equilibrador de carga de red, siga las instrucciones de la [documentación de AWS](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/application-load-balancer-target.html). | Desarrollador de aplicaciones | 

## Recursos relacionados
<a name="access-container-applications-privately-on-amazon-ecs-by-using-aws-fargate-aws-privatelink-and-a-network-load-balancer-resources"></a>

**Crear los equilibradores de carga:**
+ [Utilice un Network Load Balancer para Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/nlb.html)
+ [Crear un equilibrador de carga de red](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-network-load-balancer.html)
+ [Utilice un balanceador de carga de aplicaciones para Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/alb.html)
+ [Creación de un equilibrador de carga de aplicación](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-application-load-balancer.html)

**Crear un sistema de archivos de Amazon EFS:**
+ [Crear un sistema de archivos de Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/creating-using-create-fs.html)
+ [Crear destinos de montaje en Amazon EFS](https://docs.aws.amazon.com/efs/latest/ug/accessing-fs.html)

**Crear un secreto en Secrets Manager:**
+ [Crear claves en AWS KMS](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)
+ [Crear un secreto en AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html)

**Crear una instancia de Amazon RDS:**
+ [Crear una instancia de base de datos de Amazon RDS](https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_CreateDBInstance.html)

**Crear los componentes de Amazon ECS**
+ [Crear un repositorio de Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/repository-create.html)
+ [Autenticar Docker con el repositorio de Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/Registries.html#registry_auth)
+ [Pasar una imagen a un repositorio de Amazon ECR](https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-push-ecr-image.html)
+ [Crear una definición de tarea de Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definitions.html)
+ [Creación de un servicio de Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/create-service-console-v2.html)

**Otros recursos:**
+ [Acceso seguro a los servicios a través de AWS PrivateLink](https://d1.awsstatic.com/whitepapers/aws-privatelink.pdf)