Migra de notebooks administrados por el usuario a instancias de Vertex AI Workbench

En esta página, se describe cómo migrar de una instancia de notebooks administrada por el usuario a una instancia de Vertex AI Workbench. Puedes migrar mediante la herramienta de migración de Vertex AI Workbench o puedes migrar los datos y los archivos de tu instancia de forma manual.

Descripción general de la herramienta de migración

Vertex AI Workbench proporciona una herramienta de migración para migrar de una instancia de notebooks administrada por el usuario a una instancia de Vertex AI Workbench.

La herramienta de migración crea una instancia de Vertex AI Workbench con una configuración similar a la instancia de notebooks administrados por el usuario que deseas migrar. Por ejemplo, la herramienta de migración crea una instancia que tiene el mismo tipo de máquina o uno similar, la configuración de red, la configuración de cierre inactivo y otras especificaciones. Luego, los archivos en el disco de datos de la instancia de notebooks administrados por el usuario se copian en la instancia de Vertex AI Workbench.

Vertex AI Workbench no borra ni cambia tu instancia de notebook administrada por el usuario, por lo que después de la migración puedes seguir usándola. Si ya no necesitas la instancia de notebooks administrados por el usuario, bórrala para evitar que se generen cargos adicionales por esa instancia.

Facturación

Si tu instancia de notebooks administrados por el usuario usa discos persistentes extremos, la migración genera cargos por las operaciones de E/S. Consulta “IOPS aprovisionadas en extremo” en la sección de precios de discos persistentes y hiperparámetros de los discos.

Después de la migración, la instancia de notebook administrada por el usuario aún existe y genera cargos como antes. Si ya no necesitas la instancia de notebooks administrados por el usuario, bórrala para evitar que se generen cargos adicionales por esa instancia.

Comportamientos predeterminados de la herramienta de migración

La herramienta de migración de Vertex AI Workbench intenta migrar la instancia de notebooks administrada por el usuario a una instancia de Vertex AI Workbench con especificaciones coincidentes. Cuando una especificación en la instancia de notebook administrada por el usuario no está disponible en las instancias de Vertex AI Workbench, Vertex AI Workbench usa una especificación predeterminada cuando sea posible. Cuando la herramienta de migración no puede migrar una especificación de tu instancia de notebook administrada por el usuario, no se migra.

En la siguiente tabla, se enumeran algunos de los comportamientos de migración predeterminados clave para la herramienta de migración.

Categoría Especificación de notebooks administrados por el usuario Resultado de la migración
SO Cualquier versión de Ubuntu Debian 11
Cualquier versión de Debian Debian 11
Framework Cualquier versión CUDA CUDA 11.3
Cualquier versión de Python Python 3.10
Cualquier versión de PyTorch PyTorch 1.13
Cualquier versión de TensorFlow TensorFlow 2.11
Cualquier versión de R No migrado; consulta Agrega un entorno conda.
Cualquier versión local de PySpark No migrado; consulta Agrega un entorno conda.
Cualquier versión de XGBoost No migrado; consulta Agrega un entorno conda.
Cualquier versión de Python de Kaggle No migrado; consulta Agrega un entorno conda.
Cualquier versión de Jax No migrado; consulta Agrega un entorno conda.
Cualquier versión de Apache Beam No migrado; consulta Agrega un entorno conda.
Tipo de máquina Un tipo de máquina compatible Tipo de máquina idéntica
Un tipo de máquina no compatible e2-standard-4
Aceleradores Aceleradores compatibles Aceleradores idénticos
Aceleradores no compatibles La migración no incluye aceleradores
Parámetro de configuración Cierre inactivo Migrada
Enviar a la papelera Migrada
nbconvert Migrada
Descarga de archivos Migrada
Acceso a la terminal Migrada
Otro Permisos de Identity and Access Management Migrada, aunque es posible que se necesiten permisos nuevos para usar la instancia de Vertex AI Workbench
Modo de acceso Migrada
Red Migrada
Secuencia de comandos posterior al inicio Cuando se usa la consola de Google Cloud, la instancia se migra sin la secuencia de comandos posterior al inicio. Para migrar la instancia con la secuencia de comandos posterior al inicio, usa Google Cloud CLI o la API de REST para especificar la opción PostStartupScriptOption
Dataproc Hub No migrado. debe migrarse de forma manual

Especifica la secuencia de comandos posterior al inicio

Las instancias de notebooks administradas por el usuario que usan una secuencia de comandos posterior al inicio deben migrarse a una instancia con la opción PostStartupScriptOption especificada. Usa esta opción para indicar si deseas omitir o volver a ejecutar la secuencia de comandos posterior al inicio en tu nueva instancia de Vertex AI Workbench.

La consola de Google Cloud no admite la especificación de la opción PostStartupScriptOption. Para especificar la opción PostStartupScriptOption cuando migras tu instancia de notebooks administrados por el usuario, debes usar la CLI de Google Cloud o la API de REST.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  4. Habilita la API de Notebooks.

    Habilita la API

  5. En la página del selector de proyectos de la consola de Google Cloud, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  6. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  7. Habilita la API de Notebooks.

    Habilita la API

  8. Si aún no lo hiciste, crea una instancia de notebooks administrados por el usuario.

Roles obligatorios

Para asegurarte de que tu cuenta de usuario tenga los permisos necesarios para migrar una instancia de notebooks administrados por el usuario a una de Vertex AI Workbench, pídele a tu administrador que le otorgue a tu cuenta de usuario el rol de IAM Ejecutor de notebooks (roles/notebooks.runner en el proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

Este rol predefinido contiene los permisos necesarios para migrar una instancia de notebooks administrada por el usuario a una instancia de Vertex AI Workbench. Para ver los permisos exactos que son necesarios, expande la sección Permisos requeridos:

Permisos necesarios

Los siguientes permisos son necesarios para migrar una instancia de notebook administrada por el usuario a una instancia de Vertex AI Workbench:

  • notebooks.instances.create
  • notebooks.instances.get

Es posible que tu administrador también pueda otorgar estos permisos a tu cuenta de usuario con roles personalizados o con otros roles predefinidos.

Verificación previa a la migración

Antes de migrar, verifica que la instancia de notebooks administrada por el usuario sea apta para la migración. Para ello, enumera tus instancias y verifica el resultado en busca de advertencias o errores de migración.

Genera una lista de tus instancias

Para enumerar las instancias de notebooks administrados por el usuario que aún no se migraron, usa el método projects.locations.instances.list con el filtro migrated:false. Puedes enumerarlas mediante la CLI de gcloud o la API de REST:

gcloud

Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID de tu proyecto
  • LOCATION: La región en la que se encuentra la instancia de notebook administrada por el usuario, o usa - para enumerar las instancias de todas las regiones.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud notebooks instances list --project=PROJECT_ID \
    --location=LOCATION --filter=migrated:false --format=default

Windows (PowerShell)

gcloud notebooks instances list --project=PROJECT_ID `
    --location=LOCATION --filter=migrated:false --format=default

Windows (cmd.exe)

gcloud notebooks instances list --project=PROJECT_ID ^
    --location=LOCATION --filter=migrated:false --format=default

REST

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID de tu proyecto
  • LOCATION: La región en la que se encuentra la instancia de notebook administrada por el usuario, o usa - para enumerar las instancias de todas las regiones.

HTTP method and URL:

GET https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances?filter=migrated:false

Para enviar tu solicitud, elige una de estas opciones:

curl

Ejecuta el siguiente comando:

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances?filter=migrated:false"

PowerShell

Ejecuta el siguiente comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances?filter=migrated:false" | Select-Object -Expand Content

Revisa el resultado para ver las advertencias o los errores

Si se detectan advertencias o errores de migración, el resultado del método projects.locations.instances.list incluye esta información.

Las advertencias aparecen cuando los componentes específicos de la configuración de tu instancia de notebooks administrados por el usuario no migrarán a la misma especificación en una instancia de Vertex AI Workbench. Por ejemplo, si tu instancia de notebook administrada por el usuario usa un acelerador no compatible, aparece una advertencia en el resultado. En este caso, la instancia se migra sin aceleradores. Puedes adjuntar aceleradores después de la migración. Revisa las advertencias en el resultado, considera los comportamientos predeterminados de la herramienta de migración y evalúa si la herramienta de migración es aceptable para tu migración.

Uno o más errores en el resultado significa que no puedes migrar la instancia de notebooks administrados por el usuario mediante la herramienta de migración. Debes migrar la instancia de forma manual.

Para obtener más información sobre las advertencias y los errores de migración, consulta advertencias y errores en la documentación de InstanceMigrationEligibility.

Migra con la herramienta de migración

Puedes migrar tu instancia de notebooks administrados por el usuario con la consola de Google Cloud, la CLI de gcloud o la API de REST.

Consola

  1. En la consola de Google Cloud, ve a la página Notebooks administrados por el usuario.

    Ir a Notebooks administrados por el usuario

  2. Haz clic en el botón Migrar.

  3. En la página Migrar notebooks administrados por el usuario a instancias, en la pestaña Listo, selecciona la instancia que deseas migrar.

  4. Haz clic en Migrar.

  5. Una vez finalizada la migración, ve a la página Instancias para ver la nueva instancia de Vertex AI Workbench.

    Ir a Instancias

gcloud

Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID de tu proyecto
  • LOCATION: la región en la que se encuentra tu instancia de notebook administrada por el usuario
  • INSTANCE_ID: El ID de la instancia de notebooks administrados por el usuario
  • POST_STARTUP_SCRIPT_OPTION: Es una de las opciones de secuencia de comandos posteriores al inicio (opcional)

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud notebooks instances migrate RUNTIME_ID \
    --project=PROJECT_ID \
    --location=LOCATION \
    --post-startup-script-option=POST_STARTUP_SCRIPT_OPTION

Windows (PowerShell)

gcloud notebooks instances migrate RUNTIME_ID `
    --project=PROJECT_ID `
    --location=LOCATION `
    --post-startup-script-option=POST_STARTUP_SCRIPT_OPTION

Windows (cmd.exe)

gcloud notebooks instances migrate RUNTIME_ID ^
    --project=PROJECT_ID ^
    --location=LOCATION ^
    --post-startup-script-option=POST_STARTUP_SCRIPT_OPTION

REST

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • PROJECT_ID: el ID de tu proyecto
  • LOCATION: la región en la que se encuentra tu instancia de notebook administrada por el usuario
  • INSTANCE_ID: El ID de la instancia de notebooks administrados por el usuario
  • POST_STARTUP_SCRIPT_OPTION: Es una de las opciones de secuencia de comandos posteriores al inicio (opcional)

HTTP method and URL:

POST https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:migrate

Cuerpo JSON de la solicitud:

{
  "postStartupScriptOption": (POST_STARTUP_SCRIPT_OPTION)
}

Para enviar tu solicitud, elige una de estas opciones:

curl

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:migrate"

PowerShell

Guarda el cuerpo de la solicitud en un archivo llamado request.json y ejecuta el siguiente comando:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:migrate" | Select-Object -Expand Content

Migra manualmente

Para migrar tu instancia a una instancia de Vertex AI Workbench de forma manual, considera usar los siguientes métodos:

  • Usar Cloud Storage y la terminal: Copia tus datos y archivos a Cloud Storage y, luego, a otra instancia mediante la terminal.

  • Usa GitHub: Copia tus datos y archivos a un repositorio de GitHub con la extensión de Git para JupyterLab.

En esta guía, se describe cómo migrar datos y archivos mediante Cloud Storage y la terminal.

Requisitos

Debes tener acceso de terminal a tu instancia de notebooks administrados por el usuario. El acceso a la terminal se establece de forma manual cuando creas una instancia. La configuración de acceso a la terminal no se puede cambiar después de que se crea la instancia.

Migra de forma manual mediante Cloud Storage y la terminal

Para migrar datos y archivos a una nueva instancia de Vertex AI Workbench mediante Cloud Storage y la terminal, haz lo siguiente:

  1. Crea un bucket de Cloud Storage en el mismo proyecto en el que se encuentra la instancia de notebook administrada por el usuario.

  2. En ese mismo proyecto, crea una instancia de Vertex AI Workbench a la que se migrarán tus datos. Cuando crees esta instancia, ten en cuenta lo siguiente:

    • Habilitar el acceso a la terminal
    • Especifica el tipo de máquina, la red y otras características que coincidan con lo que necesitas.
  3. En la interfaz de JupyterLab de tu instancia de notebook administrada por el usuario, selecciona File > New > Terminal para abrir una ventana de la terminal.

  4. Usa gsutil tool para copiar tus datos del usuario en un bucket de Cloud Storage. Con el siguiente comando de ejemplo, se copian todos los archivos del directorio /home/jupyter/ de la instancia a un directorio en un bucket de Cloud Storage.

    gsutil cp -R /home/jupyter/* gs://BUCKET_NAMEPATH
    

    Reemplaza lo siguiente:

    • BUCKET_NAME: El nombre de tu bucket de Cloud Storage.
    • PATH: La ruta de acceso al directorio en el que deseas copiar los archivos, por ejemplo: /copy/jupyter/.
  5. En la interfaz de JupyterLab de tu nueva instancia de Vertex AI Workbench, selecciona Archivo > Nuevo > Terminal para abrir una ventana de la terminal.

  6. Usa gsutil tool para copiar tus datos a la instancia nueva. En el siguiente comando de ejemplo, se copian todos los archivos de un directorio de Cloud Storage al directorio /home/jupyter/ de tu instancia nueva.

    gsutil cp gs://BUCKET_NAMEPATH* /home/jupyter/
    

Confirma la migración

Después de la migración, la instancia original de notebooks administrada por el usuario continuará funcionando como antes. Confirma que la migración se realizó de forma correcta antes de borrar la instancia original.

Borra la instancia de notebooks administrados por el usuario

Si no necesitas la instancia de notebook administrada por el usuario desde la que migraste, bórrala para evitar que se generen cargos adicionales por esa instancia.

  1. En la consola de Google Cloud, ve a la página Notebooks administrados por el usuario.

    Ir a Notebooks administrados por el usuario

  2. Selecciona la instancia que deseas borrar.

  3. Haz clic en  Borrar. (Según el tamaño de la ventana, puede que el botón Borrar esté en el menú de opciones de ).

  4. Para confirmar la acción, haz clic en Borrar.

Solución de problemas

Para encontrar métodos para diagnosticar y resolver problemas de migración, consulta Solución de problemas de Vertex AI Workbench.

¿Qué sigue?