View a markdown version of this page

HealthOmics Workflows mit einer VPC verbinden - AWS HealthOmics

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

HealthOmics Workflows mit einer VPC verbinden

Mit Amazon Virtual Private Cloud (Amazon VPC) können Sie AWS Ressourcen in einem privaten, virtuellen Netzwerk starten, das Sie definiert haben. Sie können Ihren HealthOmics Workflows Zugriff auf Ressourcen in Ihrer VPC gewähren, indem Sie Ihre Läufe so konfigurieren, dass sie den VPC-Netzwerkmodus verwenden. Wenn das VPC-Netzwerk aktiviert ist, können Ihre Läufe auf Ressourcen in Ihrer VPC zugreifen und über das öffentliche Internet eine Verbindung zu externen Ressourcen herstellen, sofern für Ihre VPC der Internetzugang konfiguriert ist.

Anmerkung

Jeder HealthOmics Workflow-Lauf wird in einer VPC ausgeführt, die dem Dienst gehört und von diesem verwaltet wird. HealthOmics Diese VPCs werden automatisch verwaltet und sind für Kunden nicht sichtbar. Die Konfiguration Ihres Laufs für den Zugriff auf Ressourcen in Ihrer Amazon VPC hat keine Auswirkungen auf die HealthOmics-managed VPC.

Wann sollte das VPC-Netzwerk verwendet werden

Verwenden Sie VPC-Netzwerke, wenn Ihre Läufe Folgendes benötigen:

  • Greifen Sie über das Internet auf öffentlich verfügbare Datensätze zu (z. B. NIH-Datensätze, akademische Repositorien)

  • Stellen Sie eine Verbindung zu Lizenzservern oder externen APIs von Drittanbietern her

  • Lesen oder schreiben Sie Daten aus Amazon S3-Buckets in anderen Regionen AWS

  • Greifen Sie auf lokale Ressourcen in Ihrem privaten Netzwerk zu

  • Stellen Sie innerhalb Ihrer VPC eine Verbindung zu AWS-Ressourcen her

Anmerkung

Wenn Sie einen Lauf mit einer VPC verbinden, kann er nur auf Ressourcen zugreifen, die in dieser VPC verfügbar sind. Um deinem Lauf Zugriff auf das Internet zu gewähren, musst du deine VPC auch für den Internetzugang konfigurieren. Weitere Informationen finden Sie unter Internetzugang für VPC-connected Workflows.

Netzwerkmodi

HealthOmics Workflows unterstützt zwei Netzwerkmodi. Standardmäßig werden Workflow-Ausführungen im RESTRICTED-Modus ausgeführt. Sie können das VPC-Netzwerk pro Lauf aktivieren, wenn Sie die Workflow-Ausführung starten.

EINGESCHRÄNKT (Standard)

Läufe können nur auf Amazon S3- und Amazon ECR-Ressourcen innerhalb derselben AWS Region zugreifen. Runs kann nicht auf andere AWS Dienste, AWS regionsübergreifende Ressourcen oder das öffentliche Internet zugreifen.

VPC

Der Laufverkehr wird über Elastic Network Interfaces (ENIs) geleitet, die HealthOmics in Ihren VPC-Subnetzen bereitgestellt werden. Sie steuern das Netzwerk-Routing, die Sicherheitsgruppen, Netzwerk-ACLs und den Internetzugang über NAT-Gateways. Dieser Modus ermöglicht den Zugriff auf:

  • Öffentliche Internetressourcen (erfordert eine NAT-Gateway-Konfiguration)

  • AWS Dienste in anderen Regionen

  • Private Ressourcen in Ihrer VPC

  • Greifen Sie auf lokale Ressourcen in Ihrem privaten Netzwerk zu

Sie geben den Netzwerkmodus an, wenn Sie eine Workflow-Ausführung mithilfe des networkingMode Parameters in der StartRun API starten.

Erste Schritte

In diesem Abschnitt erfahren Sie, wie Sie das VPC-Netzwerk für HealthOmics Workflows zum ersten Mal einrichten.

Voraussetzungen

Bevor Sie das VPC-Netzwerk für HealthOmics Workflows konfigurieren, stellen Sie sicher, dass Sie über Folgendes verfügen:

  • Eine vorhandene VPC mit geeigneten Subnetzen und Sicherheitsgruppen. Die VPC muss sich in derselben Region wie Ihre Workflows befinden.

  • Mindestens ein Subnetz in einer Availability Zone, das in Ihrer HealthOmics Region betrieben wird.

  • Entsprechende IAM-Berechtigungen zum Erstellen und Verwalten von HealthOmics Konfigurationen.

  • Verständnis der VPC-Netzwerkkonzepte (Subnetze, Sicherheitsgruppen, Routing-Tabellen).

  • Ausreichende ENI-Kapazität in Ihrem Konto AWS . HealthOmics skaliert und verwaltet ENIs in Ihrer VPC mithilfe der serviceverknüpften Rolle. Die Anzahl der erforderlichen ENIs hängt von Ihrer Arbeitslast ab. Überwachen Sie Ihre ENI-Nutzung in der Amazon EC2-Konsole, um sicherzustellen, dass Sie über ausreichende Kapazitäten verfügen.

Wichtig

Ihre VPC-Konfiguration muss mindestens ein Subnetz in einer Availability Zone enthalten, die in Ihrer Region HealthOmics betrieben wird, um die Platzierung von Workflow-Aufgaben zu unterstützen. Wenn Sie den VPC-Netzwerkmodus verwenden, sind Sie dafür verantwortlich, festzustellen, ob die Übertragung oder Nutzung von Daten zwischen Regionen sicher und konform ist. AWS

Schritt 1: Erstellen oder konfigurieren Sie Ihre VPC

Erstellen Sie eine VPC mit privaten Subnetzen, Sicherheitsgruppen und NAT-Gateways (falls Internetzugang erforderlich ist). Eine ausführliche schrittweise Anleitung finden Sie unter. Internetzugang für VPC-connected Workflows

Schritt 2: Sicherheitsgruppen konfigurieren

Erstellen Sie eine Sicherheitsgruppe, die ausgehenden Datenverkehr zu den Zielen ermöglicht, auf die Ihre Läufe zugreifen müssen. Konfigurieren Sie Sicherheitsgruppen so, dass nach dem Prinzip der geringsten Zugriffsrechte nur der minimal erforderliche ausgehende Datenverkehr zugelassen wird.

Beispielkonfigurationen und ausführliche Anleitungen finden Sie im Internetzugang für VPC-connected Workflows Abschnitt zur Sicherheitsgruppe unter.

Schritt 3: Routentabellen verifizieren

Stellen Sie sicher, dass Ihre privaten Subnetze über Routen zu einem NAT-Gateway für den Internetzugang verfügen. Beispiele für Routing-Tabellen-Konfigurationen finden Sie im Internetzugang für VPC-connected Workflows Abschnitt zur Routing-Tabelle unter.

Anmerkung

Wenn ein Lauf mit einem öffentlichen Subnetz verbunden wird, erhält er weder Internetzugang noch eine öffentliche IP-Adresse. Verwenden Sie immer private Subnetze mit NAT-Gateway-Routen für Läufe, die eine Internetverbindung erfordern.

Schritt 4: Erstellen Sie eine Konfigurationsressource

Erstellen Sie eine HealthOmics Konfigurationsressource, die Ihre VPC-Netzwerkeinstellungen definiert:

aws omics create-configuration \ --name my-vpc-config \ --description "VPC configuration for genomics workflows" \ --run-configurations '{ "vpcConfig": { "securityGroupIds": ["sg-0123456789abcdef0"], "subnetIds": [ "subnet-0a1b2c3d4e5f6g7h8", "subnet-1a2b3c4d5e6f7g8h9" ] } }' \ --region us-west-2

Sobald die Netzwerkressourcen bereitgestellt sindCREATING, geht die Konfiguration vom ACTIVE Status auf den Status über. Dies dauert bis zu 15 Minuten.

Schritt 5: Starten Sie einen Workflow, der mit VPC-Netzwerken ausgeführt wird

Sobald Ihre Konfiguration abgeschlossen istACTIVE, starten Sie einen Workflow-Lauf mit aktiviertem VPC-Netzwerk:

aws omics start-run \ --workflow-id 1234567 \ --role-arn arn:aws:iam::123456789012:role/OmicsWorkflowRole \ --output-uri s3://my-bucket/outputs/ \ --networking-mode VPC \ --configuration-name my-vpc-config \ --region us-west-2

Schritt 6: Überprüfen Sie die Konnektivität

Überwachen Sie Ihren Workflow-Lauf, um sicherzustellen, dass er auf die erforderlichen externen Ressourcen zugreifen kann. Überprüfen Sie die Workflow-Protokolle in den CloudWatch Protokollen auf Erfolgs- oder Fehlermeldungen der Verbindung. Eine ausführliche Anleitung zum Testen der Konnektivität finden Sie unterTesten der VPC-Konnektivität.

VPC-Anforderungen

Ihre VPC muss die folgenden Anforderungen erfüllen:

Anforderungen an das Subnetz

  • Minimum: Mindestens ein Subnetz in einer Availability Zone, in der es funktioniert HealthOmics

  • Maximum: 16 Subnetze pro Konfiguration

  • Einschränkung: Maximal ein Subnetz pro Availability Zone

  • Empfehlung: Verwenden Sie private Subnetze mit NAT-Gateway-Routen für Läufe, die einen Internetzugang erfordern. Sie können zwar ein einzelnes Subnetz angeben, wir empfehlen jedoch, für eine bessere Verfügbarkeit mehrere Subnetze in verschiedenen Availability Zones zu verwenden.

Anforderungen an Sicherheitsgruppen

  • Mindestens: 1 Sicherheitsgruppe

  • Maximum: 5 Sicherheitsgruppen pro Konfiguration

  • Anforderung: Alle Sicherheitsgruppen müssen derselben VPC angehören wie die Subnetze

Sicherheitsgruppen kontrollieren den eingehenden und ausgehenden Verkehr für Ihre Läufe.

Anmerkung

Alle Subnetze und Sicherheitsgruppen müssen derselben VPC angehören.

Anforderungen an die Netzwerkschnittstelle

HealthOmics stellt elastische Netzwerkschnittstellen (ENIs) in Ihrer VPC bereit, um Läufe mit Ihrem Netzwerk zu verbinden. Stellen Sie sicher, dass Ihr AWS Konto über ausreichende ENI-Kapazität verfügt (Standardlimit: 5.000 ENIs pro Region).

ENIs, die von erstellt wurden, HealthOmics sind mit den folgenden Tags gekennzeichnet:

"TagSet": [ { "Key": "Service", "Value": "HealthOmics" }, { "Key": "eniType", "Value": "CUSTOMER" } ]
Wichtig

Ändern oder löschen Sie keine ENIs, die von erstellt wurden. HealthOmics Das Ändern dieser Netzwerkschnittstellen kann zu Serviceverzögerungen oder Unterbrechungen Ihrer Workflow-Ausführungen führen.

Konfigurations-APIs

HealthOmics bietet APIs zum Erstellen, Verwalten und Löschen von VPC-Konfigurationen. Sie können Konfigurationen für mehrere Workflow-Läufe wiederverwenden.

CreateConfiguration

Erstellt eine neue Konfigurationsressource mit VPC-Netzwerkeinstellungen. Ein Schritt-für-Schritt-Beispiel finden Sie unter Schritt 4: Erstellen Sie eine Konfigurationsressource.

Anforderungssyntax:

aws omics create-configuration \ --name configuration-name \ --description description \ --run-configurations '{"vpcConfig":{"securityGroupIds":["security-group-id"],"subnetIds":["subnet-id"]}}' \ --tags Key=key,Value=value \ --region region

Parameter:

  • Name (erforderlich) — Ein eindeutiger Name für die Konfiguration (maximal 50 Zeichen).

  • Beschreibung (optional) — Eine Beschreibung der Konfiguration.

  • run-configurations (optional) — VPC-Konfigurationseinstellungen:

    • vpcConfig.securityGroupIds— Eine Liste von 1—5 Sicherheitsgruppen-IDs.

    • vpcConfig.subnetIds— Eine Liste von 1—16 Subnetz-IDs.

  • tags (optional) — Ressourcen-Tags.

Antwort:

{ "arn": "arn:aws:omics:region:account-id:configuration/configuration-name", "uuid": "configuration-uuid", "name": "configuration-name", "runConfigurations": { "vpcConfig": { "securityGroupIds": ["security-group-id"], "subnetIds": ["subnet-id"], "vpcId": "vpc-id" } }, "status": "CREATING", "creationTime": "timestamp", "tags": {} }

Werte für den Konfigurationsstatus:

  • ERSTELLEN — Die Konfiguration wird erstellt und Netzwerkressourcen werden bereitgestellt (bis zu 15 Minuten).

  • AKTIV — Die Konfiguration ist einsatzbereit.

  • LÖSCHEN — Die Konfiguration wird gelöscht.

  • GELÖSCHT — Die Konfiguration wurde gelöscht.

GetConfiguration

Ruft Details einer bestimmten Konfiguration ab.

Anforderungssyntax:

aws omics get-configuration \ --name configuration-name \ --region region

Antwort:

{ "arn": "arn:aws:omics:region:account-id:configuration/configuration-name", "uuid": "configuration-uuid", "name": "configuration-name", "runConfigurations": { "vpcConfig": { "securityGroupIds": ["security-group-id"], "subnetIds": ["subnet-id"], "vpcId": "vpc-id" } }, "status": "ACTIVE", "creationTime": "timestamp", "tags": {} }

ListConfigurations

Listet alle Konfigurationen in Ihrem Konto auf.

Anforderungssyntax:

aws omics list-configurations \ --region region

Antwort:

{ "items": [ { "arn": "arn:aws:omics:region:account-id:configuration/configuration-name", "name": "configuration-name", "description": "description", "status": "ACTIVE", "creationTime": "timestamp" } ] }

DeleteConfiguration

Löscht eine Konfiguration. Sie können keine Konfiguration löschen, die derzeit von aktiven Workflow-Ausführungen verwendet wird.

Anforderungssyntax:

aws omics delete-configuration \ --name configuration-name \ --region region
Anmerkung

Der Konfigurationsstatus ändert sich in LÖSCHEN, während die Netzwerkressourcen bereinigt werden, und dann in GELÖSCHT, sobald der Vorgang abgeschlossen ist.

Ausführen von Workflows mit VPC-Netzwerken

Einen Lauf mit VPC-Netzwerk starten

Um das VPC-Netzwerk in einer Workflow-Ausführung zu verwenden, geben Sie den networking-mode Parameter an und: configuration-name

aws omics start-run \ --workflow-id 1234567 \ --role-arn arn:aws:iam::123456789012:role/OmicsWorkflowRole \ --output-uri s3://my-bucket/outputs/ \ --networking-mode VPC \ --configuration-name my-vpc-config \ --region us-west-2

Parameter:

  • Netzwerkmodus — Auf setzen, um das VPC-Netzwerk VPC zu aktivieren. Der Standardwert ist RESTRICTED.

  • Konfigurationsname (erforderlich) — Der Name der zu verwendenden Konfiguration.

Die ausgeführte Netzwerkkonfiguration anzeigen

Verwenden SieGetRun, um die Netzwerkkonfiguration für einen Lauf anzuzeigen:

aws omics get-run \ --id run-id \ --region region

Die Antwort umfasst den Netzwerkmodus, Konfigurationsdetails und die VPC-Konfiguration. Das folgende Beispiel zeigt die VPC-related Felder aus der Antwort:

{ "arn": "arn:aws:omics:region:account-id:run/run-id", "id": "run-id", "status": "status", "workflowId": "workflow-id", "networkingMode": "VPC", "configuration": { "name": "configuration-name", "arn": "arn:aws:omics:region:account-id:configuration/configuration-name", "uuid": "configuration-uuid" }, "vpcConfig": { "subnets": ["subnet-id-1", "subnet-id-2"], "securityGroupIds": ["security-group-id"], "vpcId": "vpc-id" } }

Unveränderlichkeit der Konfiguration

Die Konfigurationsressourcen sind unveränderlich — nachdem Sie eine Konfiguration erstellt haben, können Sie ihre Einstellungen nicht mehr ändern. Um andere Netzwerkeinstellungen zu verwenden, erstellen Sie eine neue Konfiguration. Sie können eine Konfiguration nicht löschen, solange sie von aktiven Workflowläufen verwendet wird. Die DeleteConfiguration Anforderung wird zurückgewiesen, bis diese Ausführungen den Endzustand erreichen.

Überlegungen zum Caching von Aufrufen

Wenn Sie VPC-Netzwerke mit Call-Caching verwenden, stellen Sie sicher, dass Ihre Workflow-Engine entsprechend konfiguriert ist. Eine ausführliche Anleitung zum Caching von Anrufen pro Engine finden Sie unter. Engine-specific Caching-Funktionen

Wichtig

Wenn Sie eine Verbindung zu nicht deterministischen oder dynamischen Ressourcen herstellen (z. B. Datenbanken von Drittanbietern im öffentlichen Internet), sollten Sie in Ihren Workflows die Abmeldefunktion für Cache-Aufgaben verwenden, um zu vermeiden, dass dynamische Datensätze zwischengespeichert werden, die sich auf die Laufausgaben auswirken könnten.

Bewährte Methoden

Sicherheit

  1. Verwenden Sie Sicherheitsgruppen mit den geringsten Rechten. Erlauben Sie nur den minimal erforderlichen ausgehenden Verkehr. Verwenden Sie bestimmte CIDR-Zielblöcke anstelle von 0.0.0. 0/0 wenn möglich. Dokumentieren Sie den Zweck jeder Sicherheitsgruppenregel.

  2. Trennen Sie die Konfigurationen nach Umgebung. Erstellen Sie separate Konfigurationen für Entwicklung, Staging und Produktion. Verwenden Sie für jede Umgebung unterschiedliche VPCs oder Subnetze. Wenden Sie die entsprechenden Tags auf die Konfigurationen für die Organisation an.

  3. Implementieren Sie die Netzwerküberwachung. Aktivieren Sie VPC Flow Logs für die Sicherheitsanalyse. Richten Sie CloudWatch Alarme für ungewöhnliche Verkehrsmuster ein. Überprüfen Sie die CloudTrail Protokolle regelmäßig auf Konfigurationsänderungen.

  4. Verwenden Sie VPC-Endpunkte für AWS Dienste. Konfigurieren Sie VPC-Endpunkte für Amazon S3, Amazon ECR und andere Dienste. AWS Dies reduziert die NAT-Gateway-Kosten, verbessert die Leistung und bietet zusätzliche Sicherheit, indem der Datenverkehr innerhalb des Netzwerks gehalten wird. AWS

Leistung

  1. Planen Sie die Netzwerkskalierung ein. Der Netzwerkdurchsatz beginnt bei 10 Gbit/s und wird im Laufe der Zeit auf 100 Gbit/s skaliert. Wenn Sie sofort einen hohen Durchsatz benötigen, planen Sie im Voraus und fordern Sie eine Vorwärmung an. Überwachen Sie Netzwerkkennzahlen, um Ihre Workflow-Anforderungen zu verstehen.

  2. Stellen Sie NAT-Gateways pro Availability Zone bereit. Verwenden Sie ein NAT-Gateway pro AZ für Produktionsworkloads. Dies verbessert die Stabilität und den Durchsatz und reduziert die Kosten für die AZ-übergreifende Datenübertragung.

  3. Konfigurationen wiederverwenden. Erstellen Sie Konfigurationen, die in mehreren Workflows gemeinsam genutzt werden können. Dies reduziert den Aufwand für das Konfigurationsmanagement und gewährleistet konsistente Netzwerkeinstellungen.

  4. Testen Sie die Konfigurationen vor dem Produktionseinsatz. Validieren Sie die Netzwerkkonnektivität mit Test-Workflows. Stellen Sie sicher, dass die Regeln der Sicherheitsgruppe den erforderlichen Datenverkehr zulassen. Testen Sie Failover-Szenarien mit Multi-AZ-Konfigurationen.

Kostenoptimierung

  1. Verwenden Sie VPC-Endpunkte anstelle von NAT Gateway. Verwenden Sie für den AWS Servicezugriff VPC-Endpunkte (keine Datenverarbeitungsgebühren). Für Amazon S3 Gateway-Endpunkte fallen keine zusätzlichen Kosten an. Für Schnittstellenendpunkte fallen stündliche Gebühren an, können aber kostengünstiger sein als NAT Gateway.

  2. Überwachen Sie die Kosten für die Datenübertragung. Die Datenübertragung ist kostenlos. Für die ausgehende Datenübertragung ins Internet fallen AWS Standarddatenübertragungsraten an. Cross-Region Die Datenübertragung hat höhere Raten. Verwenden Sie den AWS Cost Explorer, um die VPC-related Kosten zu verfolgen.

  3. Right-size Bereitstellung von NAT Gateway. Verwenden Sie für die Entwicklung ein NAT-Gateway für alle AZs. Verwenden Sie für die Produktion ein NAT-Gateway pro AZ, um die Stabilität zu gewährleisten. Überwachen Sie die NAT-Gateway-Nutzung, um eine Überversorgung zu vermeiden.

  4. Löschen Sie nicht verwendete Konfigurationen. Überprüfen und löschen Sie regelmäßig Konfigurationen, die nicht mehr verwendet werden. Verwenden Sie Stichwörter, um die Eigentümerschaft und den Zweck der Konfiguration zu identifizieren.

Betriebsbereit

  1. Verwenden Sie beschreibende Konfigurationsnamen. Fügen Sie Umgebung, Zweck und Team in den Namen ein (z. B.prod-genomics-vpc,dev-clinical-trials-vpc).

  2. Kennzeichnen Sie alle Konfigurationen. Verwenden Sie eine konsistente Tagging-Strategie für alle Ressourcen. Fügen Sie Stichwörter für Umgebung CostCenter, Eigentümer und Zweck hinzu.

  3. Dokumentieren Sie die Netzwerkanforderungen. Dokumentieren Sie, auf welche externen Dienste jede Konfiguration zugreift. Pflegen Sie eine Übersicht der Sicherheitsgruppenregeln und ihrer Zwecke. Teilen Sie Diagramme der Netzwerkarchitektur mit Ihrem Team.

Kontingente für VPC-Netzwerke

In der folgenden Tabelle sind die Kontingente für VPC-Netzwerkkonfigurationen aufgeführt:

Ressource Standardlimit Einstellbar
Maximale Konfigurationen pro Konto 10 Ja
Maximale Sicherheitsgruppen pro Konfiguration 5 Nein
Maximale Anzahl Subnetze pro Konfiguration 16 Nein
Maximale Subnetze pro Availability Zone 1 Nein
CreateConfiguration API-TPS 1 Ja
Elastische Netzwerkschnittstellen pro Region (Kunden-VPC) 5,000 Ja

Um eine Kontingenterhöhung anzufordern, öffnen Sie die Service-Kontingente-Konsole, wählen Sie AWS Dienste aus, suchen Sie nach dem Kontingent, das Sie erhöhen möchten AWS HealthOmics, wählen Sie das Kontingent aus, das Sie erhöhen möchten, und wählen Sie Kontingenterhöhung anfordern aus. Anfragen zur Erhöhung des Kontingents werden in der Regel innerhalb von 1—2 Werktagen bearbeitet.