View a markdown version of this page

Acceso a Internet para flujos de trabajo conectados a VPC - AWS HealthOmics

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.

Acceso a Internet para flujos de trabajo conectados a VPC

Al conectar una AWS HealthOmics ejecución a una VPC, la ejecución solo puede acceder a los recursos disponibles en esa VPC. Para permitir que su ejecución acceda a la Internet pública o a AWS los servicios externos a la VPC, debe configurar la VPC con los recursos de red adecuados.

En este tema se describe cómo configurar la VPC para proporcionar acceso a Internet y una conectividad eficiente a los AWS servicios para las ejecuciones conectadas a la VPC. Para obtener información sobre la conexión de ejecuciones a una VPC, consulte. Conexión de HealthOmics flujos de trabajo a una VPC

importante

La conexión de una ejecución a una subred pública no le proporciona acceso a Internet ni una dirección IP pública. Utilice siempre subredes privadas con rutas de puerta de enlace NAT para las carreras que requieran conectividad a Internet.

Configuración de una VPC con acceso a Internet

Para permitir que sus corredores conectados a la VPC tengan acceso a Internet, cree una VPC con subredes privadas que dirijan el tráfico saliente a través de una puerta de enlace NAT.

Esta configuración proporciona:

  • Subredes privadas para tareas de HealthOmics flujo de trabajo

  • Subredes públicas con puertas de enlace NAT para el acceso saliente a Internet

Regiones y zonas de disponibilidad admitidas

HealthOmics Los flujos de trabajo funcionan en las siguientes regiones y zonas de disponibilidad. Al crear la VPC, asegúrese de que las subredes estén en una o más de estas zonas de disponibilidad.

Region Nombre de la zona de disponibilidad ID de zona de disponibilidad
us-west-2 us-west-2a usw2-az2
us-west-2b usw2-az1
us-west-2c usw2-az3
us-east-1 us-east-1a use1-az4
us-east-1b use1-az6
us-east-1c use1-az1
us-east-1d use1-az2
eu-west-1 eu-west-1a euw1-az2
eu-west-1b euw1-az3
eu-west-1c euw1-az1
eu-central-1 eu-central-1a euc1-az2
eu-central-1b euc1-az3
eu-central-1c euc1-az1
eu-west-2 eu-west-2a euw2-az2
eu-west-2b euw2-az3
eu-west-2c euw2-az1
ap-southeast-1 ap-southeast-1a apse1-az2
ap-southeast-1b apse1-az1
ap-southeast-1c apse1-az3
il-central-1 il-central-1a ilc1-az1
il-central-1b ilc1-az2
il-central-1c ilc1-az3
ap-northeast-2 ap-northeast-2a apne2-az1
ap-northeast-2b apne2-az2
ap-northeast-2c apne2-az3
  1. En la consola de Amazon VPC, elija Create VPC.

  2. Seleccione VPC y más para crear automáticamente una VPC con subredes públicas y privadas.

  3. Configure los siguientes ajustes:

    • Número de zonas de disponibilidad: 2 o más

    • Número de subredes públicas: una por zona de disponibilidad. En este ejemplo, 2

    • Número de subredes privadas: una por zona de disponibilidad. En este ejemplo, 2

    • Puertas de enlace NAT: 1 por zona de disponibilidad (para producción) o 1 (para desarrollo o pruebas)

    • Puntos de enlace de VPC: punto de enlace de S3 Gateway (opcional: el tráfico de Amazon S3 en la región se enruta a través de la VPC del HealthOmics servicio de forma predeterminada)

Al crear la configuración de HealthOmics VPC, especifique las subredes privadas. Las ejecuciones utilizan la puerta de enlace NAT de la subred pública para acceder a Internet.

Terminales de VPC para servicios AWS

Puede configurar los puntos de enlace de la VPC para permitir que las ejecuciones accedan a AWS los servicios sin atravesar la Internet pública. Esto mejora la seguridad y puede reducir los costes de transferencia de datos.

nota

El tráfico de Amazon S3 dentro de la región se enruta a través de la HealthOmics VPC del servicio de forma predeterminada. Si configura los puntos de enlace de la interfaz Amazon S3, el tráfico se enruta a través de su VPC. Recomendamos utilizar los puntos de enlace de Amazon S3 para optimizar el rendimiento y los costes. Para obtener más información, consulte los puntos de enlace de puerta de enlace para Amazon S3 en la AWS PrivateLink guía.

En la siguiente tabla, se enumeran los puntos finales de VPC que se utilizan con más frecuencia para las ejecuciones: HealthOmics

Servicio Tipo de punto de conexión Endpoint name (Nombre del punto de conexión)
Amazon S3 Puerta de enlace com.amazonaws. region.s3
Amazon ECR (API) Interfaz com.amazonaws. region.ecr.api
Amazon ECR (Docker) Interfaz com.amazonaws. region.ecr.dkr
SSM Interfaz com.amazonaws. region.ssm
CloudWatch Registros Interfaz com.amazonaws. region.logs

Requisitos de NAT Gateway

Para carreras que requieren acceso público a Internet:

  • La puerta de enlace NAT debe implementarse en una subred pública

  • La subred pública debe tener una ruta a un Internet Gateway

  • Las subredes privadas (donde se ejecutan las ejecuciones) deben tener rutas a la puerta de enlace NAT

nota

Las pasarelas NAT incurren en cargos por hora y por procesamiento de datos. Para optimizar los costos, considere usar puntos finales de VPC para el acceso al AWS servicio en lugar de enrutarlo a través de NAT Gateway.

Configuración del grupo de seguridad

Configure sus grupos de seguridad para permitir que el tráfico saliente llegue a los destinos a los que deben acceder sus carreras:

  • Acceso público a Internet: permita el tráfico HTTPS saliente (puerto 443). Agregue reglas para otros protocolos según sea necesario, como HTTP (puerto 80).

  • Servicios específicos: configure las reglas en función de sus requisitos.

  • Recursos locales: permita que el tráfico llegue a sus rangos de VPN o CIDR.

El siguiente ejemplo muestra una regla de grupo de seguridad para el acceso público a Internet:

Tipo Protocolo Rango de puerto Destino Description (Descripción)
HTTPS TCP 443 0.0.0.0/0 Permitir el acceso a Internet por HTTPS

Configuración de la tabla de rutas

Asegúrese de que sus subredes privadas tengan entradas en la tabla de enrutamiento que dirijan el tráfico con destino a Internet a una puerta de enlace NAT:

Destino Objetivo
10.0.0.0/16 local
0.0.0.0/0 nat-xxxxxxxxx

Para acceder a los recursos locales, configure las rutas a una puerta de enlace o puerta de enlace privada virtual.

Prueba de conectividad de VPC

Antes de ejecutar los flujos de trabajo de producción, compruebe que la configuración de la VPC permita la conectividad con los servicios externos necesarios.

Cree un flujo de trabajo de prueba

Cree un flujo de trabajo sencillo que pruebe la conectividad con su servicio externo. Por ejemplo, cree un flujo de trabajo que intente establecer una conexión TCP a un punto final del servicio de destino.

Ejecute la prueba

aws omics start-run \ --workflow-id test-workflow-id \ --role-arn role-arn \ --output-uri s3://bucket-name/test-outputs/ \ --networking-mode VPC \ --configuration-name configuration-name \ --parameters file://test-parameters.json

Verificar los resultados

Compruebe el resultado del flujo de trabajo para confirmar que la conectividad se ha realizado correctamente:

{ "connectivity_test.result": "Testing connection to external service...\nSUCCESS: Connection successful!\nTest completed" }

Si la prueba no es satisfactoria, compruebe lo siguiente:

  • Las reglas del grupo de seguridad permiten el tráfico saliente a los puertos y destinos requeridos.

  • Las tablas de enrutamiento dirigen el tráfico a una puerta de enlace NAT para el acceso a Internet.

  • Se puede acceder al servicio externo desde su red.

  • ENIs Hay suficientes disponibles en su cuenta.

  • La puerta de enlace NAT se encuentra en una subred pública con una ruta a una puerta de enlace de Internet.

nota

El rendimiento de la red comienza en 10 Gbps por ENI y se amplía hasta 100 Gbps en un período de 60 minutos con tráfico continuo. Para flujos de trabajo con requisitos inmediatos de alto rendimiento, póngase en contacto con Support AWS .

Ejemplos

Acceso a los datos del NCBI con autenticación mediante API

En este ejemplo se muestra cómo acceder a los datos del NCBI mediante la API de conjuntos de datos del NCBI con autenticación.

Mejores prácticas para acceder a los recursos del NCBI

Los clientes deben usar la API REST siempre que sea posible y utilizar una clave de API proporcionada por el NCBI. Las solicitudes de acceso a los recursos del NCBI, como las solicitudes HTTP y FTP de datos públicos, procederán de terceros HealthOmics y se limitarán según la tarifa de terceros establecida por el NCBI. Es posible que se produzcan errores de ejecución debido a errores de aceleración durante los picos de uso. Recomendamos a los usuarios que obtengan su propia clave de API del NCBI y que la utilicen de forma especializada APIs para permitir una mayor simultaneidad y una mejor experiencia de desarrollo.

Para obtener su clave de API de NCBI, consulte la documentación sobre las claves de API de NCBI.

Ejemplo de definición de flujo de trabajo:

version 1.0 #WORKFLOW DEFINITION # Meant to be used as integration test for public internet access via VPC tunnel workflow TestFlow { input { String ncbi_api_url = "https://api.ncbi.nlm.nih.gov/datasets/v2/gene/accession/NM_021803.4?api_key=<YOUR_API_KEY>" } call DataProcessTask{ input: ncbi_api_url = ncbi_api_url, } output { File output_file = DataProcessTask.output_file } } #Task Definitions task DataProcessTask { input { String ncbi_api_url } command <<< set -eu # Download file from NCBI Datasets API with API key curl -fsSL "~{ncbi_api_url}" -o gene_data.json # Add data processing task here cat gene_data.json > processed_data.json # Echo the content to output file cat processed_data.json > outfile.txt >>> output { File output_file = "outfile.txt" } }

Puntos clave:

  • <YOUR_API_KEY>Sustitúyala por tu clave API NCBI actual

  • El flujo de trabajo utiliza HTTPS para acceder a la API de conjuntos de datos del NCBI

  • La clave de API se pasa como parámetro de URL

  • Este enfoque proporciona límites de velocidad más altos (10 solicitudes por segundo) en comparación con el acceso no autenticado (5 solicitudes por segundo)

Para obtener más información sobre las claves de la API y los límites de velocidad del NCBI, consulte la documentación de la API de conjuntos de datos del NCBI.

Prácticas recomendadas

  1. Utilice puntos finales de VPC para los servicios. AWS Configure los puntos de enlace de VPC para Amazon S3, Amazon ECR y otros AWS servicios a fin de reducir los costes de las puertas de enlace NAT y mejorar el rendimiento. Para obtener más información, consulte Terminales de VPC para servicios AWS.

  2. Supervise los costos de la red. Las redes de VPC generan costos por las puertas de enlace NAT, la transferencia de datos y. ENIs Supervise su consumo con AWS Cost Explorer.

  3. Planifique las zonas de disponibilidad. Asegúrese de que sus subredes abarquen las zonas de disponibilidad en las que HealthOmics opera para respaldar la ubicación del flujo de trabajo.

  4. Utilice puertas de enlace NAT en cada zona de disponibilidad. Para las cargas de trabajo de producción, implemente una puerta de enlace NAT en cada zona de disponibilidad para proporcionar redundancia.