RStudio-Unterstützung zu einer bestehenden Domain hinzufügen - Amazon SageMaker

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.

RStudio-Unterstützung zu einer bestehenden Domain hinzufügen

Wichtig

Benutzerdefinierte IAM-Richtlinien, die es Amazon SageMaker Studio oder Amazon SageMaker Studio Classic ermöglichen, SageMaker Amazon-Ressourcen zu erstellen, müssen auch Berechtigungen zum Hinzufügen von Tags zu diesen Ressourcen gewähren. Die Berechtigung zum Hinzufügen von Tags zu Ressourcen ist erforderlich, da Studio und Studio Classic automatisch alle von ihnen erstellten Ressourcen taggen. Wenn eine IAM-Richtlinie Studio und Studio Classic das Erstellen von Ressourcen, aber kein Tagging erlaubt, können "AccessDenied" Fehler auftreten, wenn versucht wird, Ressourcen zu erstellen. Weitere Informationen finden Sie unter Stellen Sie Berechtigungen für das Taggen von Ressourcen SageMaker bereit.

AWS Verwaltete Richtlinien für Amazon SageMakerdie Berechtigungen zum Erstellen von SageMaker Ressourcen gewähren, beinhalten bereits Berechtigungen zum Hinzufügen von Tags beim Erstellen dieser Ressourcen.

Wenn Sie eine RStudio-Lizenz hinzugefügt haben AWS License Manager, können Sie eine neue SageMaker Amazon-Domain mit aktivierter Unterstützung für RStudio erstellen. SageMaker Wenn Sie über eine bestehende Domain verfügen, die RStudio nicht unterstützt, können Sie dieser Domain RStudio-Unterstützung hinzufügen, ohne die Domain löschen und neu erstellen zu müssen. 

Im folgenden Thema wird beschrieben, wie Sie diese Unterstützung hinzufügen können.

Voraussetzungen

Sie müssen die folgenden Schritte ausführen, bevor Sie Ihre aktuelle Domain aktualisieren, um Unterstützung für RStudio hinzuzufügen. SageMaker 

  • Installieren und Konfigurieren von AWS CLI Version 2

  • Konfigurieren Sie das AWS CLI mit IAM-Anmeldeinformationen

  • Erstellen Sie eine Domänenausführungsrolle gemäß den Schritten unter Erstellen einer SageMaker Domäne mit RStudio mithilfe von. AWS CLI Diese IAM-Rolle auf Domänenebene ist für die R-App erforderlich. StudioServerPro Die Rolle erfordert Zugriff auf AWS License Manager zur Überprüfung einer gültigen Posit Workbench-Lizenz und Amazon CloudWatch Logs zur Veröffentlichung von Serverprotokollen. 

  • Bringen Sie Ihre RStudio-Lizenz dazu, den Schritten in der RStudio-Lizenz zu AWS License Manager folgen.

  • (Optional) Wenn Sie RStudio im VPCOnly Modus verwenden möchten, führen Sie die Schritte in RStudio nur in VPC aus.

  • Stellen Sie sicher, dass die Sicherheitsgruppen, die Sie für jede Sicherheitsgruppe UserProfilein Ihrer Domain konfiguriert haben, die Kontingente auf Kontoebene erfüllen. Wenn Sie das Standardbenutzerprofil bei der Domainerstellung konfigurieren, können Sie mithilfe der DefaultUserSettings CreateDomainAPI-Parameter die Profile hinzufügenSecurityGroups, die von allen in der Domäne erstellten Benutzerprofilen übernommen werden. Sie können auch zusätzliche Sicherheitsgruppen für einen bestimmten Benutzer als Teil des UserSettings CreateUserProfileAPI-Parameters angeben. Wenn Sie Sicherheitsgruppen auf diese Weise hinzugefügt haben, müssen Sie sicherstellen, dass die Gesamtzahl der Sicherheitsgruppen pro Benutzerprofil das maximale Kontingent von 2 im VPCOnly Modus und 4 im PublicInternetOnly Modus nicht überschreitet. Wenn die resultierende Gesamtzahl der Sicherheitsgruppen für ein Benutzerprofil das Kontingent überschreitet, können Sie die Regeln mehrerer Sicherheitsgruppen zu einer Sicherheitsgruppe zusammenfassen. 

Fügen Sie RStudio-Unterstützung zu einer vorhandenen Domäne hinzu

Nachdem Sie die Voraussetzungen erfüllt haben, können Sie Ihrer vorhandenen Domäne RStudio-Unterstützung hinzufügen. In den folgenden Schritten wird beschrieben, wie Sie Ihre bestehende Domain aktualisieren, um Unterstützung für RStudio hinzuzufügen.

Schritt 1: Löschen Sie alle Apps in der Domain

Um Unterstützung für RStudio in Ihrer Domain hinzuzufügen, SageMaker müssen Sie die zugrunde liegenden Sicherheitsgruppen für alle vorhandenen Benutzerprofile aktualisieren. Um dies abzuschließen, müssen Sie alle vorhandenen Apps in der Domain löschen und neu erstellen. Die folgenden Schritte zeigen, wie Sie alle Apps löschen.

  1. Listet alle Apps in der Domain auf.

    aws sagemaker \   list-apps \ --domain-id-equals <DOMAIN_ID>
  2. Löschen Sie jede App für jedes Benutzerprofil in der Domain.

    // 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>

Schritt 2 – Aktualisieren Sie alle Benutzerprofile mit der neuen Liste von Sicherheitsgruppen

Dies ist eine einmalige Aktion, die Sie für alle vorhandenen Benutzerprofile in Ihrer Domain ausführen müssen, wenn Sie Ihre vorhandenen Sicherheitsgruppen überarbeitet haben. Dadurch wird verhindert, dass Sie das Kontingent für die maximale Anzahl von Sicherheitsgruppen erreichen. Der UpdateUserProfile API-Aufruf schlägt fehl, wenn der Benutzer Apps hat, die sich im Status befinden. InService Löschen Sie alle Apps und rufen Sie dann die UpdateUserProfile API auf, um die Sicherheitsgruppen zu aktualisieren.

Anmerkung

Die folgende Anforderung für den VPCOnly Modus, die unter Amazon SageMaker Studio Classic-Notebooks in einer VPC mit externen Ressourcen Connect beschrieben ist, ist beim Hinzufügen von RStudio-Support nicht mehr erforderlich, da sie vom SageMaker Service verwaltet AppSecurityGroupManagement wird:

TCP-Verkehr innerhalb der Sicherheitsgruppe. Dies ist für die Konnektivität zwischen der JupyterServer App und den KernelGateway Apps erforderlich. Sie müssen den Zugriff auf mindestens Ports im Bereich 8192-65535“ zulassen.

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

Schritt 3 — Aktivieren Sie RStudio, indem Sie die UpdateDomain API aufrufen

  1. Rufen Sie die UpdateDomainAPI auf, um Unterstützung für RStudio hinzuzufügen. SageMaker Der defaultusersettings Parameter wird nur benötigt, wenn Sie die Standardsicherheitsgruppen für Ihre Benutzerprofile überarbeitet haben.

    • Für VPCOnly-Modus:

      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>\"]}"
    • Für PublicInternetOnly-Modus:

      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. Stellen Sie sicher, dass der Domänenstatus lautetInService. Sobald der Domänenstatus lautetInService, wird Unterstützung für RStudio on SageMaker hinzugefügt.

    aws sagemaker \ describe-domain \ --domain-id <DOMAIN_ID>
  3. Stellen Sie InService mithilfe des folgenden Befehls sicher, dass der Status der StudioServerPro R-App lautet.

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

Schritt 4 – RStudio-Zugriff für bestehende Benutzer hinzufügen

SageMaker Markiert im Rahmen des Updates in Schritt 3 das RStudio AccessStatusaller vorhandenen Benutzerprofile in der Domäne als DISABLED Standard. Dadurch wird verhindert, dass die in Ihrer aktuellen Lizenz zulässige Anzahl von Benutzern überschritten wird. Um den Zugriff für bestehende Benutzer hinzuzufügen, gibt es einen einmaligen Anmeldeschritt. Führen Sie das Opt-In durch, indem Sie die UpdateUserProfileAPI mit dem folgenden R StudioServerProAppSettings aufrufen:

  • AccessStatus = ENABLED

  • OptionalUserGroup = R_STUDIO_USER oder R_STUDIO_ADMIN

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

Standardmäßig beträgt die Anzahl der Benutzer, die Zugriff auf RStudio haben können, 60.

Schritt 5 – Deaktivieren Sie den RStudio-Zugriff für neue Benutzer

Sofern beim Aufruf nicht anders angegebenUpdateDomain, wird RStudio-Unterstützung standardmäßig für alle neuen Benutzerprofile hinzugefügt, die erstellt wurden, nachdem Sie die Unterstützung für RStudio aktiviert haben. SageMaker Um den Zugriff für ein neues Benutzerprofil zu deaktivieren, müssen Sie den Parameter AccessStatus im Rahmen des API-Aufrufs DISABLED ausdrücklich auf CreateUserProfile setzen. Wenn der AccessStatus Parameter nicht als Teil der CreateUserProfile API angegeben ist, lautet der Standardzugriffsstatus ENABLED.

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