從使用者管理的筆記本遷移至 Vertex AI Workbench 執行個體
本頁說明如何從使用者管理的筆記本執行個體遷移至 Vertex AI Workbench 執行個體。您可以使用 Vertex AI Workbench 遷移工具,或手動遷移執行個體的資料和檔案。
遷移工具總覽
Vertex AI Workbench 提供遷移工具,可將使用者管理的筆記本執行個體遷移至 Vertex AI Workbench 執行個體。
遷移工具會建立 Vertex AI Workbench 執行個體,其設定類似於您要遷移的使用者管理型筆記本執行個體。舉例來說,遷移工具會建立具有相同或類似機器類型、網路組態、閒置關機設定和其他規格的執行個體。接著,系統會將使用者管理的筆記本執行個體資料磁碟上的檔案複製到 Vertex AI Workbench 執行個體。
Vertex AI Workbench 不會刪除或變更由使用者管理的筆記本執行個體,因此您可以在遷移後繼續使用該執行個體。如果您不再需要使用者管理的 Notebook 執行個體,請刪除該執行個體,以免產生額外費用。
帳單
如果使用者自行管理的筆記本執行個體使用極端永久磁碟,則遷移作業會產生 I/O 作業費用。請參閱「磁碟定價的永久磁碟和 Hyperdisk 定價」一文中的「極端佈建 IOPS」。
遷移完成後,由使用者管理的筆記本執行個體仍會存在,並會產生與先前相同的費用。如果您不再需要使用者管理的筆記本執行個體,請刪除該執行個體,以免產生額外費用。
預設遷移工具行為
Vertex AI Workbench 遷移工具會嘗試將使用者管理型筆記本執行個體遷移至規格相符的 Vertex AI Workbench 執行個體。如果 Vertex AI Workbench 執行個體無法使用使用者自管筆記本執行個體中的規格,Vertex AI Workbench 會盡可能使用預設規格。如果遷移工具無法遷移使用者管理的 Notebook 執行個體規格,就不會遷移該執行個體。
下表列出遷移工具的部分主要預設遷移行為。
類別 | 使用者自行管理的筆記本規格 | 遷移結果 |
---|---|---|
作業系統 | 任何 Ubuntu 版本 | Debian 11 |
任何 Debian 版本 | Debian 11 | |
架構 | 任何 CUDA 版本 | CUDA 11.3 |
任何 Python 版本 | Python 3.10 | |
任何 PyTorch 版本 | PyTorch 1.13 | |
任何 TensorFlow 版本 | TensorFlow 2.11 | |
任何 R 版本 | 未遷移;請參閱「新增 conda 環境」 | |
任何本機 PySpark 版本 | 未遷移;請參閱「新增 conda 環境」 | |
任何 XGBoost 版本 | 未遷移;請參閱「新增 conda 環境」 | |
任何 Kaggle Python 版本 | 未遷移;請參閱「新增 conda 環境」 | |
任何 Jax 版本 | 未遷移;請參閱「新增 conda 環境」 | |
任何 Apache Beam 版本 | 未遷移;請參閱「新增 conda 環境」 | |
機型 | 支援的機器類型 | 相同的機器類型 |
不支援的機器類型 | e2-standard-4 |
|
加速器 | 支援的加速器 | 相同的加速器 |
不支援的加速器 | 遷移作業不包含加速器 | |
設定 | 閒置關閉 | 已遷移 |
刪除並移至垃圾桶 | 已遷移 | |
nbconvert |
已遷移 | |
下載檔案 | 已遷移 | |
終端機存取權 | 已遷移 | |
其他 | Identity and Access Management 權限 | 已遷移,但使用 Vertex AI Workbench 執行個體可能需要新的權限 |
存取模式 | 已遷移 | |
網路 | 已遷移 | |
開機後指令碼 |
使用 Google Cloud 控制台時,系統會在沒有後啟動指令碼的情況下遷移執行個體;如要使用後啟動指令碼遷移執行個體,請使用 Google Cloud CLI 或 REST API 指定 PostStartupScriptOption 選項 |
|
Dataproc Hub | 未遷移;必須手動遷移 |
指定開機後指令碼
使用啟動後指令碼的使用者管理筆記本執行個體必須遷移至指定 PostStartupScriptOption
選項的執行個體。使用這個選項,指出您要在新的 Vertex AI Workbench 執行個體中略過或重新執行啟動後指令碼。
Google Cloud 控制台不支援指定 PostStartupScriptOption
選項。如要在遷移使用者管理的 Notebooks 執行個體時指定 PostStartupScriptOption
選項,您必須使用 Google Cloud CLI 或 REST API。
事前準備
- 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.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Notebooks API.
- 如果您尚未建立由使用者管理的筆記本執行個體,請先完成這項作業。
-
notebooks.instances.create
-
notebooks.instances.get
PROJECT_ID
:您的專案 IDLOCATION
:使用者自行管理的筆記本執行個體所在區域,或使用-
列出所有區域的執行個體PROJECT_ID
:您的專案 IDLOCATION
:使用者自行管理的筆記本執行個體所在區域,或使用-
列出所有區域的執行個體前往 Google Cloud 控制台的「使用者管理的 Notebook」頁面。
按一下「遷移」按鈕。
在「Migrate user-managed notebooks to instances」頁面的「Ready」分頁中,選取要遷移的執行個體。
按一下「遷移」。
遷移完成後,請前往「Instances」頁面查看新的 Vertex AI Workbench 執行個體。
PROJECT_ID
:您的專案 IDLOCATION
:使用者自行管理的筆記本執行個體所在的區域INSTANCE_ID
:使用者管理的筆記本執行個體 IDPOST_STARTUP_SCRIPT_OPTION
:選用:啟動後指令碼選項之一PROJECT_ID
:您的專案 IDLOCATION
:使用者自行管理的筆記本執行個體所在的區域INSTANCE_ID
:使用者管理的筆記本執行個體 IDPOST_STARTUP_SCRIPT_OPTION
:選用:啟動後指令碼選項之一使用 Cloud Storage 和終端機:使用終端機將資料和檔案複製到 Cloud Storage,然後再複製到其他執行個體。
使用 GitHub:使用 JupyterLab 的 Git 擴充功能,將資料和檔案複製到 GitHub 存放區。
在由使用者管理的筆記本執行個體所在的專案中建立 Cloud Storage 值區。
在同一專案中,建立 Vertex AI Workbench 執行個體,以便將資料遷移至該執行個體。建立這個執行個體時:
- 啟用終端機存取權。
- 指定機器類型、網路和其他特性,以符合您的需求。
在使用者管理的筆記本執行個體的 JupyterLab 介面中,依序選取「File」>「New」>「Terminal」,開啟終端機視窗。
使用 gcloud CLI 將使用者資料複製到 Cloud Storage 值區。下列範例指令會將執行個體
/home/jupyter/
目錄中的所有檔案複製到 Cloud Storage 值區中的目錄。gcloud storage cp /home/jupyter/* gs://BUCKET_NAMEPATH --recursive
更改下列內容:
BUCKET_NAME
:Cloud Storage 值區名稱PATH
:要複製檔案的目錄路徑,例如:/copy/jupyter/
在新的 Vertex AI Workbench 執行個體的 JupyterLab 介面中,依序選取「File」>「New」>「Terminal」,以開啟終端機視窗。
使用 gcloud CLI 將資料複製到新執行個體。下列範例指令會將所有檔案從 Cloud Storage 目錄複製到新執行個體的
/home/jupyter/
目錄。gcloud storage cp gs://BUCKET_NAMEPATH* /home/jupyter/ --recursive
前往 Google Cloud 控制台的「使用者管理的 Notebook」頁面。
選取要刪除的執行個體。
按一下
「Delete」(刪除) (依視窗大小而定,「Delete」(刪除) 按鈕可能位於 選項選單中)。按一下「Delete」(刪除) 確認操作。
- 進一步瞭解 Vertex AI Workbench 執行個體。
必要的角色
如要取得將使用者自行管理的筆記本執行個體遷移至 Vertex AI Workbench 執行個體所需的權限,請要求管理員為您授予專案的「Notebooks Runner」(roles/notebooks.runner
) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這個預先定義的角色包含將使用者管理型筆記本執行個體遷移至 Vertex AI Workbench 執行個體所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
如要將由使用者管理的筆記本執行個體遷移至 Vertex AI Workbench 執行個體,您必須具備下列權限:
遷移前的檢查
遷移前,請列出使用者管理的 Notebook 執行個體,並檢查輸出內容是否有任何遷移警告或錯誤,確認使用者管理的 Notebook 執行個體是否符合遷移資格。
列出執行個體
如要列出尚未遷移的使用者管理筆記本執行個體,請使用 projects.locations.instances.list
方法搭配篩選器 migrated:false
。您可以使用 gcloud CLI 或 REST API 列出這些項目:
gcloud
使用下列任何指令資料之前,請先替換以下項目:
執行下列指令:
Linux、macOS 或 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
使用任何要求資料之前,請先替換以下項目:
HTTP 方法和網址:
GET https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances?filter=migrated:false
如要傳送要求,請選擇以下其中一個選項:
curl
執行下列指令:
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
執行下列指令:
$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
檢查輸出內容是否有警告或錯誤
如果偵測到遷移警告或錯誤,projects.locations.instances.list
方法的輸出內容就會包含這項資訊。
如果使用者自行管理的筆記本執行個體設定中的特定元件無法遷移至 Vertex AI Workbench 執行個體中的相同規格,系統就會顯示警告。舉例來說,如果使用者自行管理的筆記本執行個體使用不支援的加速器,輸出內容就會顯示警告。在這種情況下,系統會在沒有任何加速器的情況下遷移執行個體。您可以在遷移後連結加速器。查看輸出內容中的警告,考量遷移工具的預設行為,並評估遷移工具是否適合您的遷移作業。
如果輸出內容中出現一或多個錯誤,表示您無法使用遷移工具遷移使用者自行管理的筆記本執行個體。您必須手動遷移執行個體。
如要進一步瞭解遷移警告和錯誤,請參閱 InstanceMigrationEligibility
說明文件中的警告和錯誤。
使用遷移工具進行遷移
您可以使用 Google Cloud 控制台、gcloud CLI 或 REST API 遷移使用者管理的 Notebook 執行個體。
主控台
gcloud
使用下列任何指令資料之前,請先替換以下項目:
執行下列指令:
Linux、macOS 或 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
使用任何要求資料之前,請先替換以下項目:
HTTP 方法和網址:
POST https://notebooks.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/instances/INSTANCE_ID:migrate
JSON 要求主體:
{ "postStartupScriptOption": (POST_STARTUP_SCRIPT_OPTION) }
如要傳送要求,請選擇以下其中一個選項:
curl
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
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
將要求主體儲存在名為 request.json
的檔案中,然後執行下列指令:
$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
手動遷移
如要手動將執行個體遷移至 Vertex AI Workbench 執行個體,建議您採用下列方法:
本指南說明如何使用 Cloud Storage 和終端機遷移資料和檔案。
需求條件
您必須具備使用者管理的 Notebook 執行個體的終端機存取權。您必須在建立執行個體時手動設定終端機存取權。執行個體建立後,就無法變更終端機存取權設定。
使用 Cloud Storage 和終端機手動遷移
如要使用 Cloud Storage 和終端機將資料和檔案遷移至新的 Vertex AI Workbench 執行個體,請按照下列步驟操作。
確認遷移作業
遷移完成後,原先由使用者管理的筆記本執行個體會繼續正常運作。請先確認遷移作業成功,再刪除原始執行個體。
刪除使用者管理的筆記本執行個體
如果您不需要遷移自的使用者管理筆記本執行個體,請將其刪除,以免該執行個體產生額外費用。
疑難排解
如要瞭解如何診斷及解決遷移問題,請參閱「排解 Vertex AI Workbench 問題」。