Crea una RStudio imagen personalizada - Amazon SageMaker AI

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

Crea una RStudio imagen personalizada

importante

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

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

En este tema se describe cómo se puede crear una RStudio imagen personalizada mediante la consola de SageMaker IA y el AWS CLI. Si usa el AWS CLI, debe ejecutar los pasos desde su máquina local. Los siguientes pasos no funcionan desde Amazon SageMaker Studio Classic.

Al crear una imagen, la SageMaker IA también crea una versión inicial de la imagen. La versión de la imagen representa una imagen de contenedor en Amazon Elastic Container Registry (ECR). La imagen del contenedor debe cumplir los requisitos para ser utilizada RStudio. Para obtener más información, consulte Especificaciones RStudio de imagen personalizadas.

Para obtener información sobre cómo probar la imagen localmente y resolver problemas comunes, consulta el repositorio de muestras de imágenes personalizadas de SageMaker Studio.

Añadir una imagen de contenedor RStudio Docker SageMaker compatible con IA a Amazon ECR

Siga estos pasos para agregar una imagen de contenedor de Docker a Amazon ECR:

  • Cree un repositorio de Amazon ECR.

  • Autentíquese en Amazon ECR.

  • Cree una imagen de Docker compatible con la IA SageMaker . RStudio

  • Cargue la imagen en el repositorio de Amazon ECR.

nota

El repositorio de Amazon ECR debe estar en el mismo lugar Región de AWS que su dominio.

Para crear y añadir una imagen de Docker a Amazon ECR
  1. Cree un repositorio de Amazon ECR usando AWS CLI. Para crear el repositorio mediante la consola de Amazon ECR, consulte Crear un repositorio.

    aws ecr create-repository \ --repository-name rstudio-custom \ --image-scanning-configuration scanOnPush=true

    Respuesta:

    { "repository": { "repositoryArn": "arn:aws:ecr:us-east-2:acct-id:repository/rstudio-custom", "registryId": "acct-id", "repositoryName": "rstudio-custom", "repositoryUri": "acct-id.dkr.ecr.us-east-2.amazonaws.com/rstudio-custom", ... } }
  2. Autentíquese en Amazon ECR mediante el URI del repositorio devuelto como respuesta del comando create-repository. Asegúrese de que la aplicación Docker se está ejecutando. Para obtener más información, consulte Autenticación del registro.

    aws ecr get-login-password | \ docker login --username AWS --password-stdin <repository-uri>

    Respuesta:

    Login Succeeded
  3. Cree la imagen de Docker. Ejecute el siguiente comando desde el directorio que incluye el Dockerfile.

    docker build .
  4. Etiquete la imagen creada con una etiqueta única.

    docker tag <image-id> "<repository-uri>:<tag>"
  5. Cargue la imagen de contenedor en el repositorio de Amazon ECR. Para obtener más información, consulte ImagePushEmpujar una imagen.

    docker push <repository-uri>:<tag>

    Respuesta:

    The push refers to repository [<account-id>.dkr.ecr.us-east-2.amazonaws.com/rstudio-custom] r: digest: <digest> size: 3066

Cree una SageMaker imagen desde la consola

Para crear una imagen
  1. Abre la consola Amazon SageMaker AI en https://console.aws.amazon.com/sagemaker/.

  2. En el panel de navegación izquierdo, seleccione Configuraciones de administración.

  3. En Configuraciones de administrador, elija Imágenes.

  4. En la página Imágenes personalizadas, elija Crear imagen.

  5. Para Fuente de imagen, introduzca la ruta de registro de la imagen de contenedor en Amazon ECR. La ruta tiene el siguiente formato:

    acct-id.dkr.ecr.region.amazonaws.com/repo-name[:tag] or [@digest]

  6. Seleccione Siguiente.

  7. En Propiedades de imagen, introduzca lo siguiente:

    • Nombre de imagen: el nombre debe ser exclusivo de su cuenta en la Región de AWS actual.

    • (Opcional) Nombre para mostrar de la imagen: nombre que se muestra en la interfaz de usuario del dominio. Cuando no se proporciona, se muestra Image name.

    • (Opcional) Descripción: descripción de la imagen.

    • Función de IAM: la función debe tener la AmazonSageMakerFullAccesspolítica adjunta. Utilice el menú desplegable para elegir una de las opciones siguientes:

      • Crear un nuevo rol: especifique cualquier bucket adicional de Amazon Simple Storage Service (Amazon S3) al que desee que accedan los usuarios de blocs de notas. Si no desea permitir el acceso a buckets adicionales, elija Ninguno.

        SageMaker La IA vincula la AmazonSageMakerFullAccess política a la función. El rol permite a los usuarios de blocs de notas acceder a los buckets de Amazon S3 que aparecen junto a las marcas de verificación.

      • Introduzca un ARN de rol de IAM personalizado: introduzca el nombre de recurso de Amazon (ARN) de su rol de IAM.

      • Usar rol existente: elija uno de los roles existentes de la lista.

    • (Opcional) Etiquetas de imagen: elija Añadir nueva etiqueta. Puede añadir hasta 50 etiquetas. Las etiquetas se pueden buscar mediante la consola de SageMaker IA o la API de SageMaker IASearch.

  8. En Tipo de imagen, selecciona RStudio imagen.

  9. Elija Enviar.

La nueva imagen se muestra en la lista Imágenes personalizadas y se resalta brevemente. Una vez creada correctamente la imagen, puede elegir el nombre de la imagen para ver sus propiedades o elegir Crear versión para crear otra versión.

Para crear otra versión de la imagen
  1. Elija Crear versión en la misma fila que la imagen.

  2. Para Fuente de imagen, introduzca la ruta de registro de la imagen de Amazon ECR. La imagen no debe ser la misma que se usó en una versión anterior de la imagen de SageMaker IA.

Para usar la imagen personalizada RStudio, debes adjuntarla a tu dominio. Para obtener más información, consulte Adjunta una SageMaker imagen personalizada.

Crea una imagen a partir del AWS CLI

En esta sección se muestra cómo crear una SageMaker imagen de Amazon personalizada con AWS CLI.

Siga los siguientes pasos para crear una SageMaker imagen:

  • Cree una Image.

  • Cree una ImageVersion.

  • Cree un archivo de configuración.

  • Cree una AppImageConfig.

Para crear las entidades SageMaker de imagen
  1. Cree una SageMaker imagen. El ARN del rol debe tener asociada como mínimo la política AmazonSageMakerFullAccessPolicy.

    aws sagemaker create-image \ --image-name rstudio-custom-image \ --role-arn arn:aws:iam::<acct-id>:role/service-role/<execution-role>

    Respuesta:

    { "ImageArn": "arn:aws:sagemaker:us-east-2:acct-id:image/rstudio-custom-image" }
  2. Cree una versión SageMaker de imagen a partir de la imagen. Pase el valor de etiqueta exclusivo que eligió al insertar la imagen en Amazon ECR.

    aws sagemaker create-image-version \ --image-name rstudio-custom-image \ --base-image <repository-uri>:<tag>

    Respuesta:

    { "ImageVersionArn": "arn:aws:sagemaker:us-east-2:acct-id:image-version/rstudio-image/1" }
  3. Compruebe que la versión de la imagen se ha creado correctamente.

    aws sagemaker describe-image-version \ --image-name rstudio-custom-image \ --version 1

    Respuesta:

    { "ImageVersionArn": "arn:aws:sagemaker:us-east-2:acct-id:image-version/rstudio-custom-image/1", "ImageVersionStatus": "CREATED" }
    nota

    Si la respuesta es "ImageVersionStatus": "CREATED_FAILED", también incluye el motivo del error. Un problema de permisos es una causa común de error. También puedes consultar tus Amazon CloudWatch Logs. El nombre del grupo de registro es /aws/sagemaker/studio. El nombre del flujo de registro es $domainID/$userProfileName/KernelGateway/$appName.

  4. Cree un archivo de configuración llamado app-image-config-input.json. La configuración de la imagen de la aplicación se utiliza para configurar la ejecución de una SageMaker imagen como una aplicación de Kernel Gateway.

    { "AppImageConfigName": "rstudio-custom-config" }
  5. Cree la AppImageConfig misma con el archivo que creó en el paso anterior.

    aws sagemaker create-app-image-config \ --cli-input-json file://app-image-config-input.json

    Respuesta:

    { "AppImageConfigArn": "arn:aws:sagemaker:us-east-2:acct-id:app-image-config/r-image-config" }