View a markdown version of this page

Cree un dominio de Amazon SageMaker AI con RStudio mediante AWS CLI - Amazon SageMaker AI

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Cree un dominio de Amazon SageMaker AI con RStudio mediante AWS CLI

importante

Las políticas de IAM personalizadas que permiten a Amazon SageMaker Studio o Amazon SageMaker Studio Classic crear SageMaker recursos de Amazon también deben conceder permisos para añadir etiquetas a esos recursos. El permiso para añadir etiquetas a los recursos es necesario porque Studio y Studio Classic etiquetan automáticamente todos los recursos que crean. Si una política de IAM permite a Studio y Studio Classic crear recursos, pero no permite el etiquetado, se pueden producir errores de tipo AccessDenied «» al intentar crear recursos. Para obtener más información, consulte Proporcione permisos para etiquetar los recursos de SageMaker IA.

AWS políticas gestionadas para Amazon SageMaker AIque otorgan permisos para crear SageMaker recursos ya incluyen permisos para añadir etiquetas al crear esos recursos.

En el siguiente tema se muestra cómo incorporarse a un dominio de Amazon SageMaker AI con RStudio habilitado mediante. AWS CLI Para realizar la incorporación mediante el Consola de administración de AWS, consulteDescripción general del dominio Amazon SageMaker AI.

Requisitos previos

Crear el rol DomainExecution

Para iniciar la aplicación RStudio, debe proporcionar un rol DomainExecution. Esta función se utiliza para determinar si es necesario lanzar RStudio como parte de la creación de dominios de Amazon SageMaker AI. Amazon SageMaker AI también utiliza este rol para acceder a la licencia de RStudio y enviar los registros de RStudio. 

nota

El DomainExecution rol debe tener al menos AWS License Manager permisos para acceder a la licencia de RStudio y CloudWatch permisos para insertar registros en su cuenta.

El siguiente procedimiento muestra cómo crear el rol DomainExecution con AWS CLI.

  1. Cree un archivo llamado assume-role-policy.json con el siguiente contenido.

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "sagemaker.amazonaws.com" ] } } ] }
  2. Cree el rol DomainExecution<REGION> debería ser la región de AWS en la que se inicia el dominio.

    aws iam create-role --region <REGION> --role-name DomainExecution --assume-role-policy-document file://assume-role-policy.json
  3. Cree un archivo llamado domain-setting-policy.json con el siguiente contenido. Esta política permite que la RStudioServerPro aplicación acceda a los recursos necesarios y que Amazon SageMaker AI lance automáticamente una RStudioServerPro aplicación cuando la RStudioServerPro aplicación existente esté en Failed estado Deleted o.

    JSON
    { "Version":"2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "license-manager:ExtendLicenseConsumption", "license-manager:ListReceivedLicenses", "license-manager:GetLicense", "license-manager:CheckoutLicense", "license-manager:CheckInLicense", "logs:CreateLogDelivery", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DeleteLogDelivery", "logs:Describe*", "logs:GetLogDelivery", "logs:GetLogEvents", "logs:ListLogDeliveries", "logs:PutLogEvents", "logs:PutResourcePolicy", "logs:UpdateLogDelivery", "sagemaker:CreateApp" ], "Resource": "*" } ] }
  4. Cree la política de configuración de dominio asociada al rol DomainExecution. Tenga en cuenta el PolicyArn de la respuesta. Deberá introducir ese ARN en los siguientes pasos.

    aws iam create-policy --region <REGION> --policy-name domain-setting-policy --policy-document file://domain-setting-policy.json
  5. Asocie domain-setting-policy al rol DomainExecution. Utilice el PolicyArn devuelto en el paso anterior.

    aws iam attach-role-policy --role-name DomainExecution --policy-arn <POLICY_ARN>

Cree un dominio Amazon SageMaker AI con la aplicación RStudio

La RStudioServerPro aplicación se inicia automáticamente al crear un dominio de Amazon SageMaker AI mediante el comando create-domain CLI con el RStudioServerProDomainSettings parámetro especificado. Al iniciar la RStudioServerPro aplicación, Amazon SageMaker AI comprueba si hay una licencia de RStudio válida en la cuenta y no crea el dominio si no se encuentra la licencia.

La creación de un dominio Amazon SageMaker AI varía según el método de autenticación y el tipo de red. Estas opciones deben utilizarse juntas, con un método de autenticación y una tipo de conexión de red seleccionados. Para obtener más información sobre los requisitos para crear un dominio nuevo, consulte CreateDomain.

Se admiten los siguientes métodos de autenticación:

  • IAM Auth

  • SSO Auth

Se admiten los siguientes tipos de conexión de red:

  • PublicInternet

  • VPCOnly

Métodos de autenticación

Modo de autenticación IAM

A continuación, se muestra cómo crear un dominio de Amazon SageMaker AI con RStudio habilitado y un tipo IAM Auth de red. Para obtener más información AWS Identity and Access Management, consulte ¿Qué es IAM? .

  • DomainExecutionRoleArn debe ser el ARN del rol creado en el paso anterior.

  • ExecutionRolees el ARN de la función asignada a los usuarios en el dominio Amazon SageMaker AI.

  • vpc-id debe ser el ID de su Amazon Virtual Private Cloud. subnet-ids debe ser una lista separada por espacios de ID de subred. Para obtener más información sobre vpc-id y subnet-ids, consulte VPC y subredes.

  • RStudioPackageManagerUrl y RStudioConnectUrl son opcionales y deben configurarse en las direcciones URL de su servidor de RStudio Package Manager y de RStudio Connect, respectivamente.

  • app-network-access-type debe ser PublicInternetOnly o VPCOnly.

aws sagemaker create-domain --region <REGION> --domain-name <DOMAIN_NAME> \ --auth-mode IAM \ --default-user-settings ExecutionRole=<DEFAULT_USER_EXECUTIONROLE> \ --domain-settings RStudioServerProDomainSettings={RStudioPackageManagerUrl=<<PACKAGE_MANAGER_URL>,RStudioConnectUrl=<<CONNECT_URL>,DomainExecutionRoleArn=<DOMAINEXECUTION_ROLE_ARN>} \ --vpc-id <VPC_ID> \ --subnet-ids <SUBNET_IDS> \ --app-network-access-type <NETWORK_ACCESS_TYPE>

Autenticación mediante el Centro de identidades de IAM

A continuación, se muestra cómo crear un dominio de Amazon SageMaker AI con RStudio habilitado y un tipo SSO Auth de red. AWS IAM Identity Center debe estar habilitado para la región en la que se lanza el dominio. Para obtener más información sobre el Centro de identidad de IAM, consulte ¿Qué es? AWS IAM Identity Center .

  • DomainExecutionRoleArn debe ser el ARN del rol creado en el paso anterior.

  • ExecutionRolees el ARN de la función asignada a los usuarios en el dominio Amazon SageMaker AI.

  • vpc-id debe ser el ID de su Amazon Virtual Private Cloud. subnet-ids debe ser una lista separada por espacios de ID de subred. Para obtener más información sobre vpc-id y subnet-ids, consulte VPC y subredes.

  • RStudioPackageManagerUrl y RStudioConnectUrl son opcionales y deben configurarse en las direcciones URL de su servidor de RStudio Package Manager y de RStudio Connect, respectivamente.

  • app-network-access-type debe ser PublicInternetOnly o VPCOnly.

aws sagemaker create-domain --region <REGION> --domain-name <DOMAIN_NAME> \ --auth-mode SSO \ --default-user-settings ExecutionRole=<DEFAULT_USER_EXECUTIONROLE> \ --domain-settings RStudioServerProDomainSettings={RStudioPackageManagerUrl=<<PACKAGE_MANAGER_URL>,RStudioConnectUrl=<<CONNECT_URL>,DomainExecutionRoleArn=<DOMAINEXECUTION_ROLE_ARN>} \ --vpc-id <VPC_ID> \ --subnet-ids <SUBNET_IDS> \ --app-network-access-type <NETWORK_ACCESS_TYPE>

Tipos de conexión

PublicInternet/Direct Tipo de red de Internet

A continuación, se muestra cómo crear un dominio de Amazon SageMaker AI con RStudio habilitado y un tipo PublicInternet de red.

  • DomainExecutionRoleArn debe ser el ARN del rol creado en el paso anterior.

  • ExecutionRolees el ARN de la función asignada a los usuarios en el dominio Amazon SageMaker AI.

  • vpc-id debe ser el ID de su Amazon Virtual Private Cloud. subnet-ids debe ser una lista separada por espacios de ID de subred. Para obtener más información sobre vpc-id y subnet-ids, consulte VPC y subredes.

  • RStudioPackageManagerUrl y RStudioConnectUrl son opcionales y deben configurarse en las direcciones URL de su servidor de RStudio Package Manager y de RStudio Connect, respectivamente.

  • auth-mode debe ser SSO o IAM.

aws sagemaker create-domain --region <REGION> --domain-name <DOMAIN_NAME> \ --auth-mode <AUTH_MODE> \ --default-user-settings ExecutionRole=<DEFAULT_USER_EXECUTIONROLE> \ --domain-settings RStudioServerProDomainSettings={RStudioPackageManagerUrl=<<PACKAGE_MANAGER_URL>,RStudioConnectUrl=<<CONNECT_URL>,DomainExecutionRoleArn=<DOMAINEXECUTION_ROLE_ARN>} \ --vpc-id <VPC_ID> \ --subnet-ids <SUBNET_IDS> \ --app-network-access-type PublicInternetOnly

Modo VPCOnly

A continuación, se muestra cómo lanzar un dominio de Amazon SageMaker AI con RStudio habilitado y un tipo VPCOnly de red. Para obtener más información sobre el uso del tipo de acceso de red VPCOnly, consulte Conexión de cuadernos de Studio en una VPC a recursos externos.

  • DomainExecutionRoleArn debe ser el ARN del rol creado en el paso anterior.

  • ExecutionRolees el ARN de la función asignada a los usuarios en el dominio Amazon SageMaker AI.

  • vpc-id debe ser el ID de su Amazon Virtual Private Cloud. subnet-ids debe ser una lista separada por espacios de ID de subred. Su subred privada debe poder acceder a Internet para realizar una llamada a Amazon SageMaker AI AWS License Manager o tener puntos de enlace de Amazon VPC para Amazon SageMaker AI y. AWS License ManagerPara obtener información sobre los puntos de conexión de VPC de Amazon, consulte Interfaz de puntos de conexión de VPC de Amazon. Para obtener información sobre vpc-id y subnet-ids, consulte VPC y subredes.

  • SecurityGroupsdebe permitir el acceso saliente a Amazon SageMaker AI y a los puntos AWS License Manager finales.

  • auth-mode debe ser SSO o IAM.

nota

Cuando utilice puntos de conexión de Amazon Virtual Private Cloud, el grupo de seguridad asociado a sus puntos de conexión de Amazon Virtual Private Cloud debe permitir el tráfico entrante desde el grupo de seguridad que pase como parte del parámetro domain-setting de la llamada de create-domain CLI.

Con RStudio, Amazon SageMaker AI administra los grupos de seguridad por usted. Esto significa que Amazon SageMaker AI administra las reglas de los grupos de seguridad para garantizar que las RSessions puedan acceder a RStudioServerPro las aplicaciones. Amazon SageMaker AI crea una regla de grupo de seguridad por perfil de usuario.

aws sagemaker create-domain --region <REGION> --domain-name <DOMAIN_NAME> \ --auth-mode <AUTH_MODE> \ --default-user-settings SecurityGroups=<USER_SECURITY_GROUP>,ExecutionRole=<DEFAULT_USER_EXECUTIONROLE> \ --domain-settings SecurityGroupIds=<DOMAIN_SECURITY_GROUP>,RStudioServerProDomainSettings={DomainExecutionRoleArn=<DOMAINEXECUTION_ROLE_ARN>} \ --vpc-id <VPC_ID> \ --subnet-ids "<SUBNET_IDS>" \ --app-network-access-type VPCOnly --app-security-group-management Service

Nota: La RStudioServerPro aplicación se inicia mediante un perfil de usuario especial denominadodomain-shared. Por ello, ningún otro perfil de usuario devuelve esta aplicación como parte de las llamadas de la API list-app.

Puede que tenga que aumentar la cuota de VPC de Amazon en su cuenta para incrementar el número de usuarios. Para obtener más información, consulte Cuotas de VPC de Amazon.

Comprobación de la creación del dominio

Utilice el siguiente comando para comprobar que el dominio se haya creado con un Status de InService. El domain-id se añade al ARN del dominio. Por ejemplo, arn:aws:sagemaker:<REGION>:<ACCOUNT_ID>:domain/<DOMAIN_ID>.

aws sagemaker describe-domain --domain-id <DOMAIN_ID> --region <REGION>