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 von Ihnen definierten privaten, virtuellen Netzwerk starten. 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 innerhalb 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 Service 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 -verwaltete VPC.

Wann sollten VPC-Netzwerke verwendet werden

Verwenden Sie VPC-Netzwerke, wenn Ihre Läufe:

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

  • Connect zu Lizenzservern von Drittanbietern oder externen Servern her APIs

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

  • Greifen Sie auf lokale Ressourcen in Ihrem privaten Netzwerk zu

  • Connect zu AWS-Ressourcen in Ihrer VPC her

Anmerkung

Wenn Sie einen Lauf mit einer VPC verbinden, kann er nur auf Ressourcen zugreifen, die in dieser VPC verfügbar sind. Um Ihrem Run Zugriff auf das Internet zu gewähren, müssen Sie Ihre VPC auch für den Internetzugang konfigurieren. Weitere Informationen finden Sie unter Internetzugang für VPC-verbundene Workflows.

Netzwerkmodi

HealthOmics Workflows unterstützt zwei Netzwerkmodi. Standardmäßig werden Workflow-Läufe im EINGESCHRÄNKTEN Modus ausgeführt. Sie können VPC-Netzwerke pro Lauf aktivieren, wenn Sie die Workflow-Ausführung starten.

EINGESCHRÄNKT (Standard)

Runs können nur auf Amazon S3- und Amazon ECR-Ressourcen innerhalb derselben AWS Region zugreifen. Runs können nicht auf andere AWS Dienste, Ressourcen in verschiedenen AWS Regionen oder das öffentliche Internet zugreifen.

VPC

Der Ausführungsdatenverkehr wird über elastische Netzwerkschnittstellen (ENIs) geleitet, die HealthOmics in Ihren VPC-Subnetzen bereitgestellt werden. Sie steuern das Netzwerk-Routing, die Sicherheitsgruppen, den Netzwerk ACLs - und 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

Stellen Sie vor der Konfiguration des VPC-Netzwerks für HealthOmics Workflows sicher, dass Sie über Folgendes verfügen:

  • Eine bestehende VPC mit entsprechenden 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 tätig ist.

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

  • Verständnis von VPC-Netzwerkkonzepten (Subnetze, Sicherheitsgruppen, Routing-Tabellen).

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

Wichtig

Ihre VPC-Konfiguration muss mindestens ein Subnetz in einer Availability Zone enthalten, das in Ihrer Region HealthOmics tätig ist, 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 Verwendung von Daten zwischen AWS Regionen sicher und konform ist.

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 step-by-step Anleitung finden Sie unter. Internetzugang für VPC-verbundene 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 nur das erforderliche Minimum an ausgehendem Datenverkehr zugelassen wird. Dabei gilt das Prinzip der geringsten Rechte.

Beispielkonfigurationen und ausführliche Anleitungen finden Sie im Internetzugang für VPC-verbundene Workflows Abschnitt Sicherheitsgruppen unter.

Schritt 3: Überprüfen Sie die Routentabellen

Stellen Sie sicher, dass Ihre privaten Subnetze über Routen zu einem NAT-Gateway für den Internetzugang verfügen. Beispiele für Routentabellenkonfigurationen finden Sie im Internetzugang für VPC-verbundene Workflows Abschnitt Routentabellen unter.

Anmerkung

Durch die Verbindung eines Laufs mit einem öffentlichen Subnetz 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

Die Konfiguration wechselt vom ACTIVE Status CREATING zu, sobald die Netzwerkressourcen bereitgestellt wurden. Dies dauert bis zu 15 Minuten.

Schritt 5: Starten Sie eine Workflow-Ausführung mit VPC-Netzwerken

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. Suchen Sie in den Workflow-Protokollen in den CloudWatch Protokollen nach Meldungen über den Erfolg oder den Fehler bei der Verbindung. Eine ausführliche Anleitung zum Testen der Konnektivität finden Sie unterVPC-Konnektivität testen.

VPC-Anforderungen

Ihre VPC muss die folgenden Anforderungen erfüllen:

Subnetz-Anforderungen

  • Minimum: Mindestens ein Subnetz in einer Availability Zone, in der betrieben wird 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 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 zu derselben VPC gehören wie die Subnetze

Sicherheitsgruppen kontrollieren den ein- und ausgehenden Datenverkehr 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 erstellt von HealthOmics sind mit den folgenden Tags verschlagwortet:

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

ENIs Erstellt von darf weder geändert noch gelöscht werden HealthOmics. Das Ändern dieser Netzwerkschnittstellen kann zu Dienstverzögerungen oder Unterbrechungen Ihrer Workflow-Ausführung führen.

Konfiguration APIs

HealthOmics ermöglicht APIs das Erstellen, Verwalten und Löschen von VPC-Konfigurationen. Sie können Konfigurationen für mehrere Workflow-Ausführungen wiederverwenden.

CreateConfiguration

Erstellt eine neue Konfigurationsressource mit VPC-Netzwerkeinstellungen. Ein step-by-step Beispiel finden Sie unterSchritt 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).

  • description (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 Subnetzen. 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-Läufen verwendet wird.

Anforderungssyntax:

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

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

Ausführen von Workflows mit VPC-Netzwerken

Einen Lauf mit VPC-Netzwerken starten

Um VPC-Netzwerke in einer Workflow-Ausführung zu verwenden, geben Sie den networking-mode Parameter und Folgendes an: 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 einstellen, um VPC-Netzwerke VPC zu aktivieren. Der Standardwert ist RESTRICTED.

  • configuration-name (erforderlich) — Der Name der zu verwendenden Konfiguration.

Netzwerkkonfiguration anzeigen und ausführen

GetRunDient zum Anzeigen der Netzwerkkonfiguration für einen Lauf:

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

Die Antwort umfasst den Netzwerkmodus, die Konfigurationsdetails und die VPC-Konfiguration. Das folgende Beispiel zeigt die VPC-bezogenen 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

Workflows verwenden einen Snapshot der Konfiguration, so wie sie zu Beginn der Ausführung vorhanden war. Sie können Konfigurationen während der Ausführung des Laufs sicher ändern oder löschen, ohne dass sich dies auf aktive Läufe auswirkt.

Ü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-spezifische Caching-Funktionen

Wichtig

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

Best Practices

Sicherheit

  1. Verwenden Sie Sicherheitsgruppen mit den geringsten Rechten. Lassen Sie nur das erforderliche Minimum an ausgehendem Datenverkehr zu. Verwenden Sie nach Möglichkeit spezifische CIDR-Zielblöcke anstelle von 0.0.0.0/0. Dokumentieren Sie den Zweck jeder Sicherheitsgruppenregel.

  2. Separate Konfigurationen nach Umgebung. Erstellen Sie separate Konfigurationen für Entwicklung, Staging und Produktion. Verwenden Sie für jede VPCs Umgebung unterschiedliche Subnetze oder Subnetze. Wenden Sie die entsprechenden Tags auf 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 Services. AWS Dies reduziert die Kosten für das NAT-Gateway, verbessert die Leistung und bietet zusätzliche Sicherheit, da der Datenverkehr im Netzwerk 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 Netzwerkmetriken, 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 AZ-übergreifenden Datenübertragungskosten.

  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 Konfigurationen vor dem Einsatz in der Produktion. Überprüfen Sie die Netzwerkkonnektivität mit Test-Workflows. Stellen Sie sicher, dass die Sicherheitsgruppenregeln 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, sie können jedoch kostengünstiger sein als NAT Gateway.

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

  3. NAT-Gateway-Bereitstellung in der richtigen Größe. Verwenden Sie für die Entwicklung ein NAT-Gateway für alle AZs. Verwenden Sie für die Produktion aus Gründen der Ausfallsicherheit ein NAT-Gateway pro AZ. Überwachen Sie die Nutzung des NAT-Gateways, um eine übermäßige Bereitstellung zu vermeiden.

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

Betriebsbereit

  1. Verwenden Sie aussagekräftige Konfigurationsnamen. Geben 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 Tags für Umgebung CostCenter, Eigentümer und Zweck hinzu.

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

VPC-Netzwerkkontingente

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

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

Um eine Kontingenterhöhung zu beantragen, öffnen Sie die Konsole „Servicekontingente“, wählen Sie AWS Dienste aus, suchen Sie nach AWS HealthOmics, wählen Sie das Kontingent aus, das Sie erhöhen möchten, und wählen Sie „Kontingenterhöhung beantragen“. Anfragen zur Erhöhung des Kontingents werden in der Regel innerhalb von 1—2 Werktagen bearbeitet.