Verbinden von Amazon SageMaker Studio in einer VPC mit externen Ressourcen
Wichtig
Am 30. November 2023 wurde Amazon SageMaker Studio in Amazon SageMaker Studio umbenannt. Der folgende Abschnitt bezieht sich auf die Verwendung der aktualisierten Studio-Erfahrung. Informationen zur Verwendung der Studio-Classic-Anwendung finden Sie unter Amazon SageMaker Studio Classic.
Das folgende Thema enthält Informationen dazu, wie Sie Amazon SageMaker Studio in einer VPC mit externen Ressourcen verbinden.
Standardkommunikation mit dem Internet
Standardmäßig bietet Amazon SageMaker Studio eine Netzwerkschnittstelle, die die Kommunikation mit dem Internet über eine von SageMaker AI verwaltete VPC ermöglicht. Der Datenverkehr zu AWS-Services wie Amazon S3 und CloudWatch wird über ein Internet-Gateway abgewickelt ebenso wie der Datenverkehr, der auf die SageMaker-AI-API und die SageMaker-AI-Laufzeit zugreift. Der Datenverkehr zwischen der Domain und Ihrem Amazon EFS-Volume wird über die VPC abgewickelt, die Sie beim Onboarding in der Domain oder beim Aufrufen der CreateDomain-API angegeben haben.
VPC only Kommunikation mit dem Internet
Um zu verhindern, dass SageMaker AI Studio Internetzugang gewährt, können Sie den Internetzugang deaktivieren, indem Sie den VPC only Netzwerkzugriffstyp angeben, wenn Sie Studio einbinden oder die CreateDomain-API aufrufen. Daher können Sie Studio nur ausführen, wenn Ihre VPC über einen Schnittstellenendpunkt zur SageMaker-API und -Laufzeitumgebung oder über ein NAT-Gateway mit Internetzugang verfügt und Ihre Sicherheitsgruppen ausgehende Verbindungen zulassen.
Anmerkung
Der Netzwerkzugriffstyp kann nach der Erstellung der Domain mithilfe des --app-network-access-type Parameters des Befehls update-domain
Voraussetzungen für die Verwendung des VPC only-Modus
Wenn Sie VpcOnly wählen, gehen Sie folgendermaßen vor:
-
Sie dürfen nur private Subnetze verwenden. Sie können öffentliche Subnetze nicht im
VpcOnlyModus verwenden. -
Stellen Sie sicher, dass Ihre Subnetze über die erforderliche Anzahl an IP-Adressen verfügen. Die erwartete Anzahl an IP-Adressen, die pro Benutzer benötigt werden, kann je nach Anwendungsfall variieren. Wir empfehlen zwischen 2 und 4 IP-Adressen pro Benutzer. Die gesamte IP-Adresskapazität für eine Domain ist die Summe der verfügbaren IP-Adressen für jedes Subnetz, die bei der Erstellung der Domain bereitgestellt wurden. Stellen Sie sicher, dass Ihre geschätzte IP-Adressnutzung die Kapazität nicht überschreitet, die von der Anzahl der von Ihnen bereitgestellten Subnetze unterstützt wird. Darüber hinaus kann die Verwendung von Subnetzen, die über viele Availability Zones verteilt sind, die Verfügbarkeit von IP-Adressen erhöhen. Weitere Informationen finden Sie unter Dimensionierung der VPC und der Subnetze für IPv4.
Anmerkung
Sie können nur Subnetze mit einer Standard-Tenancy-VPC konfigurieren, in der Ihre Instance auf freigegebenen Hardware läuft. Weitere Informationen zum Tenancy-Attribut für VPCs finden Sie unter Dedicated Instances.
-
Warnung
Wenn Sie den
VpcOnlyModus verwenden, besitzen Sie teilweise die Netzwerkkonfiguration für die Domain. Wir empfehlen die bewährte Sicherheitsmethode, d. h. die Verwendung von Berechtigungen mit den geringsten Rechten auf eingehende und ausgehende Zugriffe, die durch Sicherheitsgruppenregeln bereitgestellt werden. Zu freizügige Regelkonfigurationen für eingehenden Datenverkehr könnten es Benutzern mit Zugriff auf die VPC ermöglichen, ohne Authentifizierung mit den Anwendungen anderer Benutzerprofile zu interagieren.Richten Sie eine oder mehrere Sicherheitsgruppen mit Regeln für eingehenden und ausgehenden Datenverkehr ein, die den folgenden Datenverkehr zulassen:
-
NFS-Verkehr über TCP auf Port 2049 zwischen der Domain und dem Amazon EFS-Volume.
-
TCP-Verkehr innerhalb der Sicherheitsgruppe. Dies ist für die Konnektivität zwischen der Jupyter Server Anwendung und den Kernel Gateway Anwendungen erforderlich. Sie müssen den Zugriff auf mindestens Ports im Bereich
8192-65535zulassen.
Erstellen Sie für jedes Benutzerprofil eine eigene Sicherheitsgruppe und fügen Sie eingehenden Zugriff aus derselben Sicherheitsgruppe hinzu. Es wird nicht empfohlen, eine Sicherheitsgruppe auf Domainebene für Benutzerprofile wiederzuverwenden. Wenn die Sicherheitsgruppe auf Domainebene eingehenden Zugriff auf sich selbst zulässt, hätten alle Anwendungen in der Domain Zugriff auf alle anderen Anwendungen in der Domain.
-
-
Wenn Sie den Internetzugang zulassen möchten, müssen Sie ein NAT-Gateway mit Internetzugang verwenden, z. B. über ein Internet-Gateway.
-
Wenn Sie den Internetzugang nicht zulassen möchten, erstellen Sie VPC-Schnittstellen-Endpunkte (AWS PrivateLink), damit Studio auf die folgenden Services mit den entsprechenden Service-Namen zugreifen kann. Sie müssen diesen Endpunkten auch die Sicherheitsgruppen für Ihre VPC zuordnen.
-
SageMaker-API:
com.amazonaws..region.sagemaker.api -
SageMaker-AI-Laufzeit:
com.amazonaws.. Dies ist erforderlich, um Endpunktaufrufe auszuführen.region.sagemaker.runtime -
Amazon S3:
com.amazonaws..region.s3 -
SageMaker-Projekte:
com.amazonaws..region.servicecatalog -
SageMaker Studio:
aws.sagemaker.region.studio. -
Alle anderen AWS Dienste, die Sie benötigen.
Wenn Sie das SageMaker Python SDK
verwenden, um Remote-Trainingsaufträge auszuführen, müssen Sie auch die folgenden Amazon VPC-Endpoints erstellen. -
AWS Security Token Service:
com.amazonaws.region.sts -
Amazon CloudWatch:
com.amazonaws.. Dies ist erforderlich, damit das SageMaker Python SDK den Status des Ferntrainingsauftrags vom Amazon CloudWatch abrufen kann.region.logs
-
-
Wenn Sie die Domain im
VpcOnlyModus von einem lokalen Netzwerk aus verwenden, stellen Sie eine private Konnektivität über das Netzwerk des Hosts her, auf dem Studio im Browser ausgeführt wird, und die Amazon-Ziel-VPC. Dies ist erforderlich, da die Studio-Benutzeroberfläche AWS Endpunkte mithilfe von API-Aufrufen mit temporären Anmeldeinformationen aufruft. AWS Diese temporären Anmeldeinformationen sind der Ausführungsrolle des protokollierten Benutzerprofils zugeordnet. Wenn die Domain imVpcOnlyModus in einem lokalen Netzwerk konfiguriert ist, definiert die Ausführungsrolle möglicherweise IAM-Richtlinienbedingungen, die die Ausführung von AWS Service-API-Aufrufen nur über die konfigurierten Amazon VPC-Endpunkte erzwingen. Dies führt dazu, dass API-Aufrufe, die über die Studio-Benutzeroberfläche ausgeführt werden, fehlschlagen. Wir empfehlen, dieses Problem mithilfe einer Oder-Verbindung zu lösen. AWS Site-to-Site VPNAWS Direct Connect
Anmerkung
Bei Kunden, die im VPC-Modus arbeiten, können Firmenfirewalls Verbindungsprobleme mit Studio oder Anwendungen verursachen. Führen Sie die folgenden Prüfungen durch, wenn eines dieser Probleme auftritt, wenn SieStudio hinter einer Firewall verwenden.
-
Stellen Sie sicher, dass die Studio-URL und die URLs für all Ihre Anwendungen auf der Zulassungsliste Ihres Netzwerks stehen. Zum Beispiel:
*.studio.region.sagemaker.aws *.console.aws.a2z.com -
Vergewissern Sie sich, dass die Websocket-Verbindungen nicht blockiert sind. Jupyter verwendet Websockets.