RStudio en Amazon SageMaker es el primer RStudio Workbench completamente administrado de la industria en la nube. Puede iniciar rápidamente el conocido entorno de desarrollo integrado (IDE) de RStudio y aumentar y disminuir los recursos informáticos subyacentes sin interrumpir su trabajo, lo que facilita la creación de soluciones de análisis y aprendizaje automático (ML) en R a escala. RStudio en SageMaker ya viene con un imagen incorporada preconfigurado con programación R y herramientas de ciencia de datos; sin embargo, a menudo necesita personalizar su entorno IDE. A partir de hoy, puede traer su propia imagen personalizada con paquetes y herramientas de su elección y ponerlos a disposición de todos los usuarios de RStudio en SageMaker con unos pocos clics.
Traer su propia imagen personalizada tiene varios beneficios. Puede estandarizar y simplificar la experiencia inicial para los científicos y desarrolladores de datos proporcionando una imagen de inicio, preconfigurando los controladores necesarios para conectarse a almacenes de datos o preinstalando software de ciencia de datos especializado para su dominio comercial. Además, las organizaciones que anteriormente alojaron su propio RStudio Workbench pueden tener entornos en contenedores existentes que deseen seguir usando en RStudio en SageMaker.
En esta publicación, compartimos instrucciones paso a paso para crear una imagen personalizada y traerla a RStudio en SageMaker usando el Consola de administración de AWS or Interfaz de línea de comandos de AWS (CLI de AWS). Puede poner en marcha su primer entorno IDE personalizado en unos sencillos pasos. Para obtener más información sobre el contenido discutido en esta publicación, consulte Trae tu propia imagen de RStudio.
Resumen de la solución
Cuando un científico de datos inicia una nueva sesión en RStudio en SageMaker, se aprovisiona una nueva instancia informática de aprendizaje automático bajo demanda y se ejecuta una imagen de contenedor que define el entorno de tiempo de ejecución (sistema operativo, bibliotecas, versiones de R, etc.) en el aprendizaje automático. instancia. Puede proporcionar a sus científicos de datos múltiples opciones para el entorno de tiempo de ejecución creando imágenes de contenedor personalizadas y haciéndolas disponibles en el iniciador de RStudio Workbench, como se muestra en la siguiente captura de pantalla.
El siguiente diagrama describe el proceso para traer su imagen personalizada. Primero, crea una imagen de contenedor personalizada a partir de un Dockerfile y la envía a un repositorio en Registro de contenedores elásticos de Amazon (Amazon ECR). A continuación, cree una imagen de SageMaker que apunte a la imagen del contenedor en Amazon ECR y adjunte esa imagen a su Dominio de SageMaker. Esto hace que la imagen personalizada esté disponible para iniciar una nueva sesión en RStudio.
Requisitos previos
Para implementar esta solución, debe tener los siguientes requisitos previos:
- Un dominio RStudio en SageMaker
- Gestión de identidades y accesos de AWS (IAM) políticas para interactuar con Amazon ECR
- La versión adecuada de la AWS CLI
Proporcionamos más detalles sobre cada uno en esta sección.
RStudio en el dominio de SageMaker
Si tiene un dominio de SageMaker existente con RStudio habilitado antes del 7 de abril de 2022, debe eliminar y volver a crear el RStudioServerPro
aplicación bajo el nombre de perfil de usuario domain-shared
para obtener las últimas actualizaciones para traer su propia capacidad de imagen personalizada. Los comandos de la AWS CLI son los siguientes. Tenga en cuenta que esta acción interrumpe a los usuarios de RStudio en SageMaker.
Si es la primera vez que usa RStudio en SageMaker, siga el proceso de configuración paso a paso que se describe en Empiece a utilizar RStudio en Amazon SageMaker, o ejecuta lo siguiente Formación en la nube de AWS plantilla para configurar su primer RStudio en el dominio de SageMaker. Si ya tiene un RStudio en funcionamiento en el dominio de SageMaker, puede omitir este paso.
La siguiente plantilla de RStudio en SageMaker CloudFormation requiere una licencia de RStudio aprobada a través de AWS License Manager. Para obtener más información sobre las licencias, consulte licencia RStudio. Tenga en cuenta también que solo se permite un dominio de SageMaker por región de AWS, por lo que deberá utilizar una cuenta y una región de AWS que no tengan un dominio existente.
- Elige Pila de lanzamiento.
El enlace lo lleva a la región us-east-1, pero puede cambiar a su región preferida. - En Especificar plantilla sección, elija Siguiente.
- En Especificar detalles de la pila sección, para Nombre de pila, ingresa un nombre.
- parámetros, ingrese un nombre de perfil de usuario de SageMaker.
- Elige Siguiente.
- En Configurar opciones de pila sección, elija Siguiente.
- En Revisar sección, seleccionar Reconozco que AWS CloudFormation podría crear recursos de IAM y elige Siguiente.
- Cuando el estado de la pila cambia a
CREATE_COMPLETE
, Vaya a la Panel de Control en la consola de SageMaker para encontrar el dominio y el nuevo usuario.
Políticas de IAM para interactuar con Amazon ECR
Para interactuar con sus repositorios privados de Amazon ECR, necesita los siguientes permisos de IAM en el usuario o rol de IAM que usará para crear y enviar imágenes de Docker:
Para compilar inicialmente a partir de una imagen pública de Amazon ECR como se muestra en esta publicación, debe adjuntar la imagen administrada por AWS AmazonElasticContainerRegistryPublicReadOnly política a su usuario o rol de IAM también.
Para crear una imagen de contenedor de Docker, puede usar un cliente de Docker local o el Compilación de Docker de SageMaker Herramienta CLI desde una terminal dentro de RStudio en SageMaker. Para este último, siga los requisitos previos en Uso de la CLI de compilación de imágenes de Amazon SageMaker Studio para crear imágenes de contenedor desde sus cuadernos de Studio para configurar los permisos de IAM y la herramienta CLI.
Versiones de la CLI de AWS
Hay requisitos mínimos de versión para que la herramienta AWS CLI ejecute los comandos mencionados en esta publicación. Asegúrese de actualizar AWS CLI en su terminal de elección:
- CLI de AWS v1 >= 1.23.6
- CLI de AWS v2 >= 2.6.2
Preparar un Dockerfile
Puede personalizar su entorno de tiempo de ejecución en RStudio en un Dockerfile. Debido a que la personalización depende de su caso de uso y requisitos, le mostramos los elementos esenciales y las personalizaciones más comunes en este ejemplo. Puedes descargar el completo ejemplo Dockerfile.
Instalar componentes de sesión de RStudio Workbench
El software más importante para instalar en su imagen de contenedor personalizado es RStudio Workbench. Descargamos de la depósito público de S3 alojado por RStudio PBC. Hay muchos lanzamientos de versiones y distribuciones de SO para su uso. La versión de la instalación debe ser compatible con la versión de RStudio Workbench utilizada en RStudio en SageMaker, que es 1.4.1717-3 en el momento de la redacción. El sistema operativo (argumento del sistema operativo en el siguiente fragmento) debe coincidir con la base OS
utilizado en la imagen del contenedor. En nuestra muestra Dockerfile, la imagen base que usamos es Amazon Linux 2 de un repositorio público de Amazon ECR administrado por AWS. El sistema operativo RStudio Workbench compatible es centos7.
Puede encontrar todas las opciones de versión del sistema operativo con el siguiente comando:
Instalar R (y versiones de R)
El tiempo de ejecución para su imagen de contenedor de RStudio personalizada necesita al menos una versión de R. Primero podemos instalar una versión de R y convertirla en la R predeterminada creando enlaces suaves a /usr/local/bin/
:
Los científicos de datos a menudo necesitan varias versiones de R para que puedan cambiar fácilmente entre proyectos y código base. RStudio en SageMaker admite cambiar fácilmente entre versiones de R, como se muestra en la siguiente captura de pantalla.
RStudio en SageMaker escanea automáticamente y descubre versiones de R en los siguientes directorios:
Podemos instalar más versiones en la imagen del contenedor, como se muestra en el siguiente fragmento. Se instalarán en /opt/R/
.
Instalar los controladores profesionales de RStudio
Los científicos de datos a menudo necesitan acceder a datos de fuentes como Atenea amazónica y Desplazamiento al rojo de Amazon dentro de RStudio en SageMaker. Puedes hacerlo usando Controladores profesionales RStudio y Conexiones de RStudio. Asegúrese de instalar las bibliotecas y controladores relevantes como se muestra en el siguiente fragmento:
Instalar bibliotecas personalizadas
También puede instalar bibliotecas adicionales de R y Python para que los científicos de datos no necesiten instalarlas sobre la marcha:
Cuando haya terminado su personalización en un Dockerfile, es hora de crear una imagen de contenedor y enviarla a Amazon ECR.
Cree y envíe a Amazon ECR
Puede crear una imagen de contenedor desde Dockerfile desde una terminal donde esté instalado el motor Docker, como su terminal local o Nube de AWS9. Si lo está construyendo desde una terminal dentro de RStudio en SageMaker, puede usar Creación de imágenes de SageMaker Studio. Demostramos los pasos para ambos enfoques.
En una terminal local donde está presente el motor Docker, puede ejecutar los siguientes comandos desde donde se encuentra el Dockerfile. Puede usar el script de muestra crear-y-actualizar-imagen.sh.
En una terminal en RStudio en SageMaker, ejecute los siguientes comandos:
Después de estos comandos, tiene un repositorio y una imagen de contenedor de Docker en Amazon ECR para nuestro próximo paso, en el que adjuntamos la imagen de contenedor para usar en RStudio en SageMaker. Tenga en cuenta el URI de la imagen en Amazon ECR <ACCOUNT_ID>.dkr.ecr.<REGION>.amazonaws.com/<REPO>:<TAG>
para uso posterior
Actualice RStudio en SageMaker a través de la consola
RStudio en SageMaker permite la personalización del tiempo de ejecución mediante el uso de una imagen personalizada de SageMaker. Una imagen de SageMaker es un soporte para un conjunto de versiones de imágenes de SageMaker. Cada versión de imagen representa una imagen de contenedor que es compatible con RStudio en SageMaker y se almacena en un repositorio de Amazon ECR. Para que una imagen personalizada de SageMaker esté disponible para todos los usuarios de RStudio dentro de un dominio, puede adjuntar la imagen al dominio siguiendo los pasos de esta sección.
- En la consola de SageMaker, vaya a la Imágenes personalizadas de SageMaker Studio adjuntas al dominio página y elija Adjuntar imagen.
- Seleccione Nueva imagene ingrese su URI de imagen de Amazon ECR.
- Elige Siguiente.
- En Propiedades de la imagen sección, proporcione una Nombre de la imágen (requerido), Nombre de visualización de la imagen (Opcional), Descripción (opcional), rol de IAM y etiquetas.
El nombre para mostrar de la imagen, si se proporciona, se muestra en el iniciador de sesión en RStudio en SageMaker. Si el Nombre de visualización de la imagen el campo se deja vacío, el Nombre de la imágen se muestra en RStudio en SageMaker en su lugar. - Abandonar Ruta de montaje EFS y Configuracion avanzada (ID de usuario y ID de grupo) de forma predeterminada porque RStudio en SageMaker administra la configuración por nosotros.
- En Tipo de imagen sección, seleccionar Imagen de RStudio.
- Elige Enviar.
Ahora puede ver una nueva entrada en la lista. Vale la pena señalar que, con la introducción del soporte de imágenes RStudio personalizadas, puede ver una nueva Tipo de uso columna de la tabla para indicar si una imagen es una imagen de RStudio o una Estudio Amazon SageMaker imagen.
Las imágenes personalizadas pueden tardar entre 5 y 10 minutos en estar disponibles en la interfaz de usuario del iniciador de sesión. A continuación, puede iniciar una nueva sesión de R en RStudio en SageMaker con sus imágenes personalizadas.
Con el tiempo, es posible que desee retirar las imágenes antiguas y obsoletas. Para eliminar las imágenes personalizadas de la lista de imágenes personalizadas en RStudio, seleccione las imágenes en la lista y elija Despegar.
Elige Despegar de nuevo para confirmar
Actualice RStudio en SageMaker a través de la AWS CLI
Las siguientes secciones describen los pasos para crear una imagen de SageMaker y adjuntarla para usarla en RStudio en SageMaker en la consola de SageMaker y mediante la AWS CLI. Puede usar el script de muestra crear-y-actualizar-imagen.sh.
Crear la imagen de SageMaker y la versión de la imagen
El primer paso es crear una imagen de SageMaker a partir de la imagen del contenedor personalizado en Amazon ECR ejecutando los siguientes dos comandos:
Tenga en cuenta que la imagen personalizada que se muestra en el iniciador de sesión en RStudio en SageMaker está determinada por la entrada de --display-name
. Si no se proporciona el nombre para mostrar opcional, la entrada de --image-name
se utiliza en su lugar. Tenga en cuenta también que el rol de IAM permite a SageMaker adjuntar una imagen de Amazon ECR a RStudio en SageMaker.
Crear una configuración de imagen de aplicación
Además de una imagen de SageMaker, que captura el URI de la imagen de Amazon ECR, una configuración de imagen de la aplicación (AppImageConfig) es necesario para su uso en un dominio de SageMaker. Simplificamos la configuración para un RSessionApp
image para que podamos crear una configuración de marcador de posición con el siguiente comando:
Adjuntar a un dominio de SageMaker
Con la imagen de SageMaker y la configuración de la imagen de la aplicación creadas, estamos listos para adjuntar la imagen del contenedor personalizado al dominio de SageMaker. Para que una imagen personalizada de SageMaker esté disponible para todos los usuarios de RStudio dentro de un dominio, adjunte la imagen al dominio como una configuración de usuario predeterminada. Todos los usuarios existentes y cualquier usuario nuevo podrán usar la imagen personalizada.
Para una mejor legibilidad, colocamos la siguiente configuración en el archivo JSON configuración de usuario predeterminada.json:
En este archivo, podemos especificar la imagen y AppImageConfig
pares de nombres en una lista en DefaultUserSettings.RSessionAppSettings.CustomImages
. Este fragmento anterior asume que se están creando dos imágenes personalizadas.
Luego ejecute el siguiente comando para actualizar el dominio de SageMaker:
Después de actualizar el dominio, las imágenes personalizadas pueden tardar entre 5 y 10 minutos en estar disponibles en la interfaz de usuario del iniciador de sesión. A continuación, puede iniciar una nueva sesión de R en RStudio en SageMaker con sus imágenes personalizadas.
Separar imágenes de un dominio de SageMaker
Puede separar imágenes simplemente quitando el ImageName
y AppImageConfigName
pares de default-user-settings.json
y actualizar el dominio.
Por ejemplo, actualizar el dominio con lo siguiente default-user-settings.json
elimina r-4.1.3-rstudio-2022
desde la sesión R iniciando la interfaz de usuario y se va r-4.1.3-rstudio-1.4.1717-3
como la única imagen personalizada disponible para todos los usuarios de un dominio:
Limpiar
Para eliminar de forma segura imágenes y recursos en el dominio de SageMaker, complete los siguientes pasos en Limpiar recursos de imagen.
Para eliminar de manera segura RStudio en SageMaker y el dominio de SageMaker, complete los siguientes pasos en Eliminar un dominio de Amazon SageMaker para eliminar cualquier aplicación RSessionGateway, perfil de usuario y dominio.
Para eliminar imágenes y repositorios de forma segura en Amazon ECR, complete los siguientes pasos en Borrar una imagen.
Finalmente, para eliminar la plantilla de CloudFormation:
- En la consola de AWS CloudFormation, elija Pilas.
- Seleccione la pila que implementó para esta solución.
- Elija Eliminar
Conclusión
RStudio en SageMaker simplifica a los científicos de datos la creación de soluciones analíticas y de aprendizaje automático en R a escala, y permite a los administradores gestionar un entorno sólido de ciencia de datos para sus desarrolladores. Los científicos de datos quieren personalizar el entorno para que puedan usar las bibliotecas correctas para el trabajo correcto y lograr la reproducibilidad deseada para cada proyecto de ML. Los administradores deben estandarizar el entorno de la ciencia de datos por motivos normativos y de seguridad. Ahora puede crear imágenes de contenedores personalizadas que cumplan con los requisitos de su organización y permitir que los científicos de datos las usen en RStudio en SageMaker.
Te animamos a que lo pruebes. ¡Feliz desarrollo!
Acerca de los autores
Michael Hsieh es un Arquitecto Senior de Soluciones Especializado en IA/ML. Trabaja con los clientes para avanzar en su viaje de ML con una combinación de ofertas de ML de AWS y su conocimiento del dominio de ML. Como un trasplante de Seattle, le encanta explorar la gran Madre Naturaleza que la ciudad tiene para ofrecer, como las rutas de senderismo, los paisajes en kayak en SLU y la puesta de sol en Shilshole Bay.
declan kelly es ingeniero de software en el equipo de Amazon SageMaker Studio. Ha estado trabajando en Amazon SageMaker Studio desde su lanzamiento en AWS re:Invent 2019. Fuera del trabajo, disfruta del senderismo y la escalada.
Sean Morgan es arquitecto de soluciones de IA/ML en AWS. Tiene experiencia en los campos de investigación académica y de semiconductores, y utiliza su experiencia para ayudar a los clientes a alcanzar sus objetivos en AWS. En su tiempo libre, Sean es un colaborador y mantenedor activo de código abierto, y es el líder del grupo de interés especial para los complementos de TensorFlow.
- Coinsmart. El mejor intercambio de Bitcoin y criptografía de Europa.
- Platoblockchain. Inteligencia del Metaverso Web3. Conocimiento amplificado. ACCESO LIBRE.
- CriptoHawk. Radar de altcoins. Prueba gratis.
- Fuente: https://aws.amazon.com/blogs/machine-learning/use-a-custom-image-to-bring-your-own-development-environment-to-rstudio-on-amazon-sagemaker/
- "
- &
- 1.3
- 10
- 100
- 2019
- 2022
- 7
- a
- Sobre nosotros
- de la máquina
- Mi Cuenta
- Lograr
- la columna Acción
- lector activo
- adición
- Adicionales
- administradores
- avanzar
- Todos
- permite
- ya haya utilizado
- Amazon
- Analytics
- applicación
- enfoques
- adecuado
- Abril
- Hoy Disponibles
- AWS
- Bay
- porque
- "Ser"
- beneficios
- mejores
- entre
- frontera
- llevar
- build
- Construir la
- Puede conseguir
- capturas
- case
- el cambio
- manera?
- opciones
- Elige
- Ciudad
- Soluciones
- código
- Columna
- combinación
- Algunos
- compatible
- completar
- Calcular
- Configuración
- Conectándote
- Consola
- Envase
- contenido
- continue
- contribuyente
- Para crear
- creado
- Creamos
- personalizado
- Clientes
- personalizan
- datos
- Ciencia de los datos
- científico de datos
- demostrar
- depende
- desplegado
- describir
- descrito
- detalles
- desarrolladores
- Desarrollo
- Pantalla
- distribuciones
- Docker
- No
- dominio
- DE INSCRIPCIÓN
- descargar
- cada una
- pasan fácilmente
- efecto
- fomentar
- Motor
- ingeniero
- Participar
- Entorno
- esenciales
- ejemplo
- existente
- experience
- familiar
- Terrenos
- Nombre
- primer vez
- seguir
- siguiendo
- siguiente
- Gratuito
- en
- ser completados
- Además
- conseguir
- Goals
- maravillosa
- Grupo procesos
- Ahorrar
- ayuda
- poseedor
- organizado
- Sin embargo
- HTTPS
- Identidad
- imagen
- imágenes
- implementar
- importante
- de la industria
- información
- Las opciones de entrada
- instalar
- ejemplo
- COMPLETAMENTE
- intereses
- IT
- Trabajos
- especialistas
- más reciente
- lanzamiento
- lanzamiento
- Lead
- aprendizaje
- Licencia
- Licencias
- línea
- LINK
- enlaces
- Linux
- Lista
- local
- máquina
- máquina de aprendizaje
- para lograr
- HACE
- Realizar
- gestionan
- gestionado
- Management
- gerente
- Match
- mencionado
- podría
- mínimo
- ML
- más,
- Morgan
- MEJOR DE TU
- madre
- múltiples
- Naturaleza
- Navegar
- Next
- LANZAMIENTO
- Lista de ofrendas
- funcionamiento
- sistema operativo
- Opciones
- organizativo
- para las fiestas.
- EL DESARROLLADOR
- puntos
- políticas
- política
- preferido
- presente
- privada
- Profesional
- Mi Perfil
- Programación
- proyecto
- proyecta
- proporcionar
- previsto
- proporcionando
- público
- con rapidez
- RE
- en comunicarse
- razones
- región
- regulador
- ,
- Estrenos
- la eliminación de
- repositorio
- representa
- Requisitos
- Requisitos
- requiere
- la investigación
- Recurso
- Recursos
- Función
- Ejecutar
- correr
- de manera segura
- Escala
- Ciencia:
- Científico
- los científicos
- Sean
- EN LINEA
- semiconductor
- set
- pólipo
- Configure
- Varios
- Compartir
- Mostrar
- mostrado
- sencillos
- desde
- So
- Soft
- Software
- Ingeniero de Software
- sólido
- a medida
- Soluciones
- especial
- especialista
- especializado
- montón
- fundó
- comienza
- Posicionamiento
- Estado
- tiendas
- estudio
- puesta del sol
- SOPORTE
- soportes
- Switch
- te
- equipo
- terminal
- El
- A través de esta formación, el personal docente y administrativo de escuelas y universidades estará preparado para manejar los recursos disponibles que derivan de la diversidad cultural de sus estudiantes. Además, un mejor y mayor entendimiento sobre estas diferencias y similitudes culturales permitirá alcanzar los objetivos de inclusión previstos.
- equipo
- hoy
- del IRS
- ui
- bajo
- Actualizar
- Actualizaciones
- actualización
- us
- utilizan el
- usuarios
- versión
- sean
- dentro de
- sin
- Actividades:
- trabajando
- funciona
- valor
- la escritura
- tú