Aggiungere un file system personalizzato a un dominio - Amazon SageMaker AI

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Aggiungere un file system personalizzato a un dominio

Quando crei un dominio, Amazon SageMaker AI aggiunge un volume predefinito Amazon Elastic File System (Amazon EFS) al dominio. SageMaker L'intelligenza artificiale crea questo volume per te. Hai anche la possibilità di aggiungere un file system Amazon EFS o Amazon FSx for Lustre personalizzato che hai creato. Dopo averlo aggiunto, il file system è disponibile per gli utenti che appartengono al tuo dominio. I tuoi utenti possono accedere al file system quando usano Amazon SageMaker Studio. Possono allegare il file system agli spazi che creano per le seguenti applicazioni supportate:

  • JupyterLab

  • Editor di codici

Dopo aver eseguito uno spazio e avviato l'applicazione, gli utenti possono accedere a qualsiasi dato, codice o altro elemento contenuto nel file system.

È possibile consentire agli utenti di accedere al file system nei seguenti modi:

  • Tramite spazi condivisi: uno spazio condiviso può essere creato da qualsiasi utente appartenente al tuo dominio. Quindi, può essere utilizzato da qualsiasi utente appartenente al tuo dominio.

  • Tramite spazi privati: uno spazio privato può essere creato da qualsiasi utente appartenente al tuo dominio. Quindi, può essere utilizzato solo da quell'utente.

  • Esclusivamente come singolo utente: se non desideri consentire a tutti gli utenti di accedere al file system, puoi consentire solo a un utente specifico di accedervi. In tal caso, il file system è disponibile solo negli spazi privati creati dall'utente specifico.

Puoi aggiungere un file system personalizzato utilizzando l' SageMaker API Amazon, il AWS SDKs, o il AWS CLI. Non puoi aggiungere un file system personalizzato utilizzando la console SageMaker AI.

Prerequisiti

Prima di poter aggiungere un file system personalizzato a un dominio, devi soddisfare i seguenti requisiti:

  • Hai un dominio in SageMaker AI. Prima di poter aggiungere un file system, è necessario l'ID del dominio. Puoi cercare l'ID utilizzando la console SageMaker AI. Puoi anche eseguire il list-domainscomando con AWS CLI.

  • Hai un file system Amazon EFS o FSx for Lustre nel tuo Account AWS.

    For Amazon EFS
    • Per i passaggi per creare un Amazon EFS, consulta Create your Amazon EFS file system nella Amazon Elastic File System User Guide.

    • Prima che Studio possa accedere al tuo file system, deve disporre di una destinazione di montaggio in ciascuna delle sottoreti associate al dominio. Per ulteriori informazioni sull'assegnazione di destinazioni di montaggio alle sottoreti, consulta Creazione e gestione di destinazioni di montaggio e gruppi di sicurezza nella Amazon Elastic File System User Guide.

    • Per ogni destinazione di montaggio, devi aggiungere il gruppo di sicurezza creato da Amazon SageMaker AI al Account AWS momento della creazione del dominio. Il nome del gruppo di sicurezza ha il formatosecurity-group-for-inbound-nfs-domain-id. Per istruzioni su come ottenere l'ID del dominio, consultaVisualizza i domini.

    • Le tue autorizzazioni IAM devono consentirti di utilizzare l'elasticfilesystem:DescribeMountTargetsazione. Per ulteriori informazioni su questa azione, consulta Azioni, risorse e chiavi di condizione per Amazon Elastic File System nel Service Authorization Reference.

    For FSx for Lustre
    • Per i passaggi per creare un file system FSx for Lustre, consulta la Guida introduttiva ad Amazon FSx for Lustre nella Guida per l'utente di Amazon FSx for Lustre. Assicurati che il file system FSx for Lustre esista in:

      • Lo stesso Amazon VPC del tuo dominio.

      • Una delle sottoreti presenti nel tuo dominio.

    • Prima che Studio possa accedere al file system FSx for Lustre, è necessario aggiungere il gruppo di sicurezza del dominio a tutte le interfacce di rete elastiche (ENIs) nel file system FSx for Lustre. Senza questo passaggio, la creazione dell'app fallisce e viene generato un errore. Utilizza le seguenti istruzioni per aggiungere il gruppo di sicurezza del dominio al file system FSx ENIs for Lustre.

      Aggiungi il gruppo di sicurezza del dominio al file system FSx for Lustre ENIs (console)
      1. Accedi alla FSxconsole Amazon.

      2. Seleziona File system.

      3. Scegli il tuo file system FSx for Lustre utilizzando il link corrispondente in File system ID.

      4. Se non è già selezionato, scegli la scheda Rete e sicurezza.

      5. In Subnet scegli Per vedere tutto ENIs, consulta la EC2 console Amazon. Verrai indirizzato alla EC2 console Amazon e mostrerà tutti i ENIs collegamenti al tuo file system FSx for Lustre.

      6. Per ogni ENI:

        1. Scegli l'ENI selezionando il link corrispondente in Network interface ID.

        2. Scegli Azioni in alto a destra nella pagina di riepilogo per espandere un menu a discesa.

        3. Nel menu a discesa, scegli Scegli il gruppo di sicurezza.

        4. Cerca il gruppo di sicurezza del tuo dominio.

          Il nome del gruppo di sicurezza ha il formatosecurity-group-for-inbound-nfs-domain-id. Per istruzioni su come ottenere l'ID del dominio, consultaVisualizza i domini.

        5. Scegli Aggiungi gruppo di sicurezza.

Aggiungere un file system personalizzato a un dominio con AWS CLI

Per aggiungere un file system personalizzato a un dominio o a un profilo utente con AWS CLI, si passa una CustomFileSystemConfigs definizione quando si utilizza uno dei seguenti comandi:

Gli esempi seguenti mostrano come aggiungere un file system a un dominio o a un profilo utente esistente.

Per aggiungere un file system accessibile in spazi condivisi
  • Aggiorna le impostazioni di spazio predefinite per il tuo dominio. L'esempio seguente aggiunge le impostazioni del file system alle impostazioni di spazio predefinite:

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

    Questo esempio passa la configurazione del file system come file JSON, come illustrato in un esempio successivo.

Per aggiungere un file system accessibile in spazi privati
  • Aggiorna le impostazioni utente predefinite per il tuo dominio. L'esempio seguente aggiunge le impostazioni del file system alle impostazioni utente predefinite:

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

    Questo esempio passa la configurazione del file system come file JSON, come illustrato in un esempio successivo.

Per aggiungere un file system accessibile solo a un singolo utente
  • Aggiornare il profilo utente per l'utente. L'esempio seguente aggiunge le impostazioni del file system a un profilo utente:

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

    Questo esempio passa la configurazione del file system come file JSON, come illustrato nell'esempio seguente.

Esempio file di impostazioni del file system

Il file negli esempi precedenti presenta file-system-settings.json le seguenti impostazioni:

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

Questa configurazione di esempio ha le seguenti chiavi:

CustomFileSystemConfigs

Impostazioni per file system personalizzati (sono supportati solo i file system Amazon EFS).

FSxLustreFileSystemConfig

Impostazioni personalizzate FSx per i file system Lustre.

FileSystemId

L'ID del tuo file system Amazon EFS.

FileSystemPath

Il percorso della directory del file system accessibile agli utenti del dominio nei rispettivi spazi in Studio. Gli utenti autorizzati possono accedere solo a questa directory e a quella sottostante. Il percorso predefinito è la radice del file system:/.

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

Questa configurazione di esempio ha le seguenti chiavi:

CustomFileSystemConfigs

Impostazioni per file system personalizzati (sono supportati solo i file system Amazon EFS).

EFSFileSystemConfig

Impostazioni per file system Amazon EFS personalizzati.

FileSystemId

L'ID del tuo file system Amazon EFS.

FileSystemPath

Il percorso della directory del file system accessibile agli utenti del dominio nei rispettivi spazi in Studio. Gli utenti autorizzati possono accedere solo a questa directory e a quella sottostante. Il percorso predefinito è la radice del file system:/.

Quando si assegna un file system alle impostazioni di spazio predefinite per un dominio, è necessario includere anche il ruolo di esecuzione nelle impostazioni:

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

Questa configurazione di esempio ha la seguente chiave:

ExecutionRole

Il ruolo di esecuzione predefinito per gli utenti del dominio.

Se desideri applicare i permessi POSIX per il tuo file system, puoi anche passare le seguenti impostazioni ai comandi create-domain orcreate-user-profile:

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

Questa configurazione di esempio ha le seguenti chiavi:

CustomPosixUserConfig

Le identità POSIX predefinite utilizzate per le operazioni del file system. È possibile utilizzare queste impostazioni per applicare la struttura di autorizzazioni POSIX esistente ai profili utente che accedono al file system personalizzato. A livello di autorizzazioni POSIX, è possibile controllare quali utenti possono accedere al file system e a quali file o dati possono accedere.

È inoltre possibile applicare CustomPosixUserConfig le impostazioni quando si crea un profilo utente utilizzando il create-user-profile comando. Le impostazioni applicate a un profilo utente hanno la precedenza su quelle applicate al dominio associato.

Nota

È possibile applicare CustomPosixUserConfig le impostazioni quando si utilizzano i create-user-profile comandi create-domain and. Tuttavia, non puoi applicare queste impostazioni quando esegui le seguenti operazioni:

  • Utilizzate il update-domain comando per un dominio già associato a qualsiasi profilo utente. È possibile applicare queste impostazioni solo ai domini che non dispongono di profili utente.

  • Utilizza il comando update-user-profile. Per applicare queste impostazioni al profilo che hai già creato, elimina il profilo e creane uno nuovo con le impostazioni aggiornate.

Uid

L'ID utente POSIX. L'impostazione predefinita è 200001.

Gid

L'ID del gruppo POSIX. L'impostazione predefinita è 1001.

Allegare un file system personalizzato a uno spazio con AWS CLI

Dopo aver aggiunto un file system personalizzato a un dominio, gli utenti del dominio possono allegare il file system agli spazi che creano. Ad esempio, possono collegare il file system quando utilizzano Studio o il comando create-space con. AWS CLI

Per allegare un file system personalizzato a uno spazio
  • Aggiungere la configurazione del file system alle impostazioni dello spazio. Il comando di esempio seguente collega un file system a un nuovo spazio.

    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 questo esempio, il file space-settings.json ha le seguenti impostazioni, che includono la CustomFileSystems configurazione con la FileSystemId chiave.

    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 crea un collegamento simbolico nel seguente percorso:/home/sagemaker-user/custom-file-systems/file-system-type/file-system-id. Con questo, gli utenti del dominio possono accedere al file system personalizzato dalla loro home directory,/home/sagemaker-user.