Migrar de cuadernos gestionados por el usuario a instancias de Vertex AI Workbench

En esta página se describe cómo migrar de una instancia de cuadernos administrados por el usuario a una instancia de Vertex AI Workbench. Puedes migrar con la herramienta de migración de Vertex AI Workbench o migrar los datos y archivos de tu instancia manualmente.

Información general sobre la herramienta de migración

Vertex AI Workbench proporciona una herramienta de migración para migrar de una instancia de notebooks gestionados 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 de la instancia de notebooks gestionados por el usuario que quieras migrar. Por ejemplo, la herramienta de migración crea una instancia que tiene el mismo tipo de máquina, configuración de red, ajustes de apagado por inactividad y otras especificaciones, o similares. A continuación, los archivos del disco de datos de tu instancia de cuaderno gestionado por el usuario se copian en la instancia de Vertex AI Workbench.

Vertex AI Workbench no elimina ni cambia tu instancia de notebooks gestionados por el usuario, por lo que puedes seguir usándola después de la migración. Si ya no necesitas la instancia de cuadernos gestionados por el usuario, elimínala para evitar que se te cobre por ella.

Facturación

Si tu instancia de cuadernos gestionados por usuarios usa discos persistentes extremos, la migración generará cargos por operaciones de E/S. Consulta la sección "IOPS aprovisionadas extremas" de la página Precios de Persistent Disk e Hyperdisk, que se encuentra en la página Precios de los discos.

Después de la migración, la instancia de cuadernos gestionados por usuarios sigue existiendo y genera cargos como antes. Si ya no necesitas la instancia de notebooks gestionados por el usuario, elimínala para evitar que se te apliquen más cargos por ella.

Comportamientos predeterminados de la herramienta de migración

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

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

Categoría Especificación de cuadernos gestionados por usuarios Resultado de la migración
SO Cualquier versión de Ubuntu Debian 11
Cualquier versión de Debian Debian 11
Framework Cualquier versión de 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 se ha migrado. Consulta Añadir un entorno de conda.
Cualquier versión local de PySpark No se ha migrado. Consulta Añadir un entorno de conda.
Cualquier versión de XGBoost No se ha migrado. Consulta Añadir un entorno de conda.
Cualquier versión de Python de Kaggle No se ha migrado. Consulta Añadir un entorno de conda.
Cualquier versión de Jax No se ha migrado. Consulta Añadir un entorno de conda.
Cualquier versión de Apache Beam No se ha migrado. Consulta Añadir un entorno de conda.
Tipo de máquina Un tipo de máquina admitido Tipo de máquina idéntico
Un tipo de máquina no admitido e2-standard-4
Aceleradores Aceleradores admitidos Aceleradores idénticos
Aceleradores no admitidos La migración no incluye aceleradores
Ajuste Apagado por inactividad Migrado
Eliminar y enviar a la papelera Migrado
nbconvert Migrado
Descargando archivo Migrado
Acceso al terminal Migrado
Otro Permisos de gestión de identidades y accesos Migrada, aunque es posible que se necesiten nuevos permisos para usar la instancia de Vertex AI Workbench
Modo de acceso Migrado
Red Migrado
Secuencia de comandos tras el inicio Cuando se usa la consola, 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 la interfaz de línea de comandos de Google Cloud o la API REST para especificar la opción PostStartupScriptOption. Google Cloud
Dataproc Hub No migrado; debe migrar manualmente

Especificar la secuencia de comandos posterior al inicio

Las instancias de cuadernos gestionados por usuarios que usen 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 quieres saltarte o volver a ejecutar la secuencia de comandos posterior al inicio en tu nueva instancia de Vertex AI Workbench.

No se admite la opción PostStartupScriptOption en la consola Google Cloud . Para especificar la opción PostStartupScriptOption al migrar tu instancia de cuadernos gestionada por el usuario, debes usar la API REST o Google Cloud CLI.

Antes de empezar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Notebooks API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Notebooks API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  8. Si aún no lo has hecho, crea una instancia de cuadernos gestionados por usuarios.
  9. Roles obligatorios

    Para obtener los permisos que necesitas para migrar una instancia de notebooks administrados por el usuario a una instancia de Vertex AI Workbench, pide a tu administrador que te conceda el rol de gestión de identidades y accesos Notebooks Runner (roles/notebooks.runner) en el proyecto. Para obtener más información sobre cómo conceder roles, consulta el artículo Gestionar el acceso a proyectos, carpetas y organizaciones.

    Este rol predefinido contiene los permisos necesarios para migrar una instancia de cuadernos gestionados por el usuario a una instancia de Vertex AI Workbench. Para ver los permisos exactos que se necesitan, despliega la sección Permisos necesarios:

    Permisos obligatorios

    Para migrar una instancia de cuaderno gestionada por el usuario a una instancia de Vertex AI Workbench, se necesitan los siguientes permisos:

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

    También puedes obtener estos permisos con roles personalizados u otros roles predefinidos.

    Comprobación previa a la migración

    Antes de migrar, comprueba si tu instancia de notebooks gestionados por el usuario cumple los requisitos de migración. Para ello, enumera tus instancias y consulta el resultado para ver si hay advertencias o errores de migración.

    Mostrar tus instancias

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

    gcloud

    Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

    • PROJECT_ID: tu ID de proyecto
    • LOCATION: la región en la que se encuentra tu instancia de cuadernos gestionados por usuarios. También puedes usar - 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 los datos de la solicitud, haz las siguientes sustituciones:

    • PROJECT_ID: tu ID de proyecto
    • LOCATION: la región en la que se encuentra tu instancia de cuadernos gestionados por usuarios. También puedes usar - para enumerar las instancias de todas las regiones.

    Método HTTP y 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 comando siguiente:

    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 comando siguiente:

    $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

    Comprobar si hay advertencias o errores en el resultado

    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 determinados componentes de la configuración de tu instancia de cuadernos gestionados por el usuario no se migran a la misma especificación en una instancia de Vertex AI Workbench. Por ejemplo, si tu instancia de cuadernos gestionados por usuarios usa un acelerador no compatible, aparecerá una advertencia en la salida. En este caso, la instancia se migra sin ningún acelerador. Puedes adjuntar aceleradores después de la migración. Revisa las advertencias de los resultados, ten en cuenta los comportamientos predeterminados de la herramienta de migración y evalúa si la herramienta de migración es adecuada para tu migración.

    Si se produce uno o varios errores en la salida, significa que no puedes migrar la instancia de cuadernos gestionados por el usuario con la herramienta de migración. Debes migrar la instancia manualmente.

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

    Migrar con la herramienta de migración

    Puedes migrar tu instancia de cuaderno gestionada por el usuario mediante la consola de Google Cloud , la CLI de gcloud o la API REST.

    Consola

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

      Ir a Cuadernos gestionados por usuarios

    2. Haga clic en el botón Migrar.

    3. En la página Migrar cuadernos gestionados por el usuario a instancias, en la pestaña Listo, selecciona la instancia que quieras migrar.

    4. Haz clic en Migrate (Migrar).

    5. Una vez que se haya completado la migración, ve a la página Instancias para ver tu nueva instancia de Vertex AI Workbench.

      Ir a Instancias

    gcloud

    Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

    • PROJECT_ID: tu ID de proyecto
    • LOCATION: la región en la que se encuentra la instancia de cuadernos gestionados por usuarios
    • INSTANCE_ID: el ID de la instancia de cuadernos gestionados por usuarios
    • POST_STARTUP_SCRIPT_OPTION: opcional. Una de las opciones de secuencia de comandos posterior al inicio

    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 los datos de la solicitud, haz las siguientes sustituciones:

    • PROJECT_ID: tu ID de proyecto
    • LOCATION: la región en la que se encuentra la instancia de cuadernos gestionados por usuarios
    • INSTANCE_ID: el ID de la instancia de cuadernos gestionados por usuarios
    • POST_STARTUP_SCRIPT_OPTION: opcional. Una de las opciones de secuencia de comandos posterior al inicio

    Método HTTP y 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

    Migrar manualmente

    Para migrar manualmente tu instancia a una instancia de Vertex AI Workbench, puedes usar los siguientes métodos:

    • Usar Cloud Storage y el terminal: copia tus datos y archivos en Cloud Storage y, después, en otra instancia mediante el terminal.

    • Usar GitHub: copia tus datos y archivos en un repositorio de GitHub con la extensión 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 a la terminal de tu instancia de cuadernos gestionados por el usuario. El acceso a la terminal se configura manualmente al crear una instancia. El ajuste de acceso a la terminal no se puede cambiar una vez creada la instancia.

    Migrar manualmente con Cloud Storage y el terminal

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

    1. Crea un segmento de Cloud Storage en el mismo proyecto en el que se encuentre tu instancia de cuadernos gestionados por usuarios.

    2. En ese mismo proyecto, crea una instancia de Vertex AI Workbench para migrar tus datos. Cuando crees esta instancia, ocurrirá lo siguiente:

      • Habilita el acceso al terminal.
      • Especifica el tipo de máquina, la red y otras características para que se ajusten a tus necesidades.
    3. En la interfaz de JupyterLab de la instancia de cuadernos gestionada por el usuario, selecciona Archivo > Nuevo > Terminal para abrir una ventana de terminal.

    4. Usa la CLI de gcloud para copiar tus datos de usuario en un segmento de Cloud Storage. El siguiente comando de ejemplo copia todos los archivos del directorio /home/jupyter/ de tu instancia en un directorio de un segmento de Cloud Storage.

      gcloud storage cp /home/jupyter/* gs://BUCKET_NAMEPATH --recursive

      Haz los cambios siguientes:

      • BUCKET_NAME: el nombre de tu segmento de Cloud Storage
      • PATH: la ruta al directorio en el que quieres 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 terminal.

    6. Usa la CLI de gcloud para copiar tus datos en la nueva instancia. El siguiente comando de ejemplo copia todos los archivos de un directorio de Cloud Storage en el directorio /home/jupyter/ de tu nueva instancia.

      gcloud storage cp gs://BUCKET_NAMEPATH* /home/jupyter/ --recursive

    Confirmar la migración

    Después de la migración, la instancia original de cuadernos gestionados por el usuario sigue funcionando como antes. Confirma que la migración se ha completado correctamente antes de eliminar la instancia original.

    Eliminar la instancia de cuadernos gestionados por usuarios

    Si no necesitas la instancia de notebooks gestionados por el usuario desde la que has migrado, elimínala para evitar que se te apliquen más cargos por ella.

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

      Ir a Cuadernos gestionados por usuarios

    2. Selecciona la instancia que quieras eliminar.

    3. Haz clic en  Eliminar. (En función del tamaño de la ventana, el botón Eliminar puede estar en el menú de opciones ).

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

    Solucionar problemas

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

    Siguientes pasos