Hinzufügen eines benutzerdefinierten Dateisystems zu einer Domain - Amazon SageMaker KI

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.

Hinzufügen eines benutzerdefinierten Dateisystems zu einer Domain

Wenn Sie eine Domain erstellen, fügt Amazon SageMaker AI der Domain ein Standardvolume Amazon Elastic File System (Amazon EFS) hinzu. SageMaker AI erstellt dieses Volume für Sie. Sie haben auch die Möglichkeit, ein benutzerdefiniertes Amazon EFS- oder ein benutzerdefiniertes Amazon FSx for Lustre-Dateisystem hinzuzufügen, das Sie erstellt haben. Nachdem Sie es hinzugefügt haben, ist Ihr Dateisystem für Benutzer verfügbar, die zu Ihrer Domain gehören. Ihre Benutzer können auf das Dateisystem zugreifen, wenn sie Amazon SageMaker Studio verwenden. Sie können das Dateisystem an Umgebungen anhängen, die sie für die folgenden unterstützten Anwendungen erstellen:

  • JupyterLab

  • Code-Editor

Nachdem Sie eine Umgebung ausgeführt und die Anwendung gestartet haben, können Ihre Benutzer auf alle Daten, Codes oder andere Artefakte zugreifen, die Ihr Dateisystem enthält.

Sie können Benutzern ermöglichen, auf die folgenden Arten auf Ihr Dateisystem zuzugreifen:

  • Über gemeinsam genutzte Bereiche: Ein gemeinsam genutzter Bereich kann von jedem Benutzer erstellt werden, der zu Ihrer Domain gehört. Anschließend kann er von jedem Benutzer verwendet werden, der zu Ihrer Domain gehört.

  • Über private Bereiche: Ein privater Bereich kann von jedem Benutzer erstellt werden, der zu Ihrer Domain gehört. Dann kann er nur von diesem Benutzer verwendet werden.

  • Ausschließlich als einzelner Benutzer: Wenn Sie nicht allen Benutzern Zugriff auf das Dateisystem gewähren möchten, können Sie nur einem bestimmten Benutzer Zugriff darauf gewähren. Wenn Sie das tun, ist das Dateisystem nur in privaten Bereichen verfügbar, die der jeweilige Benutzer erstellt.

Sie können ein benutzerdefiniertes Dateisystem hinzufügen, indem Sie die SageMaker Amazon-API AWSSDKs, die oder die verwendenAWS CLI. Sie können kein benutzerdefiniertes Dateisystem mithilfe der SageMaker AI-Konsole hinzufügen.

Voraussetzungen

Bevor Sie einer Domain ein benutzerdefiniertes Dateisystem hinzufügen können, müssen die folgenden Anforderungen erfüllt sein:

  • Sie haben eine Domain in SageMaker AI. Bevor Sie ein Dateisystem hinzufügen können, benötigen Sie die Domain-ID. Sie können die ID mithilfe der SageMaker AI-Konsole nachschlagen. Sie können den Befehl list-domains auch mit der AWS CLI ausführen.

  • Sie haben ein Amazon EFS- oder FSx for Lustre-Dateisystem in IhremAWS-Konto.

    For Amazon EFS
    • Die Schritte zum Erstellen eines Amazon EFS finden Sie unter Erstellen Ihres Amazon-EFS-Dateisystems im Benutzerhandbuch für Amazon Elastic File System.

    • Bevor Studio auf Ihr Dateisystem zugreifen kann, muss es in jedem der Subnetze, die Sie der Domain zuordnen, ein Mount-Ziel haben. Weitere Informationen zum Zuweisen von Mount-Zielen zu Subnetzen finden Sie unter Erstellen und Verwalten von Mount-Zielen und Sicherheitsgruppen im Benutzerhandbuch für Amazon Elastic File System.

    • Für jedes Mount-Ziel müssen Sie die Sicherheitsgruppe hinzufügen, die Amazon SageMaker AI bei der Erstellung der Domain in Ihrem AWS-Konto erstellt hat. Der Name der Sicherheitsgruppe hat das Format security-group-for-inbound-nfs-domain-id. Anleitungen zum Abrufen Ihrer Domain-ID finden Sie unter Anzeigen von Domains.

    • Ihre IAM-Berechtigungen müssen Ihnen die Verwendung der elasticfilesystem:DescribeMountTargets-Aktion erlauben. Weitere Informationen über diese Aktion finden Sie unter Aktionen, Ressourcen und Bedingungsschlüssel für Amazon Elastic File System in der Service-Authorization-Referenz.

    For FSx for Lustre
    • Die Schritte zum Erstellen eines FSx for Lustre-Dateisystems finden Sie unter Erste Schritte mit Amazon FSx for Lustre im Amazon FSx for Lustre-Benutzerhandbuch. Stellen Sie sicher, dass das FSx for Lustre-Dateisystem existiert in:

      • derselben Amazon VPC wie Ihre Domain.

      • einem der in Ihrer Domain vorhandenen Subnetze.

    • Bevor Studio auf das FSx for Lustre-Dateisystem zugreifen kann, müssen Sie die Sicherheitsgruppe Ihrer Domain zu allen Elastic Network Interfaces (ENIs) in Ihrem FSx for Lustre-Dateisystem hinzufügen. Ohne diesen Schritt schlägt die App-Erstellung fehl. Verwenden Sie die folgenden Anweisungen, um die Domain-Sicherheitsgruppe zu Ihrem FSx for Lustre-Dateisystem hinzuzufügen. ENIs

      Fügen Sie Ihre Domain-Sicherheitsgruppe dem FSx for Lustre-Dateisystem ENIs (Konsole) hinzu
      1. Navigieren Sie zur FSxAmazon-Konsole.

      2. Wählen Sie Dateisysteme aus.

      3. Wählen Sie Ihr FSx for Lustre-Dateisystem aus, indem Sie den entsprechenden Link unter Dateisystem-ID verwenden.

      4. Falls noch nicht ausgewählt, wählen Sie die Registerkarte Netzwerk und Sicherheit aus.

      5. Wählen Sie unter Subnetz die Option Um alle zu sehen ENIs, siehe die EC2 Amazon-Konsole aus. Dadurch gelangen Sie zur EC2 Amazon-Konsole und es werden alle mit Ihrem FSx for Lustre-Dateisystem ENIs verknüpften Dateien angezeigt.

      6. Für jedes ENI:

        1. Wählen Sie die ENI aus, indem Sie den entsprechenden Link unter Netzwerkschnittstellen-ID auswählen.

        2. Wählen Sie oben rechts auf der Übersichtsseite Aktionen aus, um ein Dropdown-Menü zu erweitern.

        3. Wählen Sie im Dropdown-Menü Sicherheitsgruppe auswählen aus.

        4. Suchen Sie nach Ihrer Domain-Sicherheitsgruppe.

          Der Name der Sicherheitsgruppe hat das Format security-group-for-inbound-nfs-domain-id. Anleitungen zum Abrufen Ihrer Domain-ID finden Sie unter Anzeigen von Domains.

        5. Wählen Sie Sicherheitsgruppen hinzufügen aus.

Hinzufügen eines benutzerdefinierten Dateisystems zu einer Domain mit dem AWS CLI

Um einer Domäne oder einem Benutzerprofil mit dem ein benutzerdefiniertes Dateisystem hinzuzufügenAWS CLI, übergeben Sie eine CustomFileSystemConfigs Definition, wenn Sie einen der folgenden Befehle verwenden:

In den folgenden Beispielen wird gezeigt, wie Sie einer vorhandenen Domain oder einem Benutzerprofil ein Dateisystem hinzufügen.

So fügen Sie ein Dateisystem hinzu, auf das in gemeinsam genutzten Bereichen zugegriffen werden kann
  • Aktualisieren Sie die Standardeinstellungen für den Bereich für Ihre Domain. Im folgenden Beispiel werden die Dateisystemeinstellungen zu den standardmäßigen Bereichseinstellungen hinzugefügt:

    aws sagemaker update-domain --domain-id domain-id \ --default-space-settings file://file-system-settings.json

    In diesem Beispiel wird die Dateisystemkonfiguration als JSON-Datei übergeben, was in einem späteren Beispiel gezeigt wird.

So fügen Sie ein Dateisystem hinzu, auf das in privaten Bereichen zugegriffen werden kann
  • Aktualisieren Sie die Standardeinstellungen für den Benutzer für Ihre Domain. Im folgenden Beispiel werden die Dateisystemeinstellungen zu den standardmäßigen Benutzereinstellungen hinzugefügt:

    aws sagemaker update-domain --domain-id domain-id \ --default-user-settings file://file-system-settings.json

    In diesem Beispiel wird die Dateisystemkonfiguration als JSON-Datei übergeben, was in einem späteren Beispiel gezeigt wird.

So fügen Sie ein Dateisystem hinzu, auf das nur ein einzelner Benutzer zugreifen kann
  • Aktualisieren Sie das Benutzerprofil für den Benutzer. Im folgenden Beispiel werden die Dateisystemeinstellungen zu einem Benutzerprofil hinzugefügt:

    aws sagemaker update-user-profile --domain-id domain-id \ --user-profile-name user-profile-name \ --user-settings file://file-system-settings.json

    In diesem Beispiel wird die Dateisystemkonfiguration als JSON-Datei übergeben, was im folgenden Beispiel gezeigt wird.

Beispiel Datei der Dateisystemeinstellungen

Die Datei in den vorherigen Beispielen, file-system-settings.json, hat die folgenden Einstellungen:

For your FSx for Lustre file systems
{ "CustomFileSystemConfigs": [ { "FSxLustreFileSystemConfig": { "FileSystemId": "file-system-id", "FileSystemPath": "/" } } ] }

Diese Beispielkonfiguration hat die folgenden Schlüssel:

CustomFileSystemConfigs

Einstellungen für benutzerdefinierte Dateisysteme (nur Amazon-EFS-Dateisysteme werden unterstützt).

FSxLustreFileSystemConfig

Einstellungen FSx für benutzerdefinierte Lustre-Dateisysteme.

FileSystemId

Die ID des Amazon-EFS-Dateisystems.

FileSystemPath

Der Pfad zum Dateisystemverzeichnis, auf das die Domainbenutzer in ihren Bereichen in Studio zugreifen können. Zulässige Benutzer können nur auf dieses Verzeichnis und darunter zugreifen. Der Standardpfad ist das Dateisystem-Stammverzeichnis: /.

For your Amazon EFS file systems
{ "CustomFileSystemConfigs": [ { "EFSFileSystemConfig": { "FileSystemId": "file-system-id", "FileSystemPath": "/" } } ] }

Diese Beispielkonfiguration hat die folgenden Schlüssel:

CustomFileSystemConfigs

Einstellungen für benutzerdefinierte Dateisysteme (nur Amazon-EFS-Dateisysteme werden unterstützt).

EFSFileSystemConfig

Einstellungen für benutzerdefinierte Amazon-EFS-Dateisysteme.

FileSystemId

Die ID des Amazon-EFS-Dateisystems.

FileSystemPath

Der Pfad zum Dateisystemverzeichnis, auf das die Domainbenutzer in ihren Bereichen in Studio zugreifen können. Zulässige Benutzer können nur auf dieses Verzeichnis und darunter zugreifen. Der Standardpfad ist das Dateisystem-Stammverzeichnis: /.

Wenn Sie den standardmäßigen Bereichseinstellungen für eine Domain ein Dateisystem zuweisen, müssen Sie auch die Ausführungsrolle in die Einstellungen aufnehmen:

{ "ExecutionRole": "execution-role-arn" }

Diese Beispielkonfiguration hat den folgenden Schlüssel:

ExecutionRole

Die standardmäßige Ausführungsrolle für die Benutzer der Domain.

Wenn Sie POSIX-Berechtigungen für Ihr Dateisystem anwenden möchten, können Sie auch die folgenden Einstellungen an die Befehle create-domain oder create-user-profile übergeben:

{ "CustomPosixUserConfig": { "Uid": UID, "Gid": GID } }

Diese Beispielkonfiguration hat die folgenden Schlüssel:

CustomPosixUserConfig

Die POSIX-Standardidentitäten, die für Dateisystemoperationen verwendet werden. Sie können diese Einstellungen verwenden, um Ihre bestehende POSIX-Berechtigungsstruktur auf die Benutzerprofile anzuwenden, die auf das benutzerdefinierte Dateisystem zugreifen. Auf POSIX-Berechtigungsebene können Sie steuern, welche Benutzer auf das Dateisystem zugreifen können und auf welche Dateien oder Daten sie zugreifen können.

Sie können CustomPosixUserConfig-Einstellungen auch anwenden, wenn Sie ein Benutzerprofil mit dem create-user-profile-Befehl erstellen. Die Einstellungen, die Sie auf ein Benutzerprofil anwenden, haben Vorrang vor denen, die Sie auf die zugehörige Domain anwenden.

Anmerkung

Sie können CustomPosixUserConfig-Einstellungen anwenden, wenn Sie die Befehle create-domain und create-user-profile verwenden. Sie können diese Einstellungen jedoch nicht anwenden, wenn Sie Folgendes tun:

  • Sie verwenden den update-domain-Befehl für eine Domain, die bereits mit Benutzerprofilen verknüpft ist. Sie können diese Einstellungen nur auf Domains anwenden, die keine Benutzerprofile haben.

  • Verwenden Sie den Befehl update-user-profile. Um diese Einstellungen auf ein Profil anzuwenden, das Sie bereits erstellt haben, löschen Sie das Profil und erstellen Sie ein neues mit den aktualisierten Einstellungen.

Uid

Die POSIX-Benutzer-ID. Der Standardwert ist 200001.

Gid

Die POSIX-Gruppen-ID. Die Standardeinstellung ist 1001.

Anhängen eines benutzerdefinierten Dateisystems an einen Bereich mithilfe von AWS CLI

Nachdem Sie einer Domain ein benutzerdefiniertes Dateisystem hinzugefügt haben, können die Domainbenutzer das Dateisystem an von ihnen erstellte Bereiche anhängen. Sie können beispielsweise das Dateisystem anhängen, wenn sie Studio oder den Befehl create-space mit der AWS CLI verwenden.

So hängen Sie ein benutzerdefiniertes Dateisystem an einen Bereich an
  • Fügen Sie die Dateisystemkonfiguration zu den Bereichseinstellungen hinzu. Mit dem folgenden Beispielbefehl wird ein Dateisystem an einen neuen Bereich angehängt.

    aws sagemaker create-space \ --space-name space-name \ --domain-id domain-id \ --ownership-settings "OwnerUserProfileName=user-profile-name" \ --space-sharing-settings "SharingType=Private" \ --space-settings file://space-settings.json

    In diesem Beispiel hat die Datei space-settings.json die folgenden Einstellungen, zu denen auch die CustomFileSystems-Konfiguration mit dem FileSystemId-Schlüssel gehört.

    For your FSx for Lustre file systems
    { "AppType": "JupyterLab", "JupyterLabAppSettings": { "DefaultResourceSpec": { "InstanceType": "instance-type" } }, "CustomFileSystems": [ { "FSxLustreFileSystem": { "FileSystemId": "file-system-id" } } ] }
    For your Amazon EFS file systems
    { "AppType": "JupyterLab", "JupyterLabAppSettings": { "DefaultResourceSpec": { "InstanceType": "instance-type" } }, "CustomFileSystems": [ { "EFSFileSystem": { "FileSystemId": "file-system-id" } } ] }

    SageMaker AI erstellt einen symbolischen Link unter dem folgenden Pfad:/home/sagemaker-user/custom-file-systems/file-system-type/file-system-id. Auf diese Weise können die Domainbenutzer von ihrem Stammverzeichnis /home/sagemaker-user aus zum benutzerdefinierten Dateisystem navigieren.