Aggiungere il supporto RStudio a un dominio esistente - Amazon SageMaker

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 il supporto RStudio a un dominio esistente

Importante

Le politiche IAM personalizzate che consentono ad Amazon SageMaker Studio o Amazon SageMaker Studio Classic di creare SageMaker risorse Amazon devono inoltre concedere le autorizzazioni per aggiungere tag a tali risorse. L'autorizzazione per aggiungere tag alle risorse è necessaria perché Studio e Studio Classic taggano automaticamente tutte le risorse che creano. Se una policy IAM consente a Studio e Studio Classic di creare risorse ma non consente l'aggiunta di tag, si possono verificare errori AccessDenied "" durante il tentativo di creare risorse. Per ulteriori informazioni, consulta Fornisci le autorizzazioni per etichettare le risorse SageMaker.

AWS Policy gestite per Amazon SageMakerche danno i permessi per creare SageMaker risorse includono già le autorizzazioni per aggiungere tag durante la creazione di tali risorse.

Se hai aggiunto una licenza RStudio tramite AWS License Manager, puoi creare un nuovo SageMaker dominio Amazon con supporto per RStudio attivo. SageMaker Se disponi di un dominio esistente che non supporta RStudio, puoi aggiungere il supporto RStudio a quel dominio senza dover eliminare e ricreare il dominio. 

L'argomento seguente descrive come aggiungere questo supporto.

Prerequisiti

È necessario completare i seguenti passaggi prima di aggiornare il dominio corrente per aggiungere il supporto per RStudio su. SageMaker 

  • Installazione e configurazione AWS CLI versione 2

  • Configurazione di AWS CLI con credenziali IAM

  • Crea un ruolo di esecuzione del dominio seguendo i passaggi descritti in Creare un SageMaker dominio con RStudio utilizzando il. AWS CLI Questo ruolo IAM a livello di dominio è richiesto dall'app R. StudioServerPro Il ruolo richiede l'accesso AWS License Manager per la verifica di una licenza Posit Workbench valida e Amazon CloudWatch Logs per la pubblicazione dei log del server. 

  • Implementa la tua licenza RStudio a AWS License Manager seguire i passaggi indicati nella licenza RStudio.

  • (Facoltativo) Se desideri utilizzare RStudio in modalità VPCOnly, completa le fasi descritte in RStudio solo in VPC.

  • Assicurati che i gruppi di sicurezza che hai configurato per ciascuno del tuo dominio soddisfino le quote UserProfilea livello di account. Quando configuri il profilo utente predefinito durante la creazione del dominio, puoi utilizzare il DefaultUserSettings parametro dell'CreateDomainAPI per aggiungere i profili utente SecurityGroups ereditati da tutti i profili utente creati nel dominio. Puoi anche fornire gruppi di sicurezza aggiuntivi per un utente specifico come parte del UserSettings parametro dell'CreateUserProfileAPI. Se hai aggiunto gruppi di sicurezza in questo modo, devi assicurarti che il numero totale di gruppi di sicurezza per profilo utente non superi la quota massima di 2 in modalità VPCOnly e 4 in modalità PublicInternetOnly. Se il numero totale di gruppi di sicurezza risultante per ogni profilo utente supera la quota, puoi combinare le regole di più gruppi di sicurezza in un unico gruppo di sicurezza. 

Aggiungi il supporto per RStudio a un dominio esistente

Dopo aver completato i prerequisiti, puoi aggiungere il supporto RStudio al tuo dominio esistente. I passaggi seguenti descrivono come aggiornare il dominio esistente per aggiungere il supporto per RStudio.

Passaggio 1: elimina tutte le app nel dominio

Per aggiungere il supporto per RStudio nel tuo dominio, SageMaker devi aggiornare i gruppi di sicurezza sottostanti per tutti i profili utente esistenti. Per completare questa operazione, devi eliminare e ricreare tutte le app esistenti nel dominio. Di seguito viene mostrato come eliminare tutte le app.

  1. Elenca tutte le app del dominio.

    aws sagemaker \   list-apps \ --domain-id-equals <DOMAIN_ID>
  2. Elimina ogni app per ogni profilo utente nel dominio.

    // JupyterServer apps aws sagemaker \ delete-app \ --domain-id <DOMAIN_ID> \ --user-profile-name <USER_PROFILE> \ --app-type JupyterServer \ --app-name <APP_NAME> // KernelGateway apps aws sagemaker \ delete-app \ --domain-id <DOMAIN_ID> \ --user-profile-name <USER_PROFILE> \ --app-type KernelGateway \ --app-name <APP_NAME>

Fase 2: aggiornare tutti i profili utente con il nuovo elenco di gruppi di sicurezza

Questa è un'azione unica che devi completare per tutti i profili utente esistenti nel tuo dominio dopo aver rifattorizzato i gruppi di sicurezza esistenti. Ciò impedisce di raggiungere la quota per il numero massimo di gruppi di sicurezza. La chiamata UpdateUserProfile API ha esito negativo se l'utente ha delle app con stato impostato. InService Elimina tutte le app, quindi chiama l'API UpdateUserProfile per aggiornare i gruppi di sicurezza.

Nota

Il seguente requisito per la VPCOnly modalità delineato in Connect Amazon SageMaker Studio Classic Notebooks in un VPC a risorse esterne non è più necessario quando si aggiunge il supporto RStudio perché è gestito dal servizio: AppSecurityGroupManagement SageMaker

Traffico TCP all'interno del gruppo di sicurezza. È necessario per la connettività tra l'app e le app. JupyterServer KernelGateway È necessario consentire l'accesso ad almeno le porte dell'intervallo 8192-65535.”

aws sagemaker \ update-user-profile \ --domain-id <DOMAIN_ID>\ --user-profile-name <USER_PROFILE> \ --user-settings "{\"SecurityGroups\": [\"<SECURITY_GROUP>\", \"<SECURITY_GROUP>\"]}"

Fase 3 - Attiva RStudio chiamando l'API UpdateDomain

  1. Chiama l'UpdateDomainAPI per aggiungere il supporto per RStudio on. SageMaker Il parametro defaultusersettings è necessario solo se hai rifattorizzato i gruppi di sicurezza predefiniti per i tuoi profili utente.

    • Per la modalità VPCOnly:

      aws sagemaker \ update-domain \ --domain-id <DOMAIN_ID> \ --app-security-group-management Service \ --domain-settings-for-update RStudioServerProDomainSettingsForUpdate={DomainExecutionRoleArn=<DOMAIN_EXECUTION_ROLE_ARN>} \ --default-user-settings "{\"SecurityGroups\": [\"<SECURITY_GROUP>\", \"<SECURITY_GROUP>\"]}"
    • Per la modalità PublicInternetOnly:

      aws sagemaker \ update-domain \ --domain-id <DOMAIN_ID> \    --domain-settings-for-update RStudioServerProDomainSettingsForUpdate={DomainExecutionRoleArn=<DOMAIN_EXECUTION_ROLE_ARN>} \ --default-user-settings "{\"SecurityGroups\": [\"<SECURITY_GROUP>\", \"<SECURITY_GROUP>\"]}"
  2. Verifica che lo stato del dominio siaInService. Dopo aver impostato lo stato del dominioInService, SageMaker viene aggiunto il supporto per RStudio on.

    aws sagemaker \ describe-domain \ --domain-id <DOMAIN_ID>
  3. Verifica che lo stato dell'StudioServerPro app R InService utilizzi il seguente comando.

    aws sagemaker list-apps --user-profile-name domain-shared

Fase 4: aggiungere l'accesso a RStudio per gli utenti esistenti

Come parte dell'aggiornamento nel passaggio 3, SageMaker contrassegna come DISABLED predefinito RStudio AccessStatusdi tutti i profili utente esistenti nel dominio. Ciò impedisce il superamento del numero di utenti consentito dalla licenza corrente. Per aggiungere l'accesso per gli utenti esistenti, è disponibile una sola fase di attivazione. Esegui l'opt-in chiamando l'UpdateUserProfileAPI con la seguente R StudioServerProAppSettings:

  • AccessStatus = ENABLED

  • Facoltativo - UserGroup = R_STUDIO_USER o R_STUDIO_ADMIN

aws sagemaker \ update-user-profile \ --domain-id <DOMAIN_ID>\ --user-profile-name <USER_PROFILE> \ --user-settings "{\"RStudioServerProAppSettings\": {\"AccessStatus\": \"ENABLED\"}}"
Nota

Per impostazione predefinita, il numero di utenti che possono accedere a RStudio è 60.

Fase 5: disattivare l'accesso a RStudio per i nuovi utenti

Se non diversamente specificato durante la chiamataUpdateDomain, il supporto RStudio viene aggiunto per impostazione predefinita per tutti i nuovi profili utente creati dopo aver aggiunto il supporto per RStudio on. SageMaker Per disattivare l'accesso per un nuovo profilo utente, è necessario impostare esplicitamente il parametro AccessStatus su DISABLED come parte della chiamata API CreateUserProfile. Se il parametro AccessStatus non è specificato come parte dell'API CreateUserProfile, lo stato di accesso predefinito è ENABLED.

aws sagemaker \ create-user-profile \ --domain-id <DOMAIN_ID>\ --user-profile-name <USER_PROFILE> \ --user-settings "{\"RStudioServerProAppSettings\": {\"AccessStatus\": \"DISABLED\"}}"