Esegui la migrazione da blocchi note gestiti alle istanze di Vertex AI Workbench

Questa pagina descrive come eseguire la migrazione da un'istanza di blocchi note gestiti a un'istanza di Vertex AI Workbench. Puoi eseguire la migrazione utilizzando lo strumento di migrazione Vertex AI Workbench o eseguire manualmente la migrazione dei dati e dei file della tua istanza.

Panoramica dello strumento di migrazione

Vertex AI Workbench fornisce uno strumento di migrazione per eseguire la migrazione da un'istanza di blocchi note gestiti a un'istanza di Vertex AI Workbench.

Lo strumento di migrazione crea un'istanza di Vertex AI Workbench con una configurazione simile all'istanza di blocchi note gestiti di cui vuoi eseguire la migrazione. Ad esempio, lo strumento di migrazione crea un'istanza con un tipo di macchina, una configurazione di rete, impostazioni di arresto in caso di inattività e altre specifiche uguali o simili. Quindi, i file sul disco dati dell'istanza di blocchi note gestiti vengono copiati nell'istanza Vertex AI Workbench.

Vertex AI Workbench non elimina né modifica l'istanza di blocchi note gestiti, quindi dopo la migrazione puoi continuare a utilizzarla. Se l'istanza di blocchi note gestiti non ti serve più, eliminala per evitare ulteriori addebiti per l'istanza.

Fatturazione

Se l'istanza di blocchi note gestiti utilizza dischi permanenti con carico estremo, la migrazione genera addebiti per le operazioni di I/O. Vedi "IOPS con provisioning estremo" nella sezione Prezzi di dischi permanenti e Hyperdisk della pagina Prezzi dei dischi.

Dopo la migrazione, l'istanza di blocchi note gestiti esiste ancora e genera addebiti come prima. Se l'istanza di blocchi note gestiti non ti serve più, eliminala per evitare ulteriori addebiti per l'istanza.

Comportamenti predefiniti dello strumento di migrazione

Lo strumento di migrazione di Vertex AI Workbench tenta di eseguire la migrazione dell'istanza di blocchi note gestiti a un'istanza di Vertex AI Workbench con specifiche corrispondenti. Quando una specifica nell'istanza di blocchi note gestiti non è disponibile nelle istanze di Vertex AI Workbench, Vertex AI Workbench utilizza una specifica predefinita, se possibile. Se lo strumento di migrazione non riesce a eseguire la migrazione di una specifica dell'istanza di blocchi note gestiti, non esegue la migrazione dell'istanza.

Nella tabella seguente sono elencati alcuni dei principali comportamenti di migrazione predefiniti per lo strumento di migrazione.

Categoria Specifica dei blocchi note gestiti Risultato della migrazione
Sistema operativo Qualsiasi versione di Ubuntu Debian 11
Qualsiasi versione di Debian Debian 11
Framework Qualsiasi versione CUDA CUDA 11.3
Qualsiasi versione Python Python 3.10
Qualsiasi versione di PyTorch PyTorch 1.13
Qualsiasi versione di TensorFlow TensorFlow 2.11
Qualsiasi versione R Migrazione non eseguita; consulta la pagina Aggiungere un ambiente Conda
Qualsiasi versione PySpark locale Migrazione non eseguita; consulta la pagina Aggiungere un ambiente Conda
Qualsiasi versione di XGBoost Migrazione non eseguita; consulta la pagina Aggiungere un ambiente Conda
Qualsiasi versione Python di Kaggle Migrazione non eseguita; consulta la pagina Aggiungere un ambiente Conda
Qualsiasi versione di Jax Migrazione non eseguita; consulta la pagina Aggiungere un ambiente Conda
Qualsiasi versione di Apache Beam Migrazione non eseguita; consulta la pagina Aggiungere un ambiente Conda
Tipo di macchina Un tipo di macchina supportato Tipo di macchina identico
Un tipo di macchina non supportato e2-standard-4
Acceleratori Acceleratori supportati Acceleratori identici
Acceleratori non supportati La migrazione non include acceleratori
Impostazione Arresto per inattività Migrazione eseguita
Elimina nel cestino Migrazione eseguita
nbconvert Migrazione eseguita
Download del file Migrazione eseguita
Accesso al terminale Migrazione eseguita
Altro Autorizzazioni di Identity and Access Management Migrazione eseguita, anche se potrebbero essere necessarie nuove autorizzazioni per utilizzare l'istanza Vertex AI Workbench
Modalità di accesso Migrazione eseguita. Le istanze che utilizzano la modalità di accesso JupyterLab a utente singolo devono specificare l'opzione serviceAccount
Rete Migrato. Le istanze che utilizzano un Virtual Private Cloud gestito da Google devono specificare le opzioni network e subnet
Script post-avvio Quando utilizzi la console Google Cloud, viene eseguita la migrazione dell'istanza senza lo script post-avvio. Per eseguire la migrazione dell'istanza con lo script post-avvio, utilizza Google Cloud CLI o l'API REST per specificare l'opzione PostStartupScriptOption
Dataproc Hub La migrazione non è stata eseguita; è necessario eseguire la migrazione manuale

Specificare le opzioni

Le seguenti sezioni descrivono i casi in cui è necessario specificare un'opzione per eseguire la migrazione dell'istanza di blocchi note gestiti a un'istanza di Vertex AI Workbench.

Istanze che utilizzano la modalità di accesso utente singolo

È necessario eseguire la migrazione delle istanze di blocchi note gestiti che utilizzano la modalità di accesso singolo utente a un'istanza con l'opzione serviceAccount specificata. L'istanza di Vertex AI Workbench di cui esegui la migrazione limita l'accesso a JupyterLab al singolo utente, ma utilizza un account di servizio per interagire con i servizi e le API Google Cloud.

Istanze che utilizzano un VPC gestito da Google

È necessario eseguire la migrazione delle istanze di blocchi note gestiti che utilizzano un VPC gestito da Google a un'istanza con le opzioni network e subnet specificate. L'opzione per utilizzare un VPC gestito da Google non è supportata nelle istanze di Vertex AI Workbench, quindi è necessario specificare una rete diversa.

Istanze che utilizzano uno script post-avvio

È necessario eseguire la migrazione delle istanze di blocchi note gestiti che utilizzano uno script post-avvio a un'istanza con l'opzione PostStartupScriptOption specificata. Utilizza questa opzione per indicare se vuoi saltare o eseguire nuovamente lo script post-avvio nella nuova istanza di Vertex AI Workbench.

La specifica dell'opzione PostStartupScriptOption non è supportata nella console Google Cloud. Per specificare l'opzione PostStartupScriptOption quando esegui la migrazione dell'istanza di blocchi note gestiti, devi utilizzare Google Cloud CLI o l'API REST.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  3. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  4. Attiva l'API Notebooks.

    Abilita l'API

  5. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  6. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  7. Attiva l'API Notebooks.

    Abilita l'API

  8. Se non l'hai ancora fatto, crea un'istanza di blocchi note gestiti.

Ruoli obbligatori

Per assicurarti che il tuo account utente disponga delle autorizzazioni necessarie per eseguire la migrazione di un'istanza di blocchi note gestiti a un'istanza di Vertex AI Workbench, chiedi all'amministratore di concedere al tuo account utente il ruolo IAM Esecutore Notebooks (roles/notebooks.runner) sul progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene le autorizzazioni necessarie per eseguire la migrazione di un'istanza di blocchi note gestiti a un'istanza di Vertex AI Workbench. Per visualizzare le autorizzazioni esatte necessarie, espandi la sezione Autorizzazioni richieste:

Autorizzazioni obbligatorie

Per eseguire la migrazione di un'istanza di blocchi note gestiti a un'istanza di Vertex AI Workbench sono necessarie le autorizzazioni seguenti:

  • notebooks.runtimes.create
  • notebooks.runtimes.get

L'amministratore potrebbe anche essere in grado di concedere queste autorizzazioni al tuo account utente con ruoli personalizzati o altri ruoli predefiniti.

Controllo pre-migrazione

Prima di eseguire la migrazione, verifica l'idoneità alla migrazione delle istanze di blocchi note gestiti elencando le istanze e controllando l'output per eventuali avvisi o errori di migrazione.

Elenca le tue istanze

Per elencare le istanze di blocchi note gestiti di cui non è stata ancora eseguita la migrazione, utilizza il metodo projects.locations.runtimes.list con il filtro migrated:false. Puoi elencarli utilizzando l'interfaccia a riga di comando gcloud o l'API REST:

gcloud

Prima di utilizzare uno qualsiasi dei dati di comando riportati di seguito, effettua le seguenti sostituzioni:

  • PROJECT_ID: il tuo ID progetto
  • LOCATION: la regione in cui si trova l'istanza di blocchi note gestiti oppure utilizza - per elencare le istanze di tutte le regioni

Esegui questo comando:

Linux, macOS o Cloud Shell

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

Windows (PowerShell)

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

Windows (cmd.exe)

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

REST

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • PROJECT_ID: il tuo ID progetto
  • LOCATION: la regione in cui si trova l'istanza di blocchi note gestiti oppure utilizza - per elencare le istanze di tutte le regioni

Metodo HTTP e URL:

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

Per inviare la richiesta, scegli una delle seguenti opzioni:

arricciatura

Esegui questo comando:

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

PowerShell

Esegui questo 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/runtimes?filter=migrated:false" | Select-Object -Expand Content

Controlla l'output per avvisi o errori

Se vengono rilevati avvisi o errori di migrazione, l'output del metodo projects.locations.runtimes.list include queste informazioni.

Gli avvisi vengono visualizzati quando non viene eseguita la migrazione di componenti specifici nella configurazione dell'istanza di blocchi note gestiti alla stessa specifica in un'istanza di Vertex AI Workbench. Ad esempio, se l'istanza di blocchi note gestiti utilizza un acceleratore non supportato, viene visualizzato un avviso nell'output. In questo caso, viene eseguita la migrazione dell'istanza senza acceleratori. Puoi collegare gli acceleratori dopo la migrazione. Esamina gli avvisi nell'output, valuta i comportamenti predefiniti dello strumento di migrazione e valuta se lo strumento di migrazione è accettabile per la tua migrazione.

Uno o più errori nell'output indicano che non puoi eseguire la migrazione dell'istanza di blocchi note gestiti utilizzando lo strumento di migrazione. Devi eseguire la migrazione manuale dell'istanza.

Per ulteriori informazioni su avvisi ed errori di migrazione, consulta avvisi ed errori nella documentazione di RuntimeMigrationEligibility.

Esegui la migrazione utilizzando lo strumento di migrazione

Puoi eseguire la migrazione dell'istanza di blocchi note gestiti utilizzando la console Google Cloud, gcloud CLI o l'API REST.

Console

  1. Nella console Google Cloud, vai alla pagina Blocchi note gestiti.

    Vai ai blocchi note gestiti

  2. Fai clic sul pulsante Esegui migrazione. Si apre la pagina Esegui la migrazione dei blocchi note gestiti alle istanze.

  3. Per eseguire la migrazione di istanze in cui non sono necessarie opzioni specificate, fai clic sulla scheda Pronto, seleziona le istanze di cui vuoi eseguire la migrazione e fai clic su Esegui la migrazione.

  4. Per eseguire la migrazione delle istanze per cui è necessario specificare opzioni, fai clic sulla scheda Input necessario, seleziona le istanze di cui vuoi eseguire la migrazione e fai clic su Esegui la migrazione.

    1. Nella finestra di dialogo Fornisci input per la migrazione, specifica un account di rete e di servizio da utilizzare per le nuove istanze di Vertex AI Workbench che hai selezionato.

    2. Fai clic su Invia.

  5. Al termine delle migrazioni, vai alla pagina Istanze per visualizzare le nuove istanze Vertex AI Workbench.

    Vai a Istanze

gcloud

Prima di utilizzare uno qualsiasi dei dati di comando riportati di seguito, effettua le seguenti sostituzioni:

  • PROJECT_ID: il tuo ID progetto
  • LOCATION: la regione in cui si trova l'istanza di blocchi note gestiti
  • RUNTIME_ID: l'ID dell'istanza di blocchi note gestiti
  • NETWORK: (facoltativo) la rete in cui vuoi eseguire la migrazione dell'istanza
  • SUBNET (facoltativo): la subnet in cui vuoi eseguire la migrazione dell'istanza
  • SERVICE_ACCOUNT (facoltativo): l'indirizzo email dell'account di servizio che vuoi utilizzare
  • POST_STARTUP_SCRIPT_OPTION: facoltativo: una delle opzioni per lo script di avvio-avvio

Esegui questo comando:

Linux, macOS o Cloud Shell

gcloud notebooks runtimes migrate RUNTIME_ID \
    --project=PROJECT_ID \
    --location=LOCATION \
    --network=NETWORK \
    --subnet=SUBNET \
    --service-account=SERVICE_ACCOUNT \
    --post-startup-script-option=POST_STARTUP_SCRIPT_OPTION

Windows (PowerShell)

gcloud notebooks runtimes migrate RUNTIME_ID `
    --project=PROJECT_ID `
    --location=LOCATION `
    --network=NETWORK `
    --subnet=SUBNET `
    --service-account=SERVICE_ACCOUNT `
    --post-startup-script-option=POST_STARTUP_SCRIPT_OPTION

Windows (cmd.exe)

gcloud notebooks runtimes migrate RUNTIME_ID ^
    --project=PROJECT_ID ^
    --location=LOCATION ^
    --network=NETWORK ^
    --subnet=SUBNET ^
    --service-account=SERVICE_ACCOUNT ^
    --post-startup-script-option=POST_STARTUP_SCRIPT_OPTION

REST

Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:

  • PROJECT_ID: il tuo ID progetto
  • LOCATION: la regione in cui si trova l'istanza di blocchi note gestiti
  • RUNTIME_ID: l'ID dell'istanza di blocchi note gestiti
  • NETWORK: (facoltativo) la rete in cui vuoi eseguire la migrazione dell'istanza
  • SUBNET (facoltativo): la subnet in cui vuoi eseguire la migrazione dell'istanza
  • SERVICE_ACCOUNT (facoltativo): l'indirizzo email dell'account di servizio che vuoi utilizzare
  • POST_STARTUP_SCRIPT_OPTION: facoltativo: una delle opzioni per lo script di avvio-avvio

Metodo HTTP e URL:

POST https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/runtimes/RUNTIME_ID:migrate

Corpo JSON della richiesta:

{
  "network": NETWORK,
  "subnet": SUBNET,
  "serviceAccount": SERVICE_ACCOUNT_EMAIL_ADDRESS,
  "postStartupScriptOption": (POST_STARTUP_SCRIPT_OPTION)
}

Per inviare la richiesta, scegli una delle seguenti opzioni:

arricciatura

Salva il corpo della richiesta in un file denominato request.json ed esegui questo 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/runtimes/RUNTIME_ID:migrate"

PowerShell

Salva il corpo della richiesta in un file denominato request.json ed esegui questo 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/runtimes/RUNTIME_ID:migrate" | Select-Object -Expand Content

Esegui manualmente la migrazione

Per eseguire manualmente la migrazione dell'istanza a un'istanza di Vertex AI Workbench, valuta la possibilità di utilizzare i seguenti metodi:

  • Utilizza Cloud Storage e il terminale: copia i dati e i file in Cloud Storage e poi in un'altra istanza utilizzando il terminale.

  • Utilizza GitHub: copia i tuoi dati e file in un repository GitHub utilizzando l'estensione Git per JupyterLab.

Questa guida descrive come eseguire la migrazione di dati e file utilizzando Cloud Storage e il terminale.

Requisiti

Devi avere accesso al terminale per la tua istanza di blocchi note gestiti. L'accesso al terminale viene impostato manualmente quando crei un'istanza. L'impostazione di accesso al terminale non può essere modificata dopo la creazione dell'istanza.

Esegui manualmente la migrazione utilizzando Cloud Storage e il terminale

Per eseguire la migrazione di dati e file in una nuova istanza di Vertex AI Workbench utilizzando Cloud Storage e il terminale:

  1. Crea un bucket Cloud Storage nello stesso progetto in cui si trova l'istanza di blocchi note gestiti.

  2. Nello stesso progetto, crea un'istanza di Vertex AI Workbench in cui eseguire la migrazione dei dati. Quando crei questa istanza:

    • Attiva l'accesso al terminale.
    • Specifica il tipo di macchina, la rete e altre caratteristiche in base alle tue esigenze.
  3. Nell'interfaccia JupyterLab della tua istanza di blocchi note gestiti, seleziona File > Nuovo > Terminale per aprire una finestra del terminale.

  4. Utilizza gsutil tool per copiare i dati utente in un bucket Cloud Storage. Il comando di esempio seguente copia tutti i file dalla directory /home/jupyter/ dell'istanza a una directory in un bucket Cloud Storage.

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

    Sostituisci quanto segue:

    • BUCKET_NAME: il nome del tuo bucket Cloud Storage
    • PATH: il percorso della directory in cui vuoi copiare i file, ad esempio /copy/jupyter/
  5. Nell'interfaccia JupyterLab della nuova istanza di Vertex AI Workbench, seleziona File > Nuovo > Terminale per aprire una finestra del terminale.

  6. Utilizza gsutil tool per copiare i dati nella nuova istanza. Il comando di esempio seguente copia tutti i file da una directory Cloud Storage alla directory /home/jupyter/ della nuova istanza.

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

Conferma la migrazione

Dopo la migrazione, l'istanza di blocchi note gestiti originale continua a funzionare come prima. Verifica che la migrazione sia riuscita prima di eliminare l'istanza originale.

Elimina l'istanza di blocchi note gestiti

Se non hai bisogno dell'istanza di blocchi note gestiti da cui hai eseguito la migrazione, eliminala per evitare ulteriori addebiti per l'istanza.

  1. Nella console Google Cloud, vai alla pagina Blocchi note gestiti.

    Vai ai blocchi note gestiti

  2. Seleziona l'istanza che vuoi eliminare.

  3. Fai clic su  Elimina (a seconda delle dimensioni della finestra, il pulsante Elimina potrebbe essere visualizzato nel menu opzioni ).

  4. Per confermare, fai clic su Elimina.

Risolvere i problemi

Per trovare metodi per diagnosticare e risolvere i problemi di migrazione, consulta Risoluzione dei problemi di Vertex AI Workbench.

Passaggi successivi