

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.

# Preparación de datos con Amazon EMR
<a name="studio-notebooks-emr-cluster"></a>

**importante**  
Amazon SageMaker Studio y Amazon SageMaker Studio Classic son dos de los entornos de aprendizaje automático que puede utilizar para interactuar con la SageMaker IA.  
Si su dominio se creó después del 30 de noviembre de 2023, Studio es su experiencia predeterminada.  
Si tu dominio se creó antes del 30 de noviembre de 2023, Amazon SageMaker Studio Classic es tu experiencia predeterminada. Para usar Studio si Amazon SageMaker Studio Classic es tu experiencia predeterminada, consulta[Migración desde Amazon SageMaker Studio Classic](studio-updated-migrate.md).  
Al migrar de Amazon SageMaker Studio Classic a Amazon SageMaker Studio, no se pierde la disponibilidad de las funciones. Studio Classic también existe como una aplicación en Amazon SageMaker Studio para ayudarle a ejecutar sus flujos de trabajo de aprendizaje automático tradicionales.

Amazon SageMaker Studio y Studio Classic incluyen una integración integrada con [Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-what-is-emr.html). [Dentro JupyterLab de las libretas Studio Classic, los científicos e ingenieros de datos pueden descubrir y conectarse a los clústeres Amazon EMR existentes y, a continuación, explorar, visualizar y preparar datos a gran escala de forma interactiva para el aprendizaje automático [mediante Apache Spark[, Apache](https://aws.amazon.com/emr/features/hive)](https://aws.amazon.com/emr/features/spark) Hive o Presto.](https://aws.amazon.com/emr/features/presto) Con un solo clic, pueden acceder a la IU de Spark para supervisar el estado y las métricas de sus trabajos de Spark sin moverse de su cuaderno.

Los administradores pueden crear [plantillas de CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html) que definan los clústeres de Amazon EMR. A continuación, pueden hacer que esas plantillas de clústeres estén disponibles en [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/userguide/end-user-console.html) para que los usuarios de Studio y Studio Classic puedan inicializarlas. A continuación, los científicos de datos pueden elegir una plantilla predefinida para autoaprovisionar un clúster de Amazon EMR directamente desde su entorno de Studio. Los administradores pueden parametrizar aún más las plantillas para que los usuarios puedan elegir aspectos del clúster dentro de unos valores predefinidos. Por ejemplo, es posible que los usuarios deseen especificar el número de nodos principales o seleccionar el tipo de instancia de un nodo en un menú desplegable.

Con él CloudFormation, los administradores pueden controlar la configuración organizativa, de seguridad y de red de los clústeres de Amazon EMR. Luego, los científicos e ingenieros de datos pueden personalizar esas plantillas para sus cargas de trabajo con el fin de crear clústeres de Amazon EMR bajo demanda directamente desde Studio y Studio Classic sin tener que realizar configuraciones complejas. Los usuarios pueden terminar los clústeres de Amazon EMR después de utilizarlos.
+ **Si es un administrador**:

  Asegúrese de haber habilitado la comunicación entre los clústeres de Studio o Studio Classic y Amazon EMR. Para obtener instrucciones, consulte la sección [Configuración de acceso a la red para su clúster de Amazon EMR](studio-notebooks-emr-networking.md). Una vez habilitada esta comunicación, puede:
  + [Configurar las CloudFormation plantillas de Amazon EMR en el Service Catalog](studio-notebooks-set-up-emr-templates.md)
  + [Configuración de la lista de clústeres de Amazon EMR](studio-notebooks-configure-discoverability-emr-cluster.md)
+ **Si es científico de datos o ingeniero de datos**, puede:
  + [Inicialización de un clúster de Amazon EMR desde Studio o Studio Classic](studio-notebooks-launch-emr-cluster-from-template.md)
  + [Enumeración de clústeres de Amazon EMR desde Studio o Studio Classic](discover-emr-clusters.md)
  + [Conéctese a un clúster de Amazon EMR desde SageMaker Studio o Studio Classic](connect-emr-clusters.md)
  + [Finalización de un clúster de Amazon EMR desde Studio o Studio Classic](terminate-emr-clusters.md)
  + [Acceso a la interfaz de usuario de Spark desde Studio o Studio Classic](studio-notebooks-access-spark-ui.md)

**Topics**
+ [Inicio rápido: cree un dominio sandbox de SageMaker IA para lanzar clústeres de Amazon EMR en Studio](studio-notebooks-emr-cluster-quickstart.md)
+ [Guía de administración](studio-emr-admin-guide.md)
+ [Guía del usuario](studio-emr-user-guide.md)
+ [Blogs y documentos técnicos](studio-notebooks-emr-resources.md)
+ [Resolución de problemas](studio-notebooks-emr-troubleshooting.md)

# Inicio rápido: cree un dominio sandbox de SageMaker IA para lanzar clústeres de Amazon EMR en Studio
<a name="studio-notebooks-emr-cluster-quickstart"></a>

En esta sección, se explica la configuración rápida de un entorno de pruebas completo en Amazon SageMaker Studio. Creará un nuevo dominio de Studio que permitirá a los usuarios inicializar nuevos clústeres de Amazon EMR directamente desde Studio. Los pasos proporcionan un ejemplo de cuaderno que puede conectar a un clúster de Amazon EMR para empezar a ejecutar cargas de trabajo de Spark. Con este cuaderno, creará un sistema de generación aumentada (RAG) de recuperación utilizando el procesamiento distribuido y la base de datos vectoriales Amazon EMR Spark. OpenSearch 

**nota**  
Para empezar, inicie sesión en la consola de AWS administración con una cuenta de usuario AWS Identity and Access Management (IAM) con permisos de administrador. Para obtener más información sobre cómo registrar una cuenta de AWS y crear un usuario con acceso administrativo, consulte [Complete los requisitos previos de Amazon SageMaker AI](gs-set-up.md).

**Para configurar el entorno de pruebas de Studio y empezar a ejecutar trabajos de Spark:**
+ [Paso 1: Crear un dominio de SageMaker IA para lanzar clústeres de Amazon EMR en Studio](#studio-notebooks-emr-cluster-quickstart-setup)
+ [Paso 2: inicialización de un nuevo clúster de Amazon EMR desde la interfaz de usuario de Studio](#studio-notebooks-emr-cluster-quickstart-launch)
+ [Paso 3: Conectar un JupyterLab portátil al clúster de Amazon EMR](#studio-notebooks-emr-cluster-quickstart-connect)
+ [Paso 4: Limpia tu pila CloudFormation](#studio-notebooks-emr-cluster-quickstart-clean-stack)

## Paso 1: Crear un dominio de SageMaker IA para lanzar clústeres de Amazon EMR en Studio
<a name="studio-notebooks-emr-cluster-quickstart-setup"></a>

En los siguientes pasos, aplicará una CloudFormation pila para crear automáticamente un nuevo dominio de SageMaker IA. La pila también crea un perfil de usuario y configura el entorno y los permisos necesarios. El dominio de SageMaker IA está configurado para permitirle lanzar directamente clústeres de Amazon EMR desde Studio. En este ejemplo, los clústeres de Amazon EMR se crean en la misma AWS cuenta que SageMaker AI sin autenticación. [Puede encontrar CloudFormation pilas adicionales que admiten varios métodos de autenticación, como Kerberos, en el repositorio getting\$1started.](https://github.com/aws-samples/sagemaker-studio-emr/tree/main/cloudformation/getting_started) GitHub 

**nota**  
SageMaker AI permite 5 dominios de Studio por AWS cuenta y de forma predeterminada. Región de AWS Asegúrese de que su cuenta no tenga más de 4 dominios en su región antes de crear la pila.

**Siga estos pasos para configurar un dominio de SageMaker IA para lanzar clústeres de Amazon EMR desde Studio.**

1. Descargue el archivo sin procesar de esta [CloudFormation plantilla](https://github.com/aws-samples/sagemaker-studio-foundation-models/blob/main/workshop-artifacts/cfn/workshop-cfn.yaml) desde el `sagemaker-studio-emr` GitHub repositorio.

1. Ve a la CloudFormation consola: [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/)

1. Elija **Crear pila** y seleccione **Con recursos nuevos (estándar)** en el menú desplegable.

1. En el **paso 1**:

   1. En la sección **Preparar la plantilla**, seleccione **Elegir una plantilla existente**.

   1. En la sección **Especificar plantilla**, elija **Cargar un archivo de plantilla**.

   1. **Cargue la CloudFormation plantilla descargada y seleccione Siguiente.**

1. En el **paso 2**, introduce un **nombre para la pila** y **SageMakerDomainName**, a continuación, selecciona **Siguiente**.

1. En el **paso 3**, mantenga todos los valores predeterminados y elija **Siguiente**.

1. En el **paso 4**, marque la casilla para confirmar la creación del recurso y seleccione **Crear pila**. De este modo, se crea un dominio de Studio en su cuenta y región.

## Paso 2: inicialización de un nuevo clúster de Amazon EMR desde la interfaz de usuario de Studio
<a name="studio-notebooks-emr-cluster-quickstart-launch"></a>

En los siguientes pasos, creará un nuevo clúster de Amazon EMR desde la IU de Studio.

1. Ve a la consola de SageMaker IA [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)y selecciona **Dominios** en el menú de la izquierda.

1. Haz clic en el **Generativo** de tu nombre de dominio AIDomain para abrir la página de **detalles del dominio**.

1. Inicialización de Studio desde el perfil de usuario `genai-user`.

1. En el panel de navegación izquierdo, vaya a **Datos** y luego a **Clústeres de Amazon EMR**.

1. En la página de clústeres de Amazon EMR , elija **Crear**. **Seleccione la plantilla **SageMaker Studio Domain No Auth EMR** creada por CloudFormation la pila y, a continuación, elija Siguiente.**

1. Introduzca el nombre del nuevo clúster de Amazon EMR. Si lo desea, actualice otros parámetros, como el tipo de instancia de los nodos principales y maestros, el tiempo de espera de inactividad o la cantidad de nodos principales.

1. Elija **Crear recurso** para inicializar el nuevo clúster de Amazon EMR. 

   Tras crear el clúster de Amazon EMR, siga el estado en la página **Clústeres de EMR**. Cuando el estado cambie a `Running/Waiting`, el clúster de Amazon EMR estará listo para usarse en Studio.

## Paso 3: Conectar un JupyterLab portátil al clúster de Amazon EMR
<a name="studio-notebooks-emr-cluster-quickstart-connect"></a>

En los siguientes pasos, conectará un portátil JupyterLab al clúster de Amazon EMR en ejecución. Para este ejemplo, importa un bloc de notas que le permite crear un sistema de generación aumentada de recuperación (RAG) mediante el procesamiento distribuido y la base de datos vectoriales de Amazon EMR Spark. OpenSearch 

1. 

**Lance JupyterLab**

   Desde Studio, inicia la JupyterLab aplicación.

1. 

**Creación de un espacio privado**

   Si no ha creado un espacio para JupyterLab la aplicación, elija **Crear un JupyterLab espacio**. Introduzca un nombre para el espacio y manténgalo como **Privado**. Deje todas las demás configuraciones en sus valores predeterminados y, a continuación, elija **Crear espacio**. 

   De lo contrario, ejecute su JupyterLab espacio para iniciar una JupyterLab aplicación.

1. 

**Implementación de su LLM y sus modelos de incrustación para la inferencia**
   + En el menú superior, seleccione **Archivo**, **Nuevo** y, a continuación, **Terminal**.
   + En el terminal, ejecute el siguiente comando:

     ```
     wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-00-setup/Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb
     mkdir AWSGuides
     cd AWSGuides
     wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/AmazonSageMakerDeveloperGuide.pdf
     wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/EC2DeveloperGuide.pdf
     wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/AWSGuides/S3DeveloperGuide.pdf
     ```

     Al hacerlo, se recupera el cuaderno `Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb` en su directorio local y se descargan tres archivos PDF en una carpeta de `AWSGuides` local.
   + Abra `lab-00-setup/Lab_0_Warm_Up_Deploy_EmbeddingModel_Llama2_on_Nvidia.ipynb`, conserve el kernel `Python 3 (ipykernel)` y ejecute cada celda.
**aviso**  
En la sección **Acuerdo de licencia de Llama 2**, asegúrese de aceptar el EULA de Llama2 antes de continuar.  
El cuaderno implementa dos modelos, `Llama 2` y `all-MiniLM-L6-v2 Models`, en `ml.g5.2xlarge` para realizar la inferencia.

     La implementación de los modelos y la creación de los puntos de conexión puede llevar algún tiempo.

1. 

**Apertura del cuaderno principal**

   En JupyterLab, abre tu terminal y ejecuta el siguiente comando.

   ```
   cd ..
   wget --no-check-certificate https://raw.githubusercontent.com/aws-samples/sagemaker-studio-foundation-models/main/lab-03-rag/Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb
   ```

   Deberías ver el `Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb` cuaderno adicional en el panel izquierdo de JupyterLab.

1. 

**Seleccione un kernel de `PySpark`.**

   Abra su cuaderno de `Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb` y asegúrese de que está usando el kernel `SparkMagic PySpark`. Puede cambiar de kernel en la parte superior derecha de su cuaderno. Elija el nombre del kernel actual para abrir un modal de selección del kernel y, a continuación, elija`SparkMagic PySpark`.

1. 

**Conexión del cuaderno al clúster**

   1. En la parte superior del cuaderno, elija **Clúster**. Esta acción abre una ventana modal en la que se enumeran todos los clústeres en ejecución para los que tiene permiso de acceso. 

   1. Seleccione su clúster y elija **Conectar**. Se abre una nueva ventana modal de selección del tipo de credencial.

   1. Elija **No hay credenciales** y luego **Conectar**.  
![\[Modal que muestra una selección de credenciales de Amazon EMR para JupyterLab cuadernos.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/studio/emr/studio-notebooks-emr-credential-selection.png)

   1. Se rellena y ejecuta automáticamente una celda del cuaderno. La celda del cuaderno carga la extensión `sagemaker_studio_analytics_extension.magics`, que proporciona la funcionalidad para conectarse al clúster de Amazon EMR. A continuación, utiliza el comando mágico `%sm_analytics` para iniciar la conexión con el clúster de Amazon EMR y la aplicación de Spark.
**nota**  
Asegúrese de que la cadena de conexión a su clúster de Amazon EMR tenga un tipo de autenticación establecido en `None`. Esto se ilustra con el valor `--auth-type None` en el siguiente ejemplo. Puede modificar el campo si es necesario.  

      ```
      %load_ext sagemaker_studio_analytics_extension.magics
      %sm_analytics emr connect --verify-certificate False --cluster-id your-cluster-id --auth-type None --language python
      ```

   1. Una vez que haya establecido correctamente la conexión, el mensaje de salida de la celda de conexión debería mostrar sus detalles de `SparkSession`, incluidos el ID del clúster, el ID de la aplicación `YARN` y un enlace a la interfaz de usuario de Spark para supervisar sus trabajos de Spark.

Ya está listo para usar el cuaderno de `Lab_3_RAG_on_SageMaker_Studio_using_EMR.ipynb`. Este cuaderno de ejemplo ejecuta PySpark cargas de trabajo distribuidas para crear un sistema RAG utilizando y. LangChain OpenSearch

## Paso 4: Limpia tu pila CloudFormation
<a name="studio-notebooks-emr-cluster-quickstart-clean-stack"></a>

Cuando termine, asegúrese de terminar sus dos puntos de conexión y de eliminar su pila de CloudFormation para evitar que le sigan cobrando. Al eliminar la pila, se limpian todos los recursos aprovisionados por la pila.

**Para eliminar tu CloudFormation pila cuando termines de usarla**

1. Ve a la CloudFormation consola: [https://console.aws.amazon.com/cloudformation](https://console.aws.amazon.com/cloudformation/)

1. Seleccione la pila que desea eliminar. Puede buscarla por su nombre o en la lista de pilas.

1. Haga clic en el botón **Eliminar** para finalizar la eliminación de la pila y, a continuación, en **Eliminar** de nuevo para confirmar que se eliminarán todos los recursos creados por la pila.

   Espere a que finalice la eliminación de la pila. Esto puede tardar unos minutos. CloudFormation limpia automáticamente todos los recursos definidos en la plantilla de pila.

1. Compruebe que se hayan eliminado todos los recursos creados por la pila. Por ejemplo, compruebe si sobra algún clúster de Amazon EMR.

**Eliminación de los puntos de conexión de la API de un modelo**

1. Ve a la consola de SageMaker IA:. [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/)

1. En el panel de navegación, seleccione **Inferencia** y elija **Puntos de conexión**.

1. Seleccione el punto de conexión `hf-allminil6v2-embedding-ep` y, a continuación, elija **Eliminar** en la lista desplegable **Acciones**. Repita el paso para el punto de conexión `meta-llama2-7b-chat-tg-ep`.

# Guía de administración
<a name="studio-emr-admin-guide"></a>

En esta sección, se proporcionan los requisitos previos e instrucciones de red para permitir la comunicación entre los clústeres de Studio o Studio Classic y Amazon EMR. Abarca diferentes escenarios de implementación: cuando Studio y Amazon EMR se aprovisionan en Amazon privado VPCs sin acceso público a Internet, así como cuando necesitan comunicarse a través de Internet.

Explica cómo los administradores pueden utilizarlas para poner las CloudFormation plantillas AWS Service Catalog a disposición de Studio, lo que permite a los científicos de datos descubrir y autoaprovisionar clústeres de Amazon EMR directamente desde Studio. Esto implica crear una cartera de Service Catalog, conceder los permisos necesarios, hacer referencia a las plantillas de Amazon EMR y parametrizarlas para permitir personalizaciones durante la creación del clúster.

Por último, proporciona orientación sobre la configuración de la capacidad de detección de clústeres de Amazon EMR existentes en ejecución de Studio y Studio Classic, y abarca los escenarios de acceso entre cuentas y cuentas únicas, además de los permisos de IAM necesarios.

**Topics**
+ [Configurar las CloudFormation plantillas de Amazon EMR en el Service Catalog](studio-notebooks-set-up-emr-templates.md)
+ [Configuración de la lista de clústeres de Amazon EMR](studio-notebooks-configure-discoverability-emr-cluster.md)
+ [Configuración de roles de tiempo de ejecución de IAM para el acceso al clúster de Amazon EMR en Studio](studio-notebooks-emr-cluster-rbac.md)
+ [Políticas de referencia](studio-set-up-emr-permissions-reference.md)

# Configurar las CloudFormation plantillas de Amazon EMR en el Service Catalog
<a name="studio-notebooks-set-up-emr-templates"></a>

En este tema se presupone que los administradores están familiarizados con [CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/Welcome.html)[las carteras y los productos de Amazon EMR AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/getstarted-portfolio.html), así como con [Amazon EMR.](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-gs.html)

Para simplificar la creación de clústeres de Amazon EMR desde Studio, los administradores pueden registrar una [ CloudFormation plantilla de Amazon EMR](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticmapreduce-cluster.html) como producto de una cartera. [AWS Service Catalog](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/introduction.html) Para poner la plantilla a disposición de los científicos de datos, deben asociar la cartera con la función de ejecución de la SageMaker IA utilizada en Studio o Studio Classic. Por último, para que los usuarios puedan detectar plantillas, aprovisionar los clústeres y conectarse a los clústeres de Amazon EMR desde Studio o Studio Classic, los administradores deben establecer los permisos de acceso adecuados.

Las CloudFormation plantillas de Amazon EMR permiten a los usuarios finales personalizar varios aspectos del clúster. Por ejemplo, los administradores pueden definir una lista aprobada de tipos de instancias que los usuarios pueden elegir al crear un clúster.

En las siguientes instrucciones, se utilizan end-to-end [CloudFormation pilas](https://github.com/aws-samples/sagemaker-studio-emr/tree/main/cloudformation/getting_started) para configurar un dominio de Studio o Studio Classic, un perfil de usuario, una cartera de Service Catalog y rellenar una plantilla de lanzamiento de Amazon EMR. En los siguientes pasos se destacan los ajustes específicos que los administradores deben aplicar en su end-to-end pila para permitir que Studio o Studio Classic accedan a los productos de Service Catalog y aprovisione los clústeres de Amazon EMR.

**nota**  
El GitHub repositorio [aws-samples/ sagemaker-studio-emr](https://github.com/aws-samples/sagemaker-studio-emr/tree/main/cloudformation/getting_started) contiene end-to-end CloudFormation pilas de ejemplos que implementan las funciones de IAM, las redes, el SageMaker dominio, el perfil de usuario y la cartera de Service Catalog necesarios y añaden una plantilla de lanzamiento de Amazon EMR. CloudFormation Las plantillas proporcionan diferentes opciones de autenticación entre Studio o Studio Classic y el clúster de Amazon EMR. En estas plantillas de ejemplo, la CloudFormation pila principal transfiere los parámetros de la VPC de SageMaker IA, el grupo de seguridad y la subred a la plantilla de clúster de Amazon EMR.  
El repositorio [sagemaker-studio-emr/cloudformation/emr\$1servicecatalog\$1templates contiene varios ejemplos de plantillas](https://github.com/aws-samples/sagemaker-studio-emr/tree/main/cloudformation/emr_servicecatalog_templates) de lanzamiento de Amazon CloudFormation EMR, incluidas opciones para despliegues con una o varias cuentas.  
Consulte [Conéctese a un clúster de Amazon EMR desde SageMaker Studio o Studio Classic](connect-emr-clusters.md) para obtener más información sobre los métodos de autenticación que puede utilizar para conectarse a un clúster de Amazon EMR.

Para permitir que los científicos de datos descubran las CloudFormation plantillas de Amazon EMR y aprovisionar clústeres desde Studio o Studio Classic, siga estos pasos.

## Paso 0: Compruebe su red y prepare su plantilla CloudFormation
<a name="studio-set-up-emr-prereq"></a>

Antes de comenzar:
+ Asegúrese de haber revisado los requisitos de red y seguridad en [Configuración de acceso a la red para su clúster de Amazon EMR](studio-notebooks-emr-networking.md).
+ Debe tener una end-to-end CloudFormation pila existente que sea compatible con el método de autenticación que elija. Puede encontrar ejemplos de este tipo de CloudFormation plantillas en el repositorio [aws-samples/ sagemaker-studio-emr](https://github.com/aws-samples/sagemaker-studio-emr/tree/main/cloudformation/getting_started) GitHub . En los siguientes pasos, se destacan las configuraciones específicas de la end-to-end pila para permitir el uso de plantillas de Amazon EMR en Studio o Studio Classic. 

## Paso 1: Asocie su cartera de Service Catalog a la SageMaker IA
<a name="studio-set-up-emr-service-catalog-portfolio"></a>

**En su cartera de Service Catalog**, asocie su ID de cartera con la función de ejecución de SageMaker IA que accede a su clúster.

Para ello, añada la siguiente sección (aquí en formato YAML) a su pila. Esto otorga al rol de ejecución de SageMaker IA acceso a la cartera de Service Catalog especificada que contiene productos como las plantillas de Amazon EMR. Permite que la SageMaker IA asuma las funciones para lanzar esos productos.

 Sustituya *SageMakerExecutionRole.Arn* y *SageMakerStudioEMRProductPortfolio.ID* por sus valores reales.

```
SageMakerStudioEMRProductPortfolioPrincipalAssociation:
    Type: AWS::ServiceCatalog::PortfolioPrincipalAssociation
    Properties:
      PrincipalARN: SageMakerExecutionRole.Arn
      PortfolioId: SageMakerStudioEMRProductPortfolio.ID
      PrincipalType: IAM
```

Para obtener más información sobre el conjunto necesario de permisos de IAM, consulte la sección sobre [permisos](#studio-emr-permissions).

## Paso 2: referencia a una plantilla de Amazon EMR en un producto de Service Catalog
<a name="studio-set-up-emr-service-catalog-product"></a>

**En un producto de Service Catalog de su cartera**, haga referencia a un recurso de plantilla de Amazon EMR y garantice su visibilidad en Studio o Studio Classic. 

Para ello, haga referencia al recurso de plantilla de Amazon EMR en la definición del producto de Service Catalog y, a continuación, añada el siguiente conjunto `"sagemaker:studio-visibility:emr"` de claves de etiquetas al valor `"true"` (consulte el ejemplo en formato YAML).

En la definición del producto de Service Catalog, se hace referencia a la CloudFormation plantilla del clúster mediante una URL. La etiqueta adicional establecida en true garantiza la visibilidad de las plantillas de Amazon EMR en Studio o Studio Classic. 

**nota**  
La plantilla de Amazon EMR a la que hace referencia la URL proporcionada en el ejemplo no exige ningún requisito de autenticación cuando se inicializa. Esta opción está pensada para fines de demostración y aprendizaje. No se recomienda en un entorno de producción.

```
SMStudioEMRNoAuthProduct:
    Type: AWS::ServiceCatalog::CloudFormationProduct
    Properties:
      Owner: AWS
      Name: SageMaker Studio Domain No Auth EMR
      ProvisioningArtifactParameters:
        - Name: SageMaker Studio Domain No Auth EMR
          Description: Provisions a SageMaker domain and No Auth EMR Cluster
          Info:
            LoadTemplateFromURL: Link to your CloudFormation template. For example, https://aws-blogs-artifacts-public.s3.amazonaws.com/artifacts/astra-m4-sagemaker/end-to-end/CFN-EMR-NoStudioNoAuthTemplate-v3.yaml
      Tags:
        - Key: "sagemaker:studio-visibility:emr"
          Value: "true"
```

## Paso 3: parametrizar la plantilla Amazon EMR CloudFormation
<a name="studio-set-up-emr-cfn-template"></a>

**La CloudFormation plantilla utilizada para definir el clúster de Amazon EMR en el producto Service Catalog** permite a los administradores especificar parámetros configurables. Los administradores pueden definir valores `Default` y rangos `AllowedValues` para estos parámetros en la sección `Parameters` de la plantilla. Durante el proceso de inicialización del clúster, los científicos de datos pueden proporcionar entradas personalizadas o seleccionar entre esas opciones predefinidas para personalizar determinados aspectos de su clúster de Amazon EMR.

El siguiente ejemplo ilustra los parámetros de entrada adicionales que los administradores pueden establecer al crear una plantilla de Amazon EMR.

```
"Parameters": {
    "EmrClusterName": {
      "Type": "String",
      "Description": "EMR cluster Name."
    },
    "MasterInstanceType": {
      "Type": "String",
      "Description": "Instance type of the EMR master node.",
      "Default": "m5.xlarge",
      "AllowedValues": [
        "m5.xlarge",
        "m5.2xlarge",
        "m5.4xlarge"
      ]
    },
    "CoreInstanceType": {
      "Type": "String",
      "Description": "Instance type of the EMR core nodes.",
      "Default": "m5.xlarge",
      "AllowedValues": [
        "m5.xlarge",
        "m5.2xlarge",
        "m5.4xlarge",
        "m3.medium",
        "m3.large",
        "m3.xlarge",
        "m3.2xlarge"
      ]
    },
    "CoreInstanceCount": {
      "Type": "String",
      "Description": "Number of core instances in the EMR cluster.",
      "Default": "2",
      "AllowedValues": [
        "2",
        "5",
        "10"
      ]
    },
    "EmrReleaseVersion": {
      "Type": "String",
      "Description": "The release version of EMR to launch.",
      "Default": "emr-5.33.1",
      "AllowedValues": [
        "emr-5.33.1",
        "emr-6.4.0"
      ]
    }
  }
```

Una vez que los administradores hayan hecho que las CloudFormation plantillas de Amazon EMR estén disponibles en Studio, los científicos de datos pueden utilizarlas para aprovisionar automáticamente los clústeres de Amazon EMR. La sección `Parameters` definida en la plantilla se traduce en campos de entrada en el formulario de creación del clúster en Studio o Studio Classic. Para cada parámetro, los científicos de datos pueden introducir un valor personalizado en el cuadro de entrada o seleccionar una de las opciones predefinidas que aparecen en un menú desplegable, que corresponde a los `AllowedValues` especificados en la plantilla.

La siguiente ilustración muestra el formulario dinámico ensamblado a partir de una plantilla de CloudFormation Amazon EMR para crear un clúster de Amazon EMR en Studio o Studio Classic.

![\[Ilustración de un formulario dinámico ensamblado a partir de una plantilla de CloudFormation Amazon EMR para crear un clúster de Amazon EMR desde Studio o Studio Classic.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/studio/emr/studio-notebooks-emr-cluster-creation.png)


Visite [Inicialización de un clúster de Amazon EMR desde Studio o Studio Classic](studio-notebooks-launch-emr-cluster-from-template.md) para aprender a inicializar un clúster desde Studio o Studio Classic con esas plantillas de Amazon EMR.

## Paso 4: configuración de los permisos para habilitar la enumeración y la inicialización de clústeres de Amazon EMR desde Studio
<a name="studio-emr-permissions"></a>

Por último, asocie los permisos de IAM necesarios para poder enumerar los clústeres de Amazon EMR existentes en ejecución y autoaprovisionar nuevos clústeres desde Studio o Studio Classic.

El rol o roles a los que debe añadir esos permisos depende de si Studio o Studio Classic y Amazon EMR están implementados en la misma cuenta (elija *Cuenta única*) o en cuentas diferentes (elija *Entre cuentas*).

**importante**  
Solo puede descubrir clústeres de Amazon EMR y conectarse a ellos para JupyterLab aplicaciones de Studio Classic que se lancen desde espacios privados. Asegúrese de que los clústeres de Amazon EMR estén ubicados en la misma AWS región que su entorno de Studio.

### Cuenta única
<a name="studio-set-up-emr-permissions-singleaccount"></a>

Si sus clústeres de Amazon EMR y Studio o Studio Classic están implementados en la misma AWS cuenta, asocie los siguientes permisos a la función de ejecución de SageMaker IA que accede a su clúster.

1. **Paso 1**: recupere el ARN del rol de ejecución de SageMaker IA utilizado en su espacio privado.

   Para obtener información sobre los espacios y las funciones de ejecución en la SageMaker IA, consulte[Descripción de los permisos y roles de ejecución de espacio de dominio](execution-roles-and-spaces.md).

   Para obtener más información sobre cómo recuperar el ARN de la función de ejecución de la SageMaker IA, consulte. [Obtención del rol de ejecución](sagemaker-roles.md#sagemaker-roles-get-execution-role)

1. **Paso 2**: Adjunte los siguientes permisos a la función de ejecución de SageMaker IA que accede a sus clústeres de Amazon EMR.

   1. Vaya a la [consola de IAM](https://console.aws.amazon.com/iam).

   1. Elija **Roles** y, a continuación, busque su rol de ejecución por su nombre en el campo **Buscar**. El nombre del rol se encuentra en la última parte del ARN, después de la última barra diagonal (/). 

   1. Siga el enlace a su rol.

   1. Elija **Agregar permisos** y, a continuación, **Crear política insertada**.

   1. En la pestaña **JSON**, añada los permisos de Amazon EMR que permiten el acceso y las operaciones de Amazon EMR. Para obtener más información sobre el documento de política, consulte *List Amazon EMR policies* en [Políticas de referencia](studio-set-up-emr-permissions-reference.md). Sustituya `region` y `accountID` por sus valores reales antes de copiar la lista de instrucciones a la política insertada de su rol.

   1. Elija **Siguiente** y, a continuación, proporcione un **Nombre de política**.

   1. Elija **Crear política**.

   1. Repita el paso **Crear política insertada** para añadir otra política que conceda al rol de ejecución los permisos para aprovisionar nuevos clústeres de Amazon EMR mediante plantillas de CloudFormation . Para obtener más información sobre el documento de política, consulta *Crear EMRclusters políticas de Amazon* en[Políticas de referencia](studio-set-up-emr-permissions-reference.md). Sustituya `region` y `accountID` por sus valores reales antes de copiar la lista de instrucciones a la política insertada de su rol.

**nota**  
Los usuarios de la conectividad del control de acceso basado en roles (RBAC) con los clústeres de Amazon EMR también deben consultar [Configuración de la autenticación de roles en tiempo de ejecución cuando el clúster de Amazon EMR y Studio están en la misma cuenta](studio-notebooks-emr-cluster-rbac.md#studio-notebooks-emr-cluster-iam-same). 

### Entre cuentas
<a name="studio-set-up-emr-permissions-crossaccount"></a>

Antes de empezar, recupere el ARN de la función de ejecución de SageMaker IA utilizada en su espacio privado.

Para obtener información sobre los espacios y las funciones de ejecución en la SageMaker IA, consulte[Descripción de los permisos y roles de ejecución de espacio de dominio](execution-roles-and-spaces.md).

Para obtener más información sobre cómo recuperar el ARN de la función de ejecución de la SageMaker IA, consulte. [Obtención del rol de ejecución](sagemaker-roles.md#sagemaker-roles-get-execution-role)

Si sus clústeres de Amazon EMR y Studio o Studio Classic se implementan en AWS cuentas independientes, debe configurar los permisos en ambas cuentas.

**nota**  
Los usuarios de la conectividad del control de acceso basado en roles (RBAC) con los clústeres de Amazon EMR también deben consultar [Configuración de la autenticación de roles en tiempo de ejecución cuando el clúster y Studio están en cuentas diferentes](studio-notebooks-emr-cluster-rbac.md#studio-notebooks-emr-cluster-iam-diff). 

#### En la cuenta de clúster de Amazon EMR
<a name="studio-set-up-emr-permissions-crossaccount-emraccount"></a>

Siga estos pasos para crear los roles y las políticas necesarios en la cuenta en la que está implementado Amazon EMR, también conocida como *cuenta de confianza*:

1. **Paso 1**: recuperación del ARN del [rol de servicio de su clúster de Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-iam-role.html). 

   Para aprender a buscar el ARN del rol de servicio de un clúster, consulte [Configuración de los roles de servicio de IAM de los permisos de Amazon EMR para los servicios y recursos de AWS](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-iam-roles.html#emr-iam-role-landing).

1. **Paso 2**: creación de un rol de IAM personalizado denominado `AssumableRole` con la siguiente configuración:
   + Permisos: conceda los permisos necesarios a `AssumableRole` para permitir el acceso a los recursos de Amazon EMR. Este rol también se conoce como *rol de acceso* en situaciones que implican el acceso entre cuentas.
   + Relación de confianza: configure la política de confianza para `AssumableRole` para permitir asumir el rol de ejecución (el `SageMakerExecutionRole` en el diagrama Entre cuentas) desde la cuenta de Studio a la que se requiere acceso.

   Al asumir el rol, Studio o Studio Classic pueden obtener acceso temporal a los permisos que necesitan en Amazon EMR.

   Para obtener instrucciones detalladas sobre cómo crear una cuenta nueva `AssumableRole` en tu AWS cuenta de Amazon EMR, sigue estos pasos:

   1. Vaya a la [consola de IAM](https://console.aws.amazon.com/iam).

   1. En el panel de navegación de la izquierda, seleccione **Política** y, a continuación, **Crear política**.

   1. En la pestaña **JSON**, añada los permisos de Amazon EMR que permiten el acceso y las operaciones de Amazon EMR. Para obtener más información sobre el documento de política, consulte *List Amazon EMR policies* en [Políticas de referencia](studio-set-up-emr-permissions-reference.md). Sustituya `region` y `accountID` por sus valores reales antes de copiar la lista de instrucciones a la política insertada de su rol.

   1. Elija **Siguiente** y, a continuación, proporcione un **Nombre de política**.

   1. Elija **Crear política**.

   1. En el panel de navegación izquierdo, seleccione **Roles** y, a continuación, **Crear rol**.

   1. En la página **Crear rol**, elija la opción **Política de confianza personalizada** como entidad de confianza.

   1. Pegue el siguiente documento JSON en la sección **Política de confianza personalizada** y, a continuación, seleccione **Siguiente**.

------
#### [ For users of Studio and JupyterLab ]

      `studio-account`Sustitúyala por el ID de cuenta de Studio y `AmazonSageMaker-ExecutionRole` por la función de ejecución que utilice tu JupyterLab espacio.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Principal": {
                      "AWS": "arn:aws:iam::111122223333:role/service-role/AmazonSageMaker-ExecutionRole"
                  },
                  "Action": "sts:AssumeRole"
              }
          ]
      }
      ```

------

------
#### [ For users of Studio Classic ]

      Sustituya `studio-account` por el ID de cuenta de Studio Classic.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Principal": {
                      "AWS": "arn:aws:iam::111122223333:root"
                  },
                  "Action": "sts:AssumeRole"
              }
          ]
      }
      ```

------

------

   1. En la página **Agregar permisos**, añada el permiso que acaba de crear y, a continuación, seleccione **Siguiente**.

   1. En la página **Revisar**, introduzca un nombre para el rol como `AssumableRole` y una descripción opcional.

   1. Revise los detalles del rol y seleccione **Crear rol**.

   Para obtener más información sobre cómo crear un rol en una cuenta de AWS , consulte [Creación de un rol de IAM (consola)](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html).

#### En la cuenta de Studio
<a name="studio-set-up-emr-permissions-crossaccount-studioaccount"></a>

En la cuenta en la que esté desplegado Studio, también conocida como *cuenta de confianza*, actualice la función de ejecución de SageMaker IA para acceder a sus clústeres con los permisos necesarios para acceder a los recursos de la cuenta de confianza.

1. **Paso 1**: recupere el ARN del rol de ejecución de SageMaker IA utilizado en su espacio privado.

   Para obtener información sobre los espacios y las funciones de ejecución en la SageMaker IA, consulte[Descripción de los permisos y roles de ejecución de espacio de dominio](execution-roles-and-spaces.md).

   Para obtener más información sobre cómo recuperar el ARN de la función de ejecución de la SageMaker IA, consulte. [Obtención del rol de ejecución](sagemaker-roles.md#sagemaker-roles-get-execution-role)

1. **Paso 2**: Adjunte los siguientes permisos a la función de ejecución de SageMaker IA que accede a sus clústeres de Amazon EMR.

   1. Vaya a la [consola de IAM](https://console.aws.amazon.com/iam).

   1. Elija **Roles** y, a continuación, busque su rol de ejecución por su nombre en el campo **Buscar**. El nombre del rol se encuentra en la última parte del ARN, después de la última barra diagonal (/). 

   1. Siga el enlace a su rol.

   1. Elija **Agregar permisos** y, a continuación, **Crear política insertada**.

   1. En la pestaña **JSON**, añada la política insertada que concede al rol permisos para actualizar los dominios, los perfiles de usuario y los espacios. Para obtener más información sobre el documento de política, consulte *Domain, user profile, and space update actions policy* en [Políticas de referencia](studio-set-up-emr-permissions-reference.md). Sustituya `region` y `accountID` por sus valores reales antes de copiar la lista de instrucciones a la política insertada de su rol.

   1. Elija **Siguiente** y, a continuación, proporcione un **Nombre de política**.

   1. Elija **Crear política**.

   1. Repita el paso **Crear una política insertada** para añadir otra política que conceda al rol de ejecución los permisos para asumir el `AssumableRole` y luego realice las acciones permitidas por la política de acceso del rol. Sustituya `emr-account` por el ID de cuenta Amazon EMR y `AssumableRole` por el nombre del rol asumible creado en la cuenta de Amazon EMR.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Sid": "AllowRoleAssumptionForCrossAccountDiscovery",
                  "Effect": "Allow",
                  "Action": "sts:AssumeRole",
                  "Resource": [
                      "arn:aws:iam::111122223333:role/AssumableRole"
                  ]
              }
          ]
      }
      ```

------

   1. Repita el paso **Crear política insertada** para añadir otra política que conceda al rol de ejecución los permisos para aprovisionar nuevos clústeres de Amazon EMR mediante plantillas de CloudFormation . Para obtener más información sobre el documento de política, consulta *Crear EMRclusters políticas de Amazon* en[Políticas de referencia](studio-set-up-emr-permissions-reference.md). Sustituya `region` y `accountID` por sus valores reales antes de copiar la lista de instrucciones a la política insertada de su rol.

   1. (Opcional) Para poder enumerar los clústeres de Amazon EMR implementados en la misma cuenta que Studio, añada una política interna adicional a su rol de ejecución de Studio, tal y como se define en *List Amazon EMR policies* en [Políticas de referencia](studio-set-up-emr-permissions-reference.md). 

1. **Paso 3**: Asocia tus funciones asumibles (función de acceso) a tu dominio o perfil de usuario. JupyterLab los usuarios de Studio pueden usar la consola de SageMaker IA o el script proporcionado.

    Elija la pestaña que corresponda a su caso de uso.

------
#### [ Associate your assumable roles in JupyterLab using the SageMaker AI console ]

   Para asociar tus funciones asumibles a tu perfil de usuario o dominio mediante la consola de SageMaker IA:

   1. Navegue hasta la consola de SageMaker IA en [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

   1. En el panel de navegación izquierdo, elige el **dominio** y, a continuación, selecciona el dominio mediante la función de ejecución de SageMaker IA cuyos permisos has actualizado.

   1. 
      + Para añadir sus funciones asumibles (función de acceso) a su dominio: en la pestaña **Configuraciones de aplicaciones** de la página de **detalles del dominio**, vaya a la **JupyterLab**sección.
      + Para añadir sus funciones asumibles (función de acceso) a su perfil de usuario: en la página de **detalles del dominio**, elija la pestaña **Perfiles de usuario** y seleccione el perfil de usuario mediante la función de ejecución de SageMaker IA cuyos permisos haya actualizado. En la pestaña **Configuraciones de aplicaciones**, navegue hasta la **JupyterLab**sección.

   1. Elija **Editar** y añada ARNs la función asumible (función de acceso).

   1. Seleccione **Enviar**.

------
#### [ Associate your assumable roles in JupyterLab using a Python script ]

    En una JupyterLab aplicación iniciada desde un espacio con el rol de ejecución de SageMaker IA cuyos permisos hayas actualizado, ejecuta el siguiente comando en una terminal. Sustituya los valores `domainID`, `user-profile-name`, `emr-accountID` y `AssumableRole` (`EMRServiceRole` para los [roles de tiempo de ejecución de RBAC]()) por sus valores adecuados. Este fragmento de código actualiza la configuración del perfil de usuario para un perfil de usuario (uso`client.update_userprofile`) o una configuración de dominio (uso`client.update_domain`) específicos dentro de un dominio de SageMaker IA. En concreto, permite que la JupyterLab aplicación asuma una función de IAM concreta (`AssumableRole`) para ejecutar clústeres de Amazon EMR dentro de la cuenta de Amazon EMR.

   ```
   import botocore.session
   import json
   sess = botocore.session.get_session()
   client = sess.create_client('sagemaker')
   
   client.update_userprofile(
   DomainId="domainID", 
   UserProfileName="user-profile-name",
   DefaultUserSettings={
       'JupyterLabAppSettings': {
           'EmrSettings': {
               'AssumableRoleArns': ["arn:aws:iam::emr-accountID:role/AssumableRole"],
               'ExecutionRoleArns': ["arn:aws:iam::emr-accountID:role/EMRServiceRole", 
                                "arn:aws:iam::emr-accountID:role/AnotherServiceRole"]
           }
           
       }
   })
   resp = client.describe_user_profile(DomainId="domainID", UserProfileName=user-profile-name")
   
   resp['CreationTime'] = str(resp['CreationTime'])
   resp['LastModifiedTime'] = str(resp['LastModifiedTime'])
   print(json.dumps(resp, indent=2))
   ```

------
#### [ For users of Studio Classic ]

   Proporcione el ARN de `AssumableRole` a su rol de ejecución de Studio Classic. El servidor de Jupyter carga el ARN al inicializarse. El rol de ejecución de Studio asume ese rol de varias cuentas para detectar y conectarse a los clústeres de Amazon EMR en la *cuenta de confianza*.

   Puede especificar esta información mediante scripts de configuración del ciclo de vida (LCC). Puede asociar la LCC a su dominio o a un perfil de usuario específico. El script de LCC que utilice debe ser una configuración. JupyterServer Para obtener más información sobre cómo crear un script de LCC, consulte [Use Lifecycle Configurations with Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc.html). 

   A continuación se muestra un ejemplo de script. Para modificar el script, sustituya `AssumableRole` y `emr-account` por sus valores correspondientes. El número de cuentas cruzadas está limitado a cinco.

   ```
   # This script creates the file that informs Studio Classic that the role "arn:aws:iam::emr-account:role/AssumableRole" in remote account "emr-account" must be assumed to list and describe Amazon EMR clusters in the remote account.
   
   #!/bin/bash
   
   set -eux
   
   FILE_DIRECTORY="/home/sagemaker-user/.cross-account-configuration-DO_NOT_DELETE"
   FILE_NAME="emr-discovery-iam-role-arns-DO_NOT_DELETE.json"
   FILE="$FILE_DIRECTORY/$FILE_NAME"
   
   mkdir -p $FILE_DIRECTORY
   
   cat > "$FILE" <<- "EOF"
   {
     emr-cross-account1: "arn:aws:iam::emr-cross-account1:role/AssumableRole",
     emr-cross-account2: "arn:aws:iam::emr-cross-account2:role/AssumableRole"
   }
   EOF
   ```

    Una vez que se ejecuta la LCC y se escriben los archivos, el servidor lee el archivo `/home/sagemaker-user/.cross-account-configuration-DO_NOT_DELETE/emr-discovery-iam-role-arns-DO_NOT_DELETE.json` y almacena el ARN entre cuentas.

------

# Configuración de la lista de clústeres de Amazon EMR
<a name="studio-notebooks-configure-discoverability-emr-cluster"></a>

Los administradores pueden configurar los permisos para la función de ejecución de SageMaker Studio a fin de conceder a los usuarios la posibilidad de ver la lista de clústeres de Amazon EMR a los que tienen acceso, lo que les permite conectarse a estos clústeres. Los clústeres a los que desee acceder se pueden implementar en la misma AWS cuenta que Studio (elija *Cuenta única*) o en cuentas independientes (elija *Cuenta cruzada*). En la siguiente página, se describe cómo conceder los permisos para ver los clústeres de Amazon EMR desde Studio o Studio Classic.

**importante**  
Solo puede descubrir clústeres de Amazon EMR y conectarse a ellos para JupyterLab aplicaciones de Studio Classic que se lancen desde espacios privados. Asegúrese de que los clústeres de Amazon EMR estén ubicados en la misma AWS región que su entorno de Studio.

Para permitir que los científicos de datos descubran y se conecten a Amazon EMRclusters desde Studio o Studio Classic, sigue estos pasos.

## Cuenta única
<a name="studio-set-up-emr-permissions-singleaccount-list-clusters"></a>

Si sus clústeres de Amazon EMR y Studio o Studio Classic están implementados en la misma AWS cuenta, asocie los siguientes permisos a la función de ejecución de SageMaker IA que accede a su clúster.

1. **Paso 1**: recupere el ARN del rol de ejecución de SageMaker IA utilizado en su espacio privado.

   Para obtener información sobre los espacios y las funciones de ejecución en la SageMaker IA, consulte[Descripción de los permisos y roles de ejecución de espacio de dominio](execution-roles-and-spaces.md).

   Para obtener más información sobre cómo recuperar el ARN de la función de ejecución de la SageMaker IA, consulte. [Obtención del rol de ejecución](sagemaker-roles.md#sagemaker-roles-get-execution-role)

1. **Paso 2**: Adjunte los siguientes permisos a la función de ejecución de SageMaker IA que accede a sus clústeres de Amazon EMR.

   1. Vaya a la [consola de IAM](https://console.aws.amazon.com/iam).

   1. Elija **Roles** y, a continuación, busque su rol de ejecución por su nombre en el campo **Buscar**. El nombre del rol se encuentra en la última parte del ARN, después de la última barra diagonal (/). 

   1. Siga el enlace a su rol.

   1. Elija **Agregar permisos** y, a continuación, **Crear política insertada**.

   1. En la pestaña **JSON**, añada los permisos de Amazon EMR que permiten el acceso y las operaciones de Amazon EMR. Para obtener más información sobre el documento de política, consulte *List Amazon EMR policies* en [Políticas de referencia](studio-set-up-emr-permissions-reference.md). Sustituya `region` y `accountID` por sus valores reales antes de copiar la lista de instrucciones a la política insertada de su rol.

   1. Elija **Siguiente** y, a continuación, proporcione un **Nombre de política**.

   1. Elija **Crear política**.

**nota**  
Los usuarios de la conectividad del control de acceso basado en roles (RBAC) con los clústeres de Amazon EMR también deben consultar [Configuración de la autenticación de roles en tiempo de ejecución cuando el clúster de Amazon EMR y Studio están en la misma cuenta](studio-notebooks-emr-cluster-rbac.md#studio-notebooks-emr-cluster-iam-same). 

## Entre cuentas
<a name="studio-set-up-emr-permissions-crossaccount-list-clusters"></a>

Antes de empezar, recupere el ARN de la función de ejecución de SageMaker IA utilizada en su espacio privado.

Para obtener información sobre los espacios y las funciones de ejecución en la SageMaker IA, consulte[Descripción de los permisos y roles de ejecución de espacio de dominio](execution-roles-and-spaces.md).

Para obtener más información sobre cómo recuperar el ARN de la función de ejecución de la SageMaker IA, consulte. [Obtención del rol de ejecución](sagemaker-roles.md#sagemaker-roles-get-execution-role)

Si sus clústeres de Amazon EMR y Studio o Studio Classic se implementan en cuentas de AWS diferentes, configure los permisos en ambas cuentas.

**nota**  
Los usuarios de la conectividad del control de acceso basado en roles (RBAC) con los clústeres de Amazon EMR también deben consultar [Configuración de la autenticación de roles en tiempo de ejecución cuando el clúster y Studio están en cuentas diferentes](studio-notebooks-emr-cluster-rbac.md#studio-notebooks-emr-cluster-iam-diff). 

**En la cuenta de clúster de Amazon EMR**

Siga estos pasos para crear los roles y las políticas necesarios en la cuenta en la que está implementado Amazon EMR, también conocida como *cuenta de confianza*:

1. **Paso 1**: recuperación del ARN del [rol de servicio de su clúster de Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-iam-role.html). 

   Para aprender a buscar el ARN del rol de servicio de un clúster, consulte [Configuración de los roles de servicio de IAM de los permisos de Amazon EMR para los servicios y recursos de AWS](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-iam-roles.html#emr-iam-role-landing).

1. **Paso 2**: creación de un rol de IAM personalizado denominado `AssumableRole` con la siguiente configuración:
   + Permisos: conceda los permisos necesarios a `AssumableRole` para permitir el acceso a los recursos de Amazon EMR. Este rol también se conoce como *rol de acceso* en situaciones que implican el acceso entre cuentas.
   + Relación de confianza: configure la política de confianza para `AssumableRole` para permitir asumir el rol de ejecución (el `SageMakerExecutionRole` en el diagrama Entre cuentas) desde la cuenta de Studio a la que se requiere acceso.

   Al asumir el rol, Studio o Studio Classic pueden obtener acceso temporal a los permisos que necesitan en Amazon EMR.

   Para obtener instrucciones detalladas sobre cómo crear una cuenta nueva `AssumableRole` en tu AWS cuenta de Amazon EMR, sigue estos pasos:

   1. Vaya a la [consola de IAM](https://console.aws.amazon.com/iam).

   1. En el panel de navegación de la izquierda, seleccione **Política** y, a continuación, **Crear política**.

   1. En la pestaña **JSON**, añada los permisos de Amazon EMR que permiten el acceso y las operaciones de Amazon EMR. Para obtener más información sobre el documento de política, consulte *List Amazon EMR policies* en [Políticas de referencia](studio-set-up-emr-permissions-reference.md). Sustituya `region` y `accountID` por sus valores reales antes de copiar la lista de instrucciones a la política insertada de su rol.

   1. Elija **Siguiente** y, a continuación, proporcione un **Nombre de política**.

   1. Elija **Crear política**.

   1. En el panel de navegación izquierdo, seleccione **Roles** y, a continuación, **Crear rol**.

   1. En la página **Crear rol**, elija la opción **Política de confianza personalizada** como entidad de confianza.

   1. Pegue el siguiente documento JSON en la sección **Política de confianza personalizada** y, a continuación, seleccione **Siguiente**.

------
#### [ For users of Studio and JupyterLab ]

      `studio-account`Sustitúyala por el ID de cuenta de Studio y `AmazonSageMaker-ExecutionRole` por la función de ejecución que utilice tu JupyterLab espacio.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Principal": {
                      "AWS": "arn:aws:iam::111122223333:role/service-role/AmazonSageMaker-ExecutionRole"
                  },
                  "Action": "sts:AssumeRole"
              }
          ]
      }
      ```

------

------
#### [ For users of Studio Classic ]

      Sustituya `studio-account` por el ID de cuenta de Studio Classic.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Effect": "Allow",
                  "Principal": {
                      "AWS": "arn:aws:iam::111122223333:root"
                  },
                  "Action": "sts:AssumeRole"
              }
          ]
      }
      ```

------

------

   1. En la página **Agregar permisos**, añada el permiso que acaba de crear y, a continuación, seleccione **Siguiente**.

   1. En la página **Revisar**, introduzca un nombre para el rol como `AssumableRole` y una descripción opcional.

   1. Revise los detalles del rol y seleccione **Crear rol**.

   Para obtener más información sobre la creación de un rol en una AWS cuenta, consulte [Creación de un rol de IAM (consola).](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-user.html)

**En la cuenta de Studio**

En la cuenta en la que está desplegado Studio, también conocida como *cuenta de confianza*, actualiza la función de ejecución de SageMaker IA para acceder a tus clústeres con los permisos necesarios para acceder a los recursos de la cuenta de confianza.

1. **Paso 1**: recupere el ARN del rol de ejecución de SageMaker IA utilizado en su espacio privado.

   Para obtener información sobre los espacios y las funciones de ejecución en la SageMaker IA, consulte[Descripción de los permisos y roles de ejecución de espacio de dominio](execution-roles-and-spaces.md).

   Para obtener más información sobre cómo recuperar el ARN de la función de ejecución de la SageMaker IA, consulte. [Obtención del rol de ejecución](sagemaker-roles.md#sagemaker-roles-get-execution-role)

1. **Paso 2**: Adjunte los siguientes permisos a la función de ejecución de SageMaker IA que accede a sus clústeres de Amazon EMR.

   1. Vaya a la [consola de IAM](https://console.aws.amazon.com/iam).

   1. Elija **Roles** y, a continuación, busque su rol de ejecución por su nombre en el campo **Buscar**. El nombre del rol se encuentra en la última parte del ARN, después de la última barra diagonal (/). 

   1. Siga el enlace a su rol.

   1. Elija **Agregar permisos** y, a continuación, **Crear política insertada**.

   1. En la pestaña **JSON**, añada la política insertada que concede al rol permisos para actualizar los dominios, los perfiles de usuario y los espacios. Para obtener más información sobre el documento de política, consulte *Domain, user profile, and space update actions policy* en [Políticas de referencia](studio-set-up-emr-permissions-reference.md). Sustituya `region` y `accountID` por sus valores reales antes de copiar la lista de instrucciones a la política insertada de su rol.

   1. Elija **Siguiente** y, a continuación, proporcione un **Nombre de política**.

   1. Elija **Crear política**.

   1. Repita el paso **Crear una política insertada** para añadir otra política que conceda al rol de ejecución los permisos para asumir el `AssumableRole` y luego realice las acciones permitidas por la política de acceso del rol. Sustituya `emr-account` por el ID de cuenta Amazon EMR y `AssumableRole` por el nombre del rol asumible creado en la cuenta de Amazon EMR.

------
#### [ JSON ]

****  

      ```
      {
          "Version":"2012-10-17",		 	 	 
          "Statement": [
              {
                  "Sid": "AllowRoleAssumptionForCrossAccountDiscovery",
                  "Effect": "Allow",
                  "Action": "sts:AssumeRole",
                  "Resource": [
                      "arn:aws:iam::111122223333:role/AssumableRole"
                  ]
              }
          ]
      }
      ```

------

   1. (Opcional) Para poder enumerar los clústeres de Amazon EMR implementados en la misma cuenta que Studio, añada una política interna adicional a su rol de ejecución de Studio, tal y como se define en *List Amazon EMR policies* en [Políticas de referencia](studio-set-up-emr-permissions-reference.md). 

1. **Paso 3**: asocie sus funciones asumibles (función de acceso) a su dominio o perfil de usuario. JupyterLablos usuarios de Studio pueden usar la consola de SageMaker IA o el script proporcionado.

    Elija la pestaña que corresponda a su caso de uso.

------
#### [ Associate your assumable roles in JupyterLab using the SageMaker AI console ]

   Para asociar tus funciones asumibles a tu perfil de usuario o dominio mediante la consola de SageMaker IA:

   1. Navegue hasta la consola de SageMaker IA en [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

   1. En el panel de navegación izquierdo, elige el **dominio** y, a continuación, selecciona el dominio mediante la función de ejecución de SageMaker IA cuyos permisos has actualizado.

   1. 
      + Para añadir sus funciones asumibles (función de acceso) a su dominio: en la pestaña **Configuraciones de aplicaciones** de la página de **detalles del dominio**, vaya a la **JupyterLab**sección.
      + Para añadir sus funciones asumibles (función de acceso) a su perfil de usuario: en la página de **detalles del dominio**, elija la pestaña **Perfiles de usuario** y seleccione el perfil de usuario mediante la función de ejecución de SageMaker IA cuyos permisos haya actualizado. En la pestaña **Configuraciones de aplicaciones**, navegue hasta la **JupyterLab**sección.

   1. Elija **Editar** y añada ARNs la función asumible (función de acceso).

   1. Seleccione **Enviar**.

------
#### [ Associate your assumable roles in JupyterLab using a Python script ]

    En una JupyterLab aplicación iniciada desde un espacio con el rol de ejecución de SageMaker IA cuyos permisos hayas actualizado, ejecuta el siguiente comando en una terminal. Sustituya los valores `domainID`, `user-profile-name`, `emr-accountID` y `AssumableRole` (`EMRServiceRole` para los [roles de tiempo de ejecución de RBAC]()) por sus valores adecuados. Este fragmento de código actualiza la configuración del perfil de usuario para un perfil de usuario (uso`client.update_userprofile`) o una configuración de dominio (uso`client.update_domain`) específicos dentro de un dominio de SageMaker IA. En concreto, permite que la JupyterLab aplicación asuma una función de IAM concreta (`AssumableRole`) para ejecutar clústeres de Amazon EMR dentro de la cuenta de Amazon EMR.

   ```
   import botocore.session
   import json
   sess = botocore.session.get_session()
   client = sess.create_client('sagemaker')
   
   client.update_userprofile(
   DomainId="domainID", 
   UserProfileName="user-profile-name",
   DefaultUserSettings={
       'JupyterLabAppSettings': {
           'EmrSettings': {
               'AssumableRoleArns': ["arn:aws:iam::emr-accountID:role/AssumableRole"],
               'ExecutionRoleArns': ["arn:aws:iam::emr-accountID:role/EMRServiceRole", 
                                "arn:aws:iam::emr-accountID:role/AnotherServiceRole"]
           }
           
       }
   })
   resp = client.describe_user_profile(DomainId="domainID", UserProfileName=user-profile-name")
   
   resp['CreationTime'] = str(resp['CreationTime'])
   resp['LastModifiedTime'] = str(resp['LastModifiedTime'])
   print(json.dumps(resp, indent=2))
   ```

------
#### [ For users of Studio Classic ]

   Proporcione el ARN de `AssumableRole` a su rol de ejecución de Studio Classic. El servidor de Jupyter carga el ARN al inicializarse. El rol de ejecución de Studio asume ese rol de varias cuentas para detectar y conectarse a los clústeres de Amazon EMR en la *cuenta de confianza*.

   Puede especificar esta información mediante scripts de configuración del ciclo de vida (LCC). Puede asociar la LCC a su dominio o a un perfil de usuario específico. El script de LCC que utilice debe ser una configuración. JupyterServer Para obtener más información sobre cómo crear un script de LCC, consulte [Use Lifecycle Configurations with Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc.html). 

   A continuación se muestra un ejemplo de script. Para modificar el script, sustituya `AssumableRole` y `emr-account` por sus valores correspondientes. El número de cuentas cruzadas está limitado a cinco.

   ```
   # This script creates the file that informs Studio Classic that the role "arn:aws:iam::emr-account:role/AssumableRole" in remote account "emr-account" must be assumed to list and describe Amazon EMR clusters in the remote account.
   
   #!/bin/bash
   
   set -eux
   
   FILE_DIRECTORY="/home/sagemaker-user/.cross-account-configuration-DO_NOT_DELETE"
   FILE_NAME="emr-discovery-iam-role-arns-DO_NOT_DELETE.json"
   FILE="$FILE_DIRECTORY/$FILE_NAME"
   
   mkdir -p $FILE_DIRECTORY
   
   cat > "$FILE" <<- "EOF"
   {
     emr-cross-account1: "arn:aws:iam::emr-cross-account1:role/AssumableRole",
     emr-cross-account2: "arn:aws:iam::emr-cross-account2:role/AssumableRole"
   }
   EOF
   ```

    Una vez que se ejecuta la LCC y se escriben los archivos, el servidor lee el archivo `/home/sagemaker-user/.cross-account-configuration-DO_NOT_DELETE/emr-discovery-iam-role-arns-DO_NOT_DELETE.json` y almacena el ARN entre cuentas.

------

Consulte [Enumeración de clústeres de Amazon EMR desde Studio o Studio Classic](discover-emr-clusters.md) para saber cómo detectar los clústeres de Amazon EMR y conectarse a ellos desde los cuadernos de Studio o Studio Classic.

# Configuración de roles de tiempo de ejecución de IAM para el acceso al clúster de Amazon EMR en Studio
<a name="studio-notebooks-emr-cluster-rbac"></a>

Cuando se conecta a un clúster de Amazon EMR desde sus cuadernos de Studio o Studio Classic, puede examinar visualmente una lista de roles de IAM, conocidos como roles de tiempo de ejecución, y seleccionar uno sobre la marcha. Posteriormente, todos sus trabajos de Apache Spark, Apache Hive o Presto creados desde su cuaderno accederán únicamente a los datos y recursos permitidos por las políticas asociadas al rol de tiempo de ejecución. Además, cuando se accede a los datos desde lagos de datos gestionados con ellos AWS Lake Formation, puede imponer el acceso a nivel de tabla y columna mediante políticas asociadas a la función de tiempo de ejecución.

Con esta capacidad, usted y sus compañeros de equipo pueden conectarse al mismo clúster, cada uno con un rol de tiempo de ejecución limitado con permisos que se ajusten a su nivel individual de acceso a los datos. Sus sesiones también están aisladas unas de otras en el clúster compartido. 

Para probar esta función con Studio Classic, consulte [Aplicar controles de acceso a datos detallados con AWS Lake Formation Amazon EMR desde Amazon](https://aws.amazon.com/blogs/machine-learning/apply-fine-grained-data-access-controls-with-aws-lake-formation-and-amazon-emr-from-amazon-sagemaker-studio/) Studio Classic. SageMaker Esta publicación del blog le ayuda a configurar un entorno de demostración en el que puede intentar utilizar roles de tiempo de ejecución preconfigurados para conectarse a los clústeres de Amazon EMR.

## Requisitos previos
<a name="studio-notebooks-emr-cluster-rbac-prereq"></a>

Antes de comenzar, asegúrese de que cumplir los siguientes requisitos previos:
+ Utiliza Amazon EMR versión 6.9 o posteriores.
+ **Para los usuarios de Studio Classic**: utilice la JupyterLab versión 3 en la configuración de la aplicación del servidor Jupyter de Studio Classic. Esta versión admite la conexión de Studio Classic a los clústeres de Amazon EMR mediante roles de tiempo de ejecución.

  **Para los usuarios de Studio**: utilice una versión [SageMaker de imagen de distribución](sagemaker-distribution.md) `1.10` o superior.
+ Permita el uso de roles de tiempo de ejecución en la configuración de seguridad del clúster. Para obtener más información, consulte [Roles en tiempo de ejecución para los pasos de Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-steps-runtime-roles.html).
+ Cree un cuaderno con cualquiera de los kernels que aparecen en [Imágenes y kernels compatibles para conectarse a un clúster de Amazon EMR desde Studio o Studio Classic](studio-emr-user-guide.md#studio-notebooks-emr-cluster-connect-kernels).
+ Asegúrese de revisar las instrucciones de [Configuración de Studio para usar roles de IAM en tiempo de ejecución](#studio-notebooks-emr-cluster-iam) para configurar sus roles de tiempo de ejecución.

## Escenarios de conexión entre cuentas
<a name="studio-notebooks-emr-cluster-rbac-scen"></a>

La autenticación de roles en tiempo de ejecución admite diversos escenarios de conexión entre cuentas cuando los datos residen fuera de la cuenta de Studio. En la siguiente imagen, se muestran tres formas diferentes de asignar el clúster, los datos e incluso el rol de ejecución en tiempo de ejecución de Amazon EMR entre sus cuentas de Studio y de datos: 

![\[Escenarios entre cuentas que admite la autenticación de roles de IAM en tiempo de ejecución.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/studio-emr-rbac-scenarios.png)


En la opción 1, el clúster de Amazon EMR y el rol de ejecución en tiempo de ejecución de Amazon EMR se encuentran en una cuenta de datos diferente de la cuenta de Studio. Debe definir una política de permisos de rol de acceso a Amazon EMR diferente (también denominada `Assumable role`) que concede permiso a el rol de ejecución de Studio o Studio Classic para que asuma el rol de acceso a Amazon EMR. A continuación, el rol de acceso a Amazon EMR llama a la API de Amazon EMR `GetClusterSessionCredentials` en nombre de su rol de ejecución de Studio o Studio Classic, lo que le da acceso al clúster.

En la opción 2, el clúster de Amazon EMR y el rol de ejecución en tiempo de ejecución de Amazon EMR se encuentran en su cuenta de Studio. Su rol de ejecución de Studio tiene permiso para usar la API de Amazon EMR `GetClusterSessionCredentials` para acceder a su clúster. Para acceder al bucket de Amazon S3, conceda al rol de ejecución en tiempo de ejecución de Amazon EMR permisos de acceso de varias cuentas al bucket de Amazon S3; usted concede estos permisos dentro de su política de buckets de Amazon S3.

En la opción 3, sus clústeres de Amazon EMR están en su cuenta de Studio y el rol de ejecución en tiempo de ejecución de Amazon EMR está en la cuenta de datos. Su rol de ejecución de Studio o Studio Classic tiene permiso para usar la API de Amazon EMR `GetClusterSessionCredentials` para acceder a su clúster. Añada el rol de ejecución en tiempo de ejecución de Amazon EMR al JSON de configuración del rol de ejecución. Luego, puede seleccionar el rol en la interfaz de usuario al elegir su clúster. Para obtener más información sobre cómo configurar el archivo JSON de configuración del rol de ejecución, consulte [Carga previa de sus roles de ejecución en Studio o Studio Classic](#studio-notebooks-emr-cluster-iam-preload).

## Configuración de Studio para usar roles de IAM en tiempo de ejecución
<a name="studio-notebooks-emr-cluster-iam"></a>

Para establecer la autenticación de roles en tiempo de ejecución para sus clústeres de Amazon EMR, configure las políticas de IAM, la red y las mejoras de usabilidad necesarias. Su configuración depende de si gestiona acuerdos entre cuentas si sus clústeres de Amazon EMR, el rol de ejecución en tiempo de ejecución de Amazon EMR o ambos residen fuera de su cuenta de Studio. En la siguiente sección, verá las políticas que debe instalar, cómo configurar la red para permitir el tráfico entre cuentas y el archivo de configuración local que debe configurar para automatizar la conexión a Amazon EMR.

### Configuración de la autenticación de roles en tiempo de ejecución cuando el clúster de Amazon EMR y Studio están en la misma cuenta
<a name="studio-notebooks-emr-cluster-iam-same"></a>

Si su clúster de Amazon EMR reside en su cuenta de Studio, realice los siguientes pasos para añadir los permisos necesarios a la política de ejecución de Studio:

1. Añada la política de IAM necesaria para conectarse a los clústeres de Amazon EMR. Para obtener más información, consulte [Configuración de la lista de clústeres de Amazon EMR](studio-notebooks-configure-discoverability-emr-cluster.md).

1. Conceda permiso para llamar a la API de Amazon EMR `GetClusterSessionCredentials` cuando pase uno o más roles de ejecución en tiempo de ejecución de Amazon EMR permitidos especificados en la política.

1. (Opcional) Conceda permiso para transferir roles de IAM que sigan cualquier convención de nomenclatura definida por el usuario.

1. (Opcional) Conceda permiso para acceder a los clústeres de Amazon EMR etiquetados con cadenas específicas definidas por el usuario.

1. Cargue previamente sus roles de IAM para poder seleccionar el rol que desee utilizar cuando se conecte a su clúster de Amazon EMR. Para obtener más información acerca de cómo precargar los roles de IAM, consulte [Carga previa de sus roles de ejecución en Studio o Studio Classic](#studio-notebooks-emr-cluster-iam-preload).

El siguiente ejemplo de política permite a los roles de ejecución en tiempo de ejecución de Amazon EMR que pertenecen a los grupos de modelado y entrenamiento llamar a `GetClusterSessionCredentials`. Además, el titular de la política puede acceder a los clústeres de Amazon EMR etiquetados con las cadenas `modeling` o `training`.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": "elasticmapreduce:GetClusterSessionCredentials",
            "Resource": "*",
            "Condition": {
                "ArnLike": {
                    "elasticmapreduce:ExecutionRoleArn": [
                        "arn:aws:iam::111122223333:role/emr-execution-role-ml-modeling*",
                        "arn:aws:iam::111122223333:role/emr-execution-role-ml-training*"
			]},
		"StringLike":{
                    "elasticmapreduce:ResourceTag/group": [
                        "*modeling*",
                        "*training*"
                    ]
                }
            }
        }
    ]
}
```

------

### Configuración de la autenticación de roles en tiempo de ejecución cuando el clúster y Studio están en cuentas diferentes
<a name="studio-notebooks-emr-cluster-iam-diff"></a>

Si su clúster de Amazon EMR no está en su cuenta de Studio, permita que su función de ejecución de SageMaker IA asuma la función de acceso multicuenta a Amazon EMR para que pueda conectarse al clúster. Siga estos pasos para realizar su configuración de varias cuentas:

1. Cree su política de permisos para la función de ejecución de SageMaker IA para que la función de ejecución pueda asumir la función de acceso a Amazon EMR. A continuación, se muestra un ejemplo de política:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowAssumeCrossAccountEMRAccessRole",
               "Effect": "Allow",
               "Action": "sts:AssumeRole",
               "Resource": "arn:aws:iam::111122223333:role/emr-access-role-name"
           }
       ]
   }
   ```

------

1. Cree la política de confianza para especificar en qué cuentas de Studio IDs se confía para asumir la función de acceso a Amazon EMR. A continuación, se muestra un ejemplo de política:

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
         {
           "Sid": "AllowCrossAccountSageMakerExecutionRoleToAssumeThisRole",
           "Effect": "Allow",
           "Principal": {
             "AWS": "arn:aws:iam::111122223333:role/studio_execution_role"
           },
           "Action": "sts:AssumeRole"
         }
       ]
   }
   ```

------

1. Cree la política de permisos del rol de acceso de Amazon EMR, que conceda al rol de ejecución en tiempo de ejecución de Amazon EMR los permisos necesarios para llevar a cabo las tareas previstas en el clúster. Configure la rol de acceso a Amazon EMR para llamar a la API `GetClusterSessionCredentials` con los roles de ejecución en tiempo de ejecución de Amazon EMR especificados en la política de permisos del rol de acceso. A continuación, se muestra un ejemplo de política:

------
#### [ JSON ]

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Sid": "AllowCallingEmrGetClusterSessionCredentialsAPI",
               "Effect": "Allow",
               "Action": "elasticmapreduce:GetClusterSessionCredentials",
               "Resource": "arn:aws:elasticmapreduce:us-east-1:111122223333:cluster/cluster-id",
               "Condition": {
                   "StringLike": {
                       "elasticmapreduce:ExecutionRoleArn": [
                           "arn:aws:iam::111122223333:role/emr-execution-role-name"
                       ]
                   }
               }
           }
       ]
   }
   ```

------

1. Configure la red de varias cuentas para que el tráfico pueda fluir entre sus cuentas. Para obtener instrucciones, consulte *[Configuración de acceso a la red para su clúster de Amazon EMR](studio-notebooks-emr-networking.md)Set up the *. Los pasos de esta sección le ayudarán a completar las siguientes tareas:

   1. Empareje mediante VPC su cuenta de Studio y su cuenta de Amazon EMR para establecer una conexión.

   1. Añada manualmente rutas a las tablas de enrutamiento de las subredes privadas en ambas cuentas. Esto permite crear y conectar clústeres de Amazon EMR desde la cuenta de Studio a la subred privada de la cuenta remota.

   1. Configure el grupo de seguridad asociado a su dominio de Studio para permitir el tráfico saliente y el grupo de seguridad del nodo principal de Amazon EMR para permitir el tráfico de TCP entrante desde el grupo de seguridad de la instancia de Studio.

1. Cargue previamente sus roles de tiempo de ejecución de IAM para poder seleccionar el rol que desee utilizar cuando se conecte a su clúster de Amazon EMR. Para obtener más información acerca de cómo precargar los roles de IAM, consulte [Carga previa de sus roles de ejecución en Studio o Studio Classic](#studio-notebooks-emr-cluster-iam-preload).

### Configuración del acceso a Lake Formation
<a name="studio-notebooks-emr-cluster-iam-lf"></a>

Al acceder a los datos de los lagos de datos gestionados por AWS Lake Formation, puede aplicar el acceso a nivel de tabla y columna mediante políticas asociadas a su función de tiempo de ejecución. Para configurar el permiso de acceso a Lake Formation, consulte [Integración de Amazon EMR con AWS Lake Formation](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-lake-formation.html).

### Carga previa de sus roles de ejecución en Studio o Studio Classic
<a name="studio-notebooks-emr-cluster-iam-preload"></a>

Puede cargar previamente sus roles de tiempo de ejecución de IAM para poder seleccionar el rol que desee utilizar cuando se conecte a su clúster de Amazon EMR. Los usuarios de JupyterLab In Studio pueden usar la consola de SageMaker IA o el script proporcionado.

------
#### [ Preload runtime roles in JupyterLab using the SageMaker AI console ]

Para asociar tus funciones de tiempo de ejecución a tu perfil de usuario o dominio mediante la consola de SageMaker IA:

1. Dirígete a la consola de SageMaker IA en [https://console.aws.amazon.com/sagemaker/](https://console.aws.amazon.com/sagemaker/).

1. En el panel de navegación izquierdo, elige el **dominio** y, a continuación, selecciona el dominio mediante la función de ejecución de SageMaker IA cuyos permisos has actualizado.

1. 
   + Para añadir tu tiempo de ejecución (y tus funciones de acceso en caso de uso multicuenta) a tu dominio: en la pestaña **Configuraciones de aplicaciones** de la página de **detalles del dominio**, navega hasta la **JupyterLab**sección.
   + Para añadir tu tiempo de ejecución (y las funciones de acceso en caso de uso multicuenta) a tu perfil de usuario: en la página de **detalles del dominio**, selecciona la pestaña **Perfiles de usuario** y selecciona el perfil de usuario mediante la función de ejecución de SageMaker IA cuyos permisos has actualizado. En la pestaña **Configuraciones de aplicaciones**, dirígete a la **JupyterLab**sección.

1. Elija **Editar** y añada su función ARNs de acceso (función asumible) y las funciones de ejecución en tiempo de ejecución de EMR Serverless.

1. Seleccione **Enviar**.

La próxima vez que se conecte a un servidor de Amazon EMR, los roles de tiempo de ejecución deberían aparecer en un menú desplegable para poder seleccionarlos.

------
#### [ Preload runtime roles in JupyterLab using a Python script ]

En una JupyterLab aplicación iniciada desde un espacio con el rol de ejecución de SageMaker IA cuyos permisos hayas actualizado, ejecuta el siguiente comando en una terminal. Sustituya `domainID`, `user-profile-name`, `emr-accountID` y `EMRServiceRole` por sus valores adecuados. Este fragmento de código actualiza la configuración de un perfil de usuario (`client.update_user_profile`) dentro de un dominio de SageMaker IA en un caso de uso entre cuentas. Concretamente, establece los roles de servicio de Amazon EMR. También permite que la JupyterLab aplicación asuma una función de IAM concreta (`AssumableRole`o`AccessRole`) para ejecutar Amazon EMR dentro de la cuenta de Amazon EMR.

Como alternativa, utilice `client.update_domain` para actualizar la configuración del dominio si su espacio utiliza un rol de ejecución establecido en el dominio.

```
import botocore.session
import json
sess = botocore.session.get_session()
client = sess.create_client('sagemaker')

client.update_user_profile(
DomainId="domainID", 
UserProfileName="user-profile-name",
UserSettings={
    'JupyterLabAppSettings': {
        'EmrSettings': {
            'AssumableRoleArns': ["arn:aws:iam::emr-accountID:role/AssumableRole"],
            'ExecutionRoleArns': ["arn:aws:iam::emr-accountID:role/EMRServiceRole", 
                             "arn:aws:iam::emr-accountID:role/AnotherServiceRole"]
        }
        
    }
})
resp = client.describe_user_profile(DomainId="domainID", UserProfileName=user-profile-name")

resp['CreationTime'] = str(resp['CreationTime'])
resp['LastModifiedTime'] = str(resp['LastModifiedTime'])
print(json.dumps(resp, indent=2))
```

------
#### [ Preload runtime roles in Studio Classic ]

Proporcione el ARN de `AccessRole` (`AssumableRole`) a su función de ejecución de SageMaker IA. El servidor de Jupyter carga el ARN al inicializarse. El rol de ejecución de Studio asume ese rol de varias cuentas para detectar y conectarse a los clústeres de Amazon EMR en la *cuenta de confianza*.

Puede especificar esta información mediante scripts de configuración del ciclo de vida (LCC). Puede asociar la LCC a su dominio o a un perfil de usuario específico. El script de LCC que utilice debe ser una JupyterServer configuración. Para obtener más información sobre cómo crear un script de LCC, consulte [Use Lifecycle Configurations with Studio Classic](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-lcc.html). 

A continuación se muestra un ejemplo de script. Para modificar el script, sustituya `AssumableRole` y `emr-account` por sus valores correspondientes. El número de cuentas cruzadas está limitado a cinco.

El siguiente fragmento es un script bash de LCC de ejemplo que puede utilizar si la aplicación de Studio Classic y el clúster están en la misma cuenta:

```
#!/bin/bash

set -eux

FILE_DIRECTORY="/home/sagemaker-user/.sagemaker-analytics-configuration-DO_NOT_DELETE"
FILE_NAME="emr-configurations-DO_NOT_DELETE.json"
FILE="$FILE_DIRECTORY/$FILE_NAME"

mkdir -p $FILE_DIRECTORY

cat << 'EOF' > "$FILE"
{
    "emr-execution-role-arns":
    {
      "123456789012": [
          "arn:aws:iam::123456789012:role/emr-execution-role-1",
          "arn:aws:iam::123456789012:role/emr-execution-role-2"
      ]
    }
}
EOF
```

Si la aplicación de Studio Classic y los clústeres están en cuentas diferentes, especifique los roles de acceso de Amazon EMR que puede usar el clúster. *En el siguiente ejemplo de política, *123456789012 es* el ID de cuenta del clúster de Amazon EMR y *212121212121* y 434343434343 son los de las funciones de acceso a Amazon EMR permitidas.* ARNs 

```
#!/bin/bash

set -eux

FILE_DIRECTORY="/home/sagemaker-user/.sagemaker-analytics-configuration-DO_NOT_DELETE"
FILE_NAME="emr-configurations-DO_NOT_DELETE.json"
FILE="$FILE_DIRECTORY/$FILE_NAME"

mkdir -p $FILE_DIRECTORY

cat << 'EOF' > "$FILE"
{
    "emr-execution-role-arns":
    {
      "123456789012": [
          "arn:aws:iam::212121212121:role/emr-execution-role-1",
          "arn:aws:iam::434343434343:role/emr-execution-role-2"
      ]
    }
}
EOF

# add your cross-account EMR access role
FILE_DIRECTORY="/home/sagemaker-user/.cross-account-configuration-DO_NOT_DELETE"
FILE_NAME="emr-discovery-iam-role-arns-DO_NOT_DELETE.json"
FILE="$FILE_DIRECTORY/$FILE_NAME"

mkdir -p $FILE_DIRECTORY

cat << 'EOF' > "$FILE"
{
    "123456789012": "arn:aws:iam::123456789012:role/cross-account-emr-access-role"
}
EOF
```

------

# Políticas de referencia
<a name="studio-set-up-emr-permissions-reference"></a>
+ **Políticas de enumeración de Amazon EMR**: esta política permite realizar las siguientes acciones:
  + `AllowPresignedUrl`permite URLs generar datos prefirmados para acceder a la interfaz de usuario de Spark desde Studio.
  + `AllowClusterDiscovery` y `AllowClusterDetailsDiscovery` permiten enumerar y describir los clústeres de Amazon EMR en la región y la cuenta proporcionadas.

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "AllowPresignedUrl",
              "Effect": "Allow",
              "Action": [
                  "elasticmapreduce:CreatePersistentAppUI",
                  "elasticmapreduce:DescribePersistentAppUI",
                  "elasticmapreduce:GetPersistentAppUIPresignedURL",
                  "elasticmapreduce:GetOnClusterAppUIPresignedURL"
              ],
              "Resource": [
                  "arn:aws:elasticmapreduce:us-east-1:111122223333:cluster/*"
              ]
          },
          {
              "Sid": "AllowClusterDetailsDiscovery",
              "Effect": "Allow",
              "Action": [
                  "elasticmapreduce:DescribeCluster",
                  "elasticmapreduce:ListInstances",
                  "elasticmapreduce:ListInstanceGroups",
                  "elasticmapreduce:DescribeSecurityConfiguration"
              ],
              "Resource": [
                  "arn:aws:elasticmapreduce:us-east-1:111122223333:cluster/*"
              ]
          },
          {
              "Sid": "AllowClusterDiscovery",
              "Effect": "Allow",
              "Action": [
                  "elasticmapreduce:ListClusters"
              ],
              "Resource": "*"
          }
      ]
  }
  ```

------
+ **Políticas de creación de clústeres de Amazon EMR**: esta política permite realizar las siguientes acciones:
  + `AllowEMRTemplateDiscovery` permite buscar plantillas de Amazon EMR en Service Catalog. Studio y Studio Classic la utilizan para mostrar las plantillas disponibles.
  + `AllowSagemakerProjectManagement` permite la creación de [¿Qué es un proyecto de SageMaker IA?](sagemaker-projects-whatis.md). En Studio o Studio Classic, el acceso a la AWS Service Catalog se gestiona mediante[¿Qué es un proyecto de SageMaker IA?](sagemaker-projects-whatis.md).

  La política de IAM definida en el JSON proporcionado concede esos permisos. Sustituya *region* y *accountID* por sus valores reales de región e ID de AWS cuenta antes de copiar la lista de estados de cuenta a la política interna de su función.

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "AllowEMRTemplateDiscovery",
              "Effect": "Allow",
              "Action": [
                  "servicecatalog:SearchProducts"
              ],
              "Resource": "*"
          },
          {
              "Sid": "AllowSagemakerProjectManagement",
              "Effect": "Allow",
              "Action": [
                  "sagemaker:CreateProject",
                  "sagemaker:DeleteProject"
              ],
              "Resource": "arn:aws:sagemaker:us-east-1:111122223333:project/*"
          }
      ]
  }
  ```

------
+ **Política de acciones de actualización de dominios, perfiles de usuario y espacios**: la siguiente política otorga permisos para actualizar los dominios, perfiles de usuario y espacios de SageMaker IA dentro de la región y la AWS cuenta especificadas.

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Sid": "SageMakerUpdateResourcesPolicy",
              "Effect": "Allow",
              "Action": [
                  "sagemaker:UpdateDomain",
                  "sagemaker:UpdateUserprofile",
                  "sagemaker:UpdateSpace"
              ],
              "Resource": [
                  "arn:aws:sagemaker:us-east-1:111122223333:domain/*",
                  "arn:aws:sagemaker:us-east-1:111122223333:user-profile/*"
              ]
          }
      ]
  }
  ```

------

# Guía del usuario
<a name="studio-emr-user-guide"></a>

En esta sección, se explica cómo los científicos de datos y los ingenieros de datos pueden inicializar, detectar, finalizar un clúster de Amazon EMR o conectarse a él desde Studio o Studio Classic.

Para que los usuarios puedan enumerar o inicializar clústeres, los administradores deben haber configurado los ajustes necesarios en el entorno de Studio. Para obtener más información sobre cómo los administradores pueden configurar un entorno de Studio para permitir el autoaprovisionamiento y la enumeración de clústeres de Amazon EMR, consulte [Guía de administración](studio-emr-admin-guide.md).

**Topics**
+ [Imágenes y kernels compatibles para conectarse a un clúster de Amazon EMR desde Studio o Studio Classic](#studio-notebooks-emr-cluster-connect-kernels)
+ [Traiga su propia imagen](#studio-notebooks-emr-byoi)
+ [Inicialización de un clúster de Amazon EMR desde Studio o Studio Classic](studio-notebooks-launch-emr-cluster-from-template.md)
+ [Enumeración de clústeres de Amazon EMR desde Studio o Studio Classic](discover-emr-clusters.md)
+ [Conéctese a un clúster de Amazon EMR desde SageMaker Studio o Studio Classic](connect-emr-clusters.md)
+ [Finalización de un clúster de Amazon EMR desde Studio o Studio Classic](terminate-emr-clusters.md)
+ [Acceso a la interfaz de usuario de Spark desde Studio o Studio Classic](studio-notebooks-access-spark-ui.md)

## Imágenes y kernels compatibles para conectarse a un clúster de Amazon EMR desde Studio o Studio Classic
<a name="studio-notebooks-emr-cluster-connect-kernels"></a>

Las siguientes imágenes y núcleos vienen con [sagemaker-studio-analytics-extension](https://pypi.org/project/sagemaker-studio-analytics-extension/)la JupyterLab extensión que se conecta a un clúster remoto de Spark (Amazon EMR) a través de [SparkMagic](https://github.com/jupyter-incubator/sparkmagic)la biblioteca [mediante](https://livy.apache.org/) Apache Livy.
+ **Para los usuarios de Studio:** SageMaker Distribution es un entorno de Docker para la ciencia de datos que se utiliza como imagen predeterminada de las instancias de notebook. JupyterLab Todas las versiones de [SageMaker AI Distribution](https://github.com/aws/sagemaker-distribution) vienen `sagemaker-studio-analytics-extension` preinstaladas.
+ **Para los usuarios de Studio Classic:** las siguientes imágenes vienen preinstaladas con `sagemaker-studio-analytics-extension`:
  + DataScience — Núcleo de Python 3
  + DataScience 2.0 — Núcleo de Python 3
  + DataScience 3.0 — Núcleo de Python 3
  + SparkAnalytics 1.0 — SparkMagic y PySpark núcleos
  + SparkAnalytics 2.0 — SparkMagic y núcleos PySpark 
  + SparkMagic — SparkMagic y granos PySpark 
  + PyTorch 1.8 — Núcleos de Python 3
  + TensorFlow 2.6 — Núcleo de Python 3
  + TensorFlow 2.11 — Núcleo de Python 3

Para conectarse a los clústeres de Amazon EMR mediante otra imagen integrada o su propia imagen, siga las instrucciones que se indican en [Traiga su propia imagen](#studio-notebooks-emr-byoi).

## Traiga su propia imagen
<a name="studio-notebooks-emr-byoi"></a>

Para incorporar su propia imagen a Studio o Studio Classic y permitir que sus ordenadores portátiles se conecten a los clústeres de Amazon EMR, instale la [sagemaker-studio-analytics-extension](https://pypi.org/project/sagemaker-studio-analytics-extension/)siguiente extensión en el núcleo. Admite la conexión de portátiles SageMaker Studio o Studio Classic a clústeres de Spark (Amazon EMR) a través [SparkMagic](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-studio-magics.html)de la biblioteca.

```
pip install sparkmagic
pip install sagemaker-studio-sparkmagic-lib
pip install sagemaker-studio-analytics-extension
```

Además, para conectarse a Amazon EMR con la autenticación [Kerberos](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html), debe instalar el cliente kinit. En función del sistema operativo, el comando para instalar el cliente kinit puede variar. Para obtener una imagen de Ubuntu (basada en Debian), utilice el comando `apt-get install -y -qq krb5-user`.

Para obtener más información sobre cómo crear su propia imagen en SageMaker Studio o Studio Classic, consulte [Traiga su propia SageMaker ](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-byoi.html) imagen.

# Inicialización de un clúster de Amazon EMR desde Studio o Studio Classic
<a name="studio-notebooks-launch-emr-cluster-from-template"></a>

Los científicos e ingenieros de datos pueden aprovisionar automáticamente los clústeres de Amazon EMR desde Studio o Studio Classic CloudFormation mediante plantillas configuradas por sus administradores. Para que los usuarios puedan inicializar un clúster, los administradores deben haber configurado los ajustes necesarios en el entorno de Studio. Para obtener más información sobre cómo los administradores pueden configurar un entorno de Studio para permitir el autoaprovisionamiento de clústeres de Amazon EMR, consulte [Configurar las CloudFormation plantillas de Amazon EMR en el Service Catalog](studio-notebooks-set-up-emr-templates.md).

Para aprovisionar un nuevo clúster de Amazon EMR desde Studio o Studio Classic:

1. En el panel izquierdo de la interfaz de usuario de Studio o Studio Classic, seleccione el nodo **Datos** en el menú de navegación de la izquierda. Navegue hasta **Clústeres de Amazon EMR**. Se abrirá una página con una lista de los clústeres de Amazon EMR a los que puede acceder desde Studio o Studio Classic.

1. Seleccione el botón **Crear** situado en la esquina superior derecha. Al hacerlo, se abre un nuevo modal con una lista de las plantillas de clústeres disponibles.

1. Seleccione una plantilla de clúster eligiendo un nombre de plantilla y, a continuación, elija **Siguiente**.

1. Introduzca los detalles del clúster, como el nombre del clúster y cualquier parámetro configurable específico establecido por su administrador, y luego elija **Crear clúster**. La creación del clúster puede tardar un par de minutos.  
![\[Formulario de creación de un clúster de Amazon EMR desde Studio o Studio Classic.\]](http://docs.aws.amazon.com/es_es/sagemaker/latest/dg/images/studio/emr/studio-notebooks-emr-cluster-creation.png)

Una vez aprovisionado el clúster, la interfaz de usuario de Studio o Studio Classic muestra el mensaje *El clúster se ha creado correctamente*.

Para conectarse y utilizar el clúster, consulte [Conéctese a un clúster de Amazon EMR desde SageMaker Studio o Studio Classic](connect-emr-clusters.md)

# Enumeración de clústeres de Amazon EMR desde Studio o Studio Classic
<a name="discover-emr-clusters"></a>

Los científicos e ingenieros de datos pueden detectar clústeres de Amazon EMR y luego conectarse a ellos desde Studio. Los clústeres de Amazon EMR pueden estar en la misma AWS cuenta que Studio o en una cuenta diferente AWS .

Para que los usuarios puedan enumerar clústeres o conectarse a ellos, los administradores deben haber configurado los ajustes necesarios en el entorno de Studio. Para obtener más información sobre cómo los administradores pueden configurar un entorno de Studio para permitir la detección ejecutando clústeres de Amazon EMR, consulte [Guía de administración](studio-emr-admin-guide.md). Si su administrador [configuró la detección entre cuentas de clústeres de Amazon EMR](studio-notebooks-configure-discoverability-emr-cluster.md), puede ver una lista consolidada de clústeres. La lista incluye los clústeres de la AWS cuenta utilizada por Studio, así como los clústeres de las cuentas remotas a las que se le ha concedido acceso.

Para ver la lista de clústeres de Amazon EMR disponibles en Studio:

1. En el menú de navegación izquierdo de la interfaz de usuario de Studio, desplácese hacia abajo hasta **Clústeres de EMR**. Se abrirá una página con una lista de los clústeres de Amazon EMR a los que tiene acceso.

   La lista muestra los clústeres en las siguientes etapas: **Proceso de arranque**, **Comenzando** **En ejecución**, **Esperando**. Puede restringir los clústeres mostrados según su estado actual mediante el icono de filtro. 

1. Elija un clúster **En ejecución** concreto al que desee conectarse y, a continuación, consulte[Conéctese a un clúster de Amazon EMR desde SageMaker Studio o Studio Classic](connect-emr-clusters.md).

# Conéctese a un clúster de Amazon EMR desde SageMaker Studio o Studio Classic
<a name="connect-emr-clusters"></a>

Los científicos e ingenieros de datos pueden detectar un clúster de Amazon EMR, y luego conectarse a él, directamente desde la interfaz de usuario de Studio. Antes de comenzar, asegúrese de haber configurado los permisos necesarios tal y como se describe en la sección [Paso 4: configuración de los permisos para habilitar la enumeración y la inicialización de clústeres de Amazon EMR desde Studio](studio-notebooks-set-up-emr-templates.md#studio-emr-permissions). Estos permisos permiten a Studio crear, iniciar, ver, finalizar los clústeres y acceder a ellos.

Puede conectar un clúster de Amazon EMR a un nuevo JupyterLab bloc de notas directamente desde la interfaz de usuario de Studio, o bien elegir iniciar la conexión en un bloc de notas de una aplicación en ejecución JupyterLab .

**importante**  
Solo puede descubrir clústeres de Amazon EMR y conectarse a ellos para JupyterLab aplicaciones de Studio Classic que se lancen desde espacios privados. Asegúrese de que los clústeres de Amazon EMR estén ubicados en la misma AWS región que su entorno de Studio. Su JupyterLab espacio debe usar una versión SageMaker de imagen de distribución `1.10` o superior.

## Conexión a un clúster de Amazon EMR mediante la IA de Studio
<a name="connect-emr-clusters-ui-options"></a>

Para conectarse a su clúster mediante la interfaz de usuario de Studio o Studio Classic, puede iniciar una conexión desde la lista de clústeres a los que se accede o desde una libreta de SageMaker Studio o Studio Classic. [Enumeración de clústeres de Amazon EMR desde Studio o Studio Classic](discover-emr-clusters.md)

**Para conectar un clúster de Amazon EMR a un nuevo JupyterLab bloc de notas desde la interfaz de usuario de Studio:**

1. En el panel izquierdo de la IA de Studio, seleccione el nodo **Datos** en el menú de navegación izquierdo. Navegue hasta **Aplicaciones y clústeres de Amazon EMR**. Se abrirá una página con una lista de los clústeres de Amazon EMR a los que puede acceder desde Studio en la pestaña **Clústeres de Amazon EMR**.
**nota**  
Si usted o su administrador han configurado los permisos para permitir el acceso entre cuentas a los clústeres de Amazon EMR, podrá ver una lista consolidada de los clústeres de todas las cuentas a las que haya concedido acceso a Studio.

1. Seleccione un clúster de Amazon EMR que desee conectar a un nuevo cuaderno y, a continuación, seleccione **Asociar a cuaderno**. Esto abre una ventana modal que muestra la lista de sus JupyterLab espacios.

1. 
   + Seleccione el espacio desde el que desea iniciar una JupyterLab aplicación y, a continuación, elija **Abrir bloc de notas**. Se abrirá una JupyterLab aplicación desde el espacio elegido y se abrirá un nuevo bloc de notas.
**nota**  
Los usuarios de Studio Classic deben seleccionar una imagen y un kernel. Para obtener una lista de imágenes compatibles, consulte [Imágenes y kernels compatibles para conectarse a un clúster de Amazon EMR desde Studio o Studio Classic](studio-emr-user-guide.md#studio-notebooks-emr-cluster-connect-kernels) o [Traiga su propia imagen](studio-emr-user-guide.md#studio-notebooks-emr-byoi).
   + Como alternativa, puede crear un nuevo espacio privado pulsando el botón **Crear nuevo espacio** en la parte superior de la ventana modal. Introduzca un nombre para su espacio y, a continuación, seleccione **Crear espacio y abrir el cuaderno**. De este modo, se crea un espacio privado con el tipo de instancia predeterminado y la imagen de SageMaker distribución más reciente disponible, se inicia una JupyterLab aplicación y se abre un nuevo bloc de notas.

1. Si el clúster que seleccione no utiliza la autenticación Kerberos, LDAP o de [rol de tiempo de ejecución](), Studio le pedirá que seleccione el tipo de credencial. Elija entre **Http basic authentication (Autenticación básica HTTP)** o **No credentials (Sin credenciales)** e introduzca sus credenciales, si corresponde.

   Si el clúster que selecciona admite roles de tiempo de ejecución, elija el nombre de el rol de IAM que su clúster de Amazon EMR puede asumir para la ejecución del trabajo. 
**importante**  
Para conectar correctamente un JupyterLab bloc de notas a un clúster de Amazon EMR que admita funciones de tiempo de ejecución, primero debe asociar la lista de funciones de tiempo de ejecución a su dominio o perfil de usuario, tal y como se describe en. [Configuración de roles de tiempo de ejecución de IAM para el acceso al clúster de Amazon EMR en Studio](studio-notebooks-emr-cluster-rbac.md) Si no realiza este paso, no podrá establecer la conexión. 

   Al seleccionarlo, un comando de conexión rellena la primera celda del cuaderno e inicia la conexión con el clúster de Amazon EMR.

   Cuando la conexión se realice correctamente, un mensaje confirmará la conexión y el inicio de la aplicación Spark.

**Como alternativa, puede conectarse a un clúster desde una libreta JupyterLab o una de Studio Classic.**

1. Seleccione el botón **Clúster** en la parte superior del cuaderno. Se abrirá una ventana modal con una lista de los clústeres de Amazon EMR en un estado `Running` al que puede acceder. Puede ver los clústeres de Amazon EMR de `Running` en la pestaña **Clústeres de Amazon EMR**.
**nota**  
Para los usuarios de Studio Classic, **Clúster** solo es visible cuando se utiliza un kernel desde [Imágenes y kernels compatibles para conectarse a un clúster de Amazon EMR desde Studio o Studio Classic](studio-emr-user-guide.md#studio-notebooks-emr-cluster-connect-kernels) o desde [Traiga su propia imagen](studio-emr-user-guide.md#studio-notebooks-emr-byoi). Si no puede ver **Clúster** en la parte superior de su cuaderno, asegúrese de que el administrador haya [configurado la capacidad de detección de los clústeres](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-notebooks-configure-discoverability-emr-cluster.html) y cambie a un kernel compatible.

1. Seleccione el clúster al que desea conectarse y, a continuación, elija **Connect (Conectar)**.

1. Si ha configurado sus clústeres de Amazon EMR para que admitan [roles de IAM en tiempo de ejecución](studio-notebooks-emr-cluster-rbac.md), puede seleccionar su rol en el menú desplegable **Rol de ejecución de Amazon EMR**. 
**importante**  
Para conectar correctamente un JupyterLab bloc de notas a un clúster de Amazon EMR que admita funciones de tiempo de ejecución, primero debe asociar la lista de funciones de tiempo de ejecución a su dominio o perfil de usuario, tal y como se describe en. [Configuración de roles de tiempo de ejecución de IAM para el acceso al clúster de Amazon EMR en Studio](studio-notebooks-emr-cluster-rbac.md) Si no realiza este paso, no podrá establecer la conexión. 

   De lo contrario, si el clúster que elija no utiliza la autenticación Kerberos, LDAP o de roles en tiempo de ejecución, Studio o Studio Classic le pedirá que seleccione el tipo de credencial. Puede elegir entre **HTTP basic authentication (Autenticación básica HTTP)** o **No credential (Sin credenciales)**.

1. Studio añade un bloque de código a una celda activa y, a continuación, ejecuta un bloque de código para establecer la conexión. Esta celda contiene el comando mágico de conexión para conectar el cuaderno a la aplicación según el tipo de autenticación.

   Cuando la conexión se realice correctamente, un mensaje confirmará la conexión y el inicio de la aplicación Spark.

## Conexión a un clúster de Amazon EMR mediante un comando de conexión
<a name="connect-emr-clusters-manually"></a>

Para establecer una conexión a un clúster de Amazon EMR, puede ejecutar comandos de conexión dentro de una celda del cuaderno.

Al establecer la conexión, puede autenticarse mediante [Kerberos](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-kerberos.html), el [Protocolo ligero de acceso a directorios (LDAP)](https://docs.aws.amazon.com/) o la autenticación de [roles de IAM en tiempo de ejecución](https://docs.aws.amazon.com/sagemaker/latest/dg/studio-notebooks-emr-cluster-rbac.html). El método de autenticación que elija depende de la configuración del clúster. 

Puede consultar este ejemplo: [Access Apache Livy using a Network Load Balancer on a Kerberos-enabled Amazon EMR cluster](https://aws.amazon.com/blogs/big-data/access-apache-livy-using-a-network-load-balancer-on-a-kerberos-enabled-amazon-emr-cluster/) para configurar un clúster de Amazon EMR que utilice la autenticación Kerberos. [Como alternativa, puede explorar las plantillas de CloudFormation ejemplo que utilizan la autenticación Kerberos o LDAP en el repositorio aws-samples/. sagemaker-studio-emr](https://github.com/aws-samples/sagemaker-studio-emr/tree/main/cloudformation/getting_started) GitHub 

Si su administrador ha habilitado el acceso entre cuentas, puede conectarse a su clúster de Amazon EMR desde un bloc de notas de Studio Classic, independientemente de si la aplicación y el clúster de Studio Classic residen en la AWS misma cuenta o en cuentas diferentes.

Para cada uno de los siguientes tipos de autenticación, utilice el comando especificado para conectarse al clúster desde su cuaderno de Studio o Studio Classic.
+ **Kerberos**

  Añada el argumento `--assumable-role-arn` si necesita acceso entre cuentas a Amazon EMR. Añada el argumento `--verify-certificate` si se conecta a su clúster mediante HTTPS.

  ```
  %load_ext sagemaker_studio_analytics_extension.magics
  %sm_analytics emr connect --cluster-id cluster_id \
  --auth-type Kerberos --language python 
  [--assumable-role-arn EMR_access_role_ARN ] 
  [--verify-certificate /home/user/certificateKey.pem]
  ```
+ **LDAP**

  Añada el argumento `--assumable-role-arn` si necesita acceso entre cuentas a Amazon EMR. Añada el argumento `--verify-certificate` si se conecta a su clúster mediante HTTPS.

  ```
  %load_ext sagemaker_studio_analytics_extension.magics
  %sm_analytics emr connect --cluster-id cluster_id \
  --auth-type Basic_Access --language python 
  [--assumable-role-arn EMR_access_role_ARN ]
  [--verify-certificate /home/user/certificateKey.pem]
  ```
+ **NoAuth**

  Añada el argumento `--assumable-role-arn` si necesita acceso entre cuentas a Amazon EMR. Añada el argumento `--verify-certificate` si se conecta a su clúster mediante HTTPS.

  ```
  %load_ext sagemaker_studio_analytics_extension.magics
  %sm_analytics emr connect --cluster-id cluster_id \
  --auth-type None --language python
  [--assumable-role-arn EMR_access_role_ARN ]
  [--verify-certificate /home/user/certificateKey.pem]
  ```
+ **Roles de IAM en tiempo de ejecución**

  Añada el argumento `--assumable-role-arn` si necesita acceso entre cuentas a Amazon EMR. Añada el argumento `--verify-certificate` si se conecta a su clúster mediante HTTPS. 

  Para obtener más información acerca de la conexión a un clúster de Amazon EMR utilizando las funciones de IAM en tiempo de ejecución, consulte [Configuración de roles de tiempo de ejecución de IAM para el acceso al clúster de Amazon EMR en Studio](studio-notebooks-emr-cluster-rbac.md).

  ```
  %load_ext sagemaker_studio_analytics_extension.magics
  %sm_analytics emr connect --cluster-id cluster_id \
  --auth-type Basic_Access \
  --emr-execution-role-arn arn:aws:iam::studio_account_id:role/emr-execution-role-name
  [--assumable-role-arn EMR_access_role_ARN]
  [--verify-certificate /home/user/certificateKey.pem]
  ```

## Conectar a un clúster de Amazon EMR a través de HTTPS
<a name="connect-emr-clusters-ssl"></a>

Si ha configurado su clúster de Amazon EMR con el cifrado de tránsito habilitado y el servidor de Apache Livy para HTTPS y desea que Studio o Studio Classic se comunique con Amazon EMR mediante HTTPS, debe configurar Studio o Studio Classic para acceder a su clave de certificado.

En el caso de los certificados autofirmados o firmados por una autoridad de certificación (CA) local, puede hacerlo en dos pasos:

1. Descargue el archivo PEM del certificado en el sistema de archivos local con una de las siguientes opciones:
   + Función de carga de archivos integrada en Jupyter.
   + Una celda de cuaderno.
   + (Solo para usuarios de Studio Classic) Un script de configuración del ciclo de vida (LCC).

     Para obtener información sobre cómo utilizar un script de LCC, consulte [Personalización de una instancia de cuaderno mediante un script de configuración del ciclo de vida](https://docs.aws.amazon.com/sagemaker/latest/dg/notebook-lifecycle-config.html)

1. Habilite la validación del certificado proporcionando la ruta al certificado en el argumento `--verify-certificate` del comando de conexión.

   ```
   %sm_analytics emr connect --cluster-id cluster_id \
   --verify-certificate /home/user/certificateKey.pem ...
   ```

Para los certificados públicos emitidos por una CA, defina la validación del certificado configurando el parámetro `--verify-certificate` como `true`.

Como alternativa, puede deshabilitar la validación del certificado configurando el parámetro `--verify-certificate` como `false`.

Puede encontrar la lista de comandos de conexión disponibles a un clúster de Amazon EMR en [Conexión a un clúster de Amazon EMR mediante un comando de conexión](#connect-emr-clusters-manually).

# Finalización de un clúster de Amazon EMR desde Studio o Studio Classic
<a name="terminate-emr-clusters"></a>

En el siguiente procedimiento se muestra cómo finalizar un clúster de Amazon EMR desde un cuaderno de Studio o Studio Classic.

**Para terminar un clúster en un estado `Running`, diríjase a la lista de clústeres de Amazon EMR disponibles.**

1. En la interfaz de usuario de Studio, desplácese hacia abajo hasta el nodo **Datos** en el menú de navegación de la izquierda.

1. Desplácese hasta el nodo **Clústeres de EMR**. Se abrirá una página con una lista de los clústeres de Amazon EMR a los que tiene acceso.

1. Seleccione el nombre del clúster que desea finalizar y, a continuación, seleccione **Finalizar**.

1. Se abrirá una ventana de confirmación en la que se le informará de que cualquier trabajo o dato pendiente del clúster se perderá permanentemente tras la finalización. Confirme pulsando de nuevo **Terminate (Terminar)**.

# Acceso a la interfaz de usuario de Spark desde Studio o Studio Classic
<a name="studio-notebooks-access-spark-ui"></a>

En las siguientes secciones se proporcionan instrucciones para acceder a la interfaz de usuario de Spark desde las SageMaker libretas AI Studio o Studio Classic. La IU de Spark le permite supervisar y depurar sus trabajos de Spark enviados para ejecutarlos en Amazon EMR desde cuadernos de Studio o Studio Classic. Los túneles SSH y los prefirmados URLs son dos formas de acceder a la interfaz de usuario de Spark.

## Configurar los túneles SSH para acceder a la interfaz de usuario de Spark
<a name="studio-notebooks-emr-ssh-tunneling"></a>

Para configurar los túneles SSH para acceder a la interfaz de usuario de Spark, sigauna de las dos opciones de esta sección.

Opciones para configurar los túneles SSH:
+ [Opción 1: configurar un túnel SSH al nodo maestro utilizando el enrutamiento de puertos local](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-ssh-tunnel-local.html)
+ [Opción 2, parte 1: configurar un túnel SSH al nodo maestro utilizando el enrutamiento de puertos dinámico](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-ssh-tunnel.html)

  [Opción 2, parte 2: configurar ajustes de proxy para ver sitios web alojados en el nodo maestro](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-connect-master-node-proxy.html)

Para obtener más información sobre la visualización de interfaces web alojadas en clústeres de Amazon EMR, consulte [Ver las interfaces web alojadas en clústeres de Amazon EMR](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-web-interfaces.html). También puedes visitar la consola de Amazon EMR para acceder a la interfaz de usuario de Spark.

**nota**  
Puedes configurar un túnel SSH incluso si los prefirmados URLs no están disponibles. 

## Prefirmado URLs
<a name="studio-notebooks-emr-spark-ui-presigned-urls"></a>

Para crear con un solo clic URLs que pueda acceder a la interfaz de usuario de Spark en Amazon EMR SageMaker desde las libretas Studio o Studio Classic, debes habilitar los siguientes permisos de IAM. Elija la opción que más le convenga: 
+ **Para los clústeres de Amazon EMR que estén en la misma cuenta que el bloc de notas de SageMaker Studio o Studio Classic: añada los siguientes permisos a la función de ejecución de IAM de SageMaker Studio o Studio Classic.**
+ **Para los clústeres de Amazon EMR que se encuentran en una cuenta diferente (no en SageMaker Studio ni en un bloc de notas Studio Classic): añada los siguientes permisos al rol multicuenta para el que creó. [Enumeración de clústeres de Amazon EMR desde Studio o Studio Classic](discover-emr-clusters.md)**

**nota**  
Puede acceder a los prefirmados URLs desde la consola en las siguientes regiones:  
Región del Este de EE. UU (Norte de Virginia)
Región del Oeste de EE. UU (Norte de California)
Región de Canadá (centro)
Región Europa (Fráncfort)
Región Europa (Estocolmo)
Región de Europa (Irlanda)
Región de Europa (Londres)
Región Europa (París)
Asia Pacífico (Tokio)
Región de Asia-Pacífico (Seúl)
Asia Pacific (Sydney) Region
Región de Asia-Pacífico (Bombay)
Región de Asia-Pacífico (Singapur)
América del Sur (São Paulo)

 La siguiente política le da acceso a los prefirmados URLs para su función de ejecución. 

```
{
        "Sid": "AllowPresignedUrl",
        "Effect": "Allow",
        "Action": [
            "elasticmapreduce:DescribeCluster",
            "elasticmapreduce:ListInstanceGroups",
            "elasticmapreduce:CreatePersistentAppUI",
            "elasticmapreduce:DescribePersistentAppUI",
            "elasticmapreduce:GetPersistentAppUIPresignedURL",
            "elasticmapreduce:GetOnClusterAppUIPresignedURL"
        ],
        "Resource": [
            "arn:aws:elasticmapreduce:region:account-id:cluster/*"
        ]
}
```

# Blogs y documentos técnicos
<a name="studio-notebooks-emr-resources"></a>

En los siguientes blogs, se utiliza un caso práctico sobre la predicción de sentimientos en la reseña de una película para ilustrar el proceso de ejecución de un flujo de trabajo completo de machine learning. Esto incluye la preparación de datos, la supervisión de los trabajos de Spark y el entrenamiento e implementación de un modelo de machine learning para obtener predicciones directamente desde su cuaderno de Studio o Studio Classic.
+ [Cree y gestione clústeres de Amazon EMR desde SageMaker Studio o Studio Classic para ejecutar cargas de trabajo interactivas de Spark y ML](https://aws.amazon.com/blogs/machine-learning/part-1-create-and-manage-amazon-emr-clusters-from-sagemaker-studio-to-run-interactive-spark-and-ml-workloads/).
+ Para extender el caso de uso a una configuración multicuenta en la que SageMaker Studio o Studio Classic y su clúster de Amazon EMR se implementan en cuentas AWS independientes, [consulte Crear y administrar clústeres de Amazon EMR SageMaker desde Studio o Studio Classic para ejecutar cargas de trabajo interactivas de Spark y ML](https://aws.amazon.com/blogs/machine-learning/part-2-create-and-manage-amazon-emr-clusters-from-sagemaker-studio-to-run-interactive-spark-and-ml-workloads/), parte 2.

Véase también: 
+ Un tutorial de la configuración de [Acceso a Apache Livy mediante un Equilibrador de carga de red en un clúster Amazon EMR habilitado para Kerberos](https://aws.amazon.com/blogs/big-data/access-apache-livy-using-a-network-load-balancer-on-a-kerberos-enabled-amazon-emr-cluster/).
+ AWS documentos técnicos sobre las prácticas recomendadas de [SageMaker Studio o Studio Classic.](https://docs.aws.amazon.com/whitepapers/latest/sagemaker-studio-admin-best-practices/sagemaker-studio-admin-best-practices.html)

# Resolución de problemas
<a name="studio-notebooks-emr-troubleshooting"></a>

Al trabajar con clústeres de Amazon EMR desde cuadernos de Studio o Studio Classic, es posible que encuentre varios problemas o desafíos potenciales durante el proceso de conexión o uso. Para ayudarle a solucionar y resolver estos errores, en esta sección se proporcionan instrucciones sobre los problemas más comunes que pueden surgir. 

Aprenda a solucionar los errores más comunes que pueden producirse al conectar o utilizar los clústeres de Amazon EMR desde los cuadernos de Studio o Studio Classic.

## Solucionar problemas de conexiones Livy que estén bloqueadas o defectuosas
<a name="studio-notebooks-emr-troubleshooting.memoryerror"></a>

Los siguientes son problemas de conectividad de Livy que pueden producirse al utilizar los clústeres de Amazon EMR de los cuadernos de Studio o Studio Classic.
+ **El clúster de Amazon EMR ha detectado un out-of-memory error.**

  Una posible razón por la que una conexión de Livy se `sparkmagic` bloquea o falla es si el clúster de Amazon EMR ha detectado un out-of-memory error. 

  De forma predeterminada, el parámetro de configuración de Java del controlador Apache Spark, `spark.driver.defaultJavaOptions`. está establecido en `-XX:OnOutOfMemoryError='kill -9 %p'`. Esto significa que la acción predeterminada que se toma cuando el programa del controlador encuentra una `OutOfMemoryError` es terminar el programa de controlador enviando una señal SIGKILL. Cuando se cierra el controlador Apache Spark, cualquier conexión de Livy `sparkmagic` que dependa de ese controlador se bloquea o falla. Esto se debe a que el controlador Spark es responsable de administrar los recursos de la aplicación Spark, incluida la programación y ejecución de las tareas. Sin el controlador, la aplicación Spark no puede funcionar y cualquier intento de interactuar con él fracasa.

  Si sospecha que su clúster de Spark tiene problemas de memoria, puede consultar los [registros de Amazon EMR.](https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-manage-view-web-log-files.html) Los contenedores bloqueados debido a out-of-memory errores suelen salir con un código de. `137` En esos casos, tendrá que reiniciar la aplicación de Spark y establecer una nueva conexión con Livy para reanudar la interacción con el clúster de Spark.

  Puedes consultar el artículo de la base de conocimientos [¿Cómo resuelvo el error «YARN ha eliminado un contenedor por superar los límites de memoria» en Spark en Amazon EMR](https://repost.aws/knowledge-center/emr-spark-yarn-memory-limit)? aquí AWS re:Post encontrarás información sobre las distintas estrategias y parámetros que se pueden utilizar para solucionar un out-of-memory problema.

  Le recomendamos que consulte las [guías de prácticas recomendadas de Amazon EMR](https://aws.github.io/aws-emr-best-practices/) para conocer las prácticas recomendadas y la orientación de ajuste sobre la ejecución de cargas de trabajo de Apache Spark en sus clústeres de Amazon EMR.
+ **Se agota el tiempo de espera de su sesión de Livy cuando se conecta a un clúster de Amazon EMR por primera vez.**

  Cuando se conecta inicialmente a un clúster de Amazon EMR mediante Apache Livy [sagemaker-studio-analytics-extension](https://pypi.org/project/sagemaker-studio-analytics-extension/), que permite la conexión a un clúster remoto de Spark (Amazon EMR) a través de la [SparkMagic](https://github.com/jupyter-incubator/sparkmagic)biblioteca mediante [Apache Livy](https://livy.apache.org/), es posible que se produzca un error de tiempo de espera de conexión:

  `An error was encountered: Session 0 did not start up in 60 seconds.`

  Si su clúster de Amazon EMR requiere la inicialización de una aplicación Spark al establecer una conexión, existe una mayor probabilidad de que se produzcan errores de tiempo de espera de la conexión.

  Para reducir las probabilidades de que se agoten los tiempos de espera al conectarse a un clúster de Amazon EMR mediante Livy, a través de la extensión de análisis, `sagemaker-studio-analytics-extension` versión `0.0.19` y posteriores, anulan el tiempo de espera predeterminado de la sesión del servidor a `120` segundos en lugar del valor predeterminado de `sparkmagic` de `60` segundos.

  Le recomendamos que actualice la extensión `0.0.18` y, anteriores ejecutando el siguiente comando de actualización.

  ```
  pip install --upgrade sagemaker-studio-analytics-extension
  ```

  Tenga en cuenta que al proporcionar una configuración de tiempo de espera personalizada en `sparkmagic`, `sagemaker-studio-analytics-extension` respeta esta anulación. Sin embargo, si se establece el tiempo de espera de la sesión en `60` segundos, se activa automáticamente el tiempo de espera predeterminado de la sesión del servidor de `120` segundos en `sagemaker-studio-analytics-extension`.