升级用户管理的笔记本实例的环境

Vertex AI Workbench 用户管理的笔记本实例是已启用 JupyterLab 笔记本环境且可供使用的 Deep Learning VM Image 映像实例。本页面介绍如何升级用户管理的笔记本实例的环境。

升级原因

您可能因为以下任何原因需要升级用户管理的笔记本实例的环境:

  • 使用仅在较新版本的环境中提供的新功能。

  • 受益于在较新版本的环境中实现的框架更新、软件包更新和 bug 修复。

升级方法

您可以通过两种方法升级用户管理的笔记本实例:

  • 自动升级:在创建用户管理的笔记本实例时启用自动升级。在您指定的周期性时间段内,Vertex AI Workbench 会检查实例是否可以升级;如果是,则 Vertex AI Workbench 会升级实例。

  • 手动升级:如果现有的用户管理的笔记本实例满足升级的要求,您可以手动升级实例。

要求和限制

与用户管理的笔记本的向后兼容性无法得到保证。在升级用户管理的笔记本实例之前,请创建数据副本

如需确定是否可以升级特定的用户管理的笔记本实例,请参阅以下要求和限制:

  • 必须在实例的 Google Cloud 项目中启用 Notebooks API。如需了解详情,请参阅列出已启用的服务启用 API

  • 用户管理的笔记本实例的环境版本必须为 M54 或更高版本。

  • 用户管理的笔记本实例必须使用 Notebooks API 创建,或者必须已向 Notebooks API 注册

  • 如果用户管理的笔记本实例基于容器,则 Vertex AI Workbench 将升级操作系统。映像版本取决于 Dockerfile 拉取的特定映像。

    为了帮助确保升级使用最新版本的映像,请考虑在 Dockerfile 中使用 latest 标记。

如果无法升级实例,请考虑将数据迁移到新的用户管理的笔记本实例

升级的工作原理

可升级的用户管理的笔记本实例为双磁盘实例,包含一个启动磁盘和一个数据磁盘。升级过程会将启动磁盘升级到新映像,同时将数据保留在数据磁盘上。

哪些组件会进行升级或予以保留?

下表显示了用户管理的笔记本实例的哪些组件可升级,以及哪些组件将保留原样。

组件 升级结果
机器学习框架 升级
机器学习数据 保留
预安装的依赖项 已升级
用户安装的库 默认情况下,必须重新安装(请参阅用户安装的库
/home/jupyter 目录中的本地文件 保留
任何其他 /home/ 目录中的本地文件 不保留
预安装的操作系统软件包 升级
用户安装的操作系统软件包 不保留
GPU 驱动程序 升级
笔记本 保留
用户配置 保留

用户安装的库

默认情况下,用户管理的笔记本实例会将 pip 和 Conda 库存储在启动磁盘中,该磁盘在升级期间会被替换。安装 pip 库时,您可以添加 --user 标志以将其安装在 /home/jupyter/ 目录中;升级期间,这些库将保留在该目录中。

默认情况下,如果您在根据自定义容器创建的内核中安装 pip 或 Conda 库,则这些库仅在内核运行时才会保留。 每次重启内核时,都需要重新安装这些库。如需在自定义容器中安装永久性库,请将库的安装添加到 Dockerfile 中。在根据自定义容器创建的内核中安装 pip 库时,您可以添加 --user 标志,以便这些库在实例重启之前一直保留。

环境版本

Vertex AI Workbench 会定期更新环境(请参阅 Deep Learning VM 版本说明),但对于每个已发布的版本,并非所有环境都会更新。只有当实例基于的虚拟机映像有较新的环境版本时,Vertex AI Workbench 才会升级实例。

如需了解如何使用特定版本创建用户管理的笔记本实例,请参阅创建特定版本的用户管理的笔记本实例

升级之前

在升级之前,请完成以下步骤。

  1. 查看版本说明,了解新版本中的更新。

  2. 创建数据副本作为备份。

自动升级

Vertex AI Workbench 可以自动升级正在运行的实例。如果您的实例已停止,那么即使您在创建该实例时启用了自动升级,它也不会自动升级。

启用自动环境升级时,您需要指定 Vertex AI Workbench 检查实例是否可以升级的周期性时间段,如果可以升级,则升级实例。

您指定的时间段以 notebook-upgrade-schedule 元数据条目的形式存储,采用 unix-cron 格式,格林威治标准时间 (GMT)。

Vertex AI Workbench 会使用 API 方法 isUpgradeable 来检查实例是否可以升级。此方法会在实例的启动磁盘上检查是否有新的映像版本。

如果实例可以升级,Vertex AI Workbench 会使用内部升级方法升级实例。

创建启用了自动升级的用户管理的笔记本实例

如需创建启用了自动升级的用户管理的笔记本实例,请选中启用环境自动升级复选框,并在创建该实例时设置时间表。

您可以使用 Google Cloud 控制台或 Google Cloud CLI 指定自动升级。

须知事项

在创建用户管理的笔记本实例之前,您必须拥有 Google Cloud 项目并为该项目启用 Notebooks API。
  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.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Notebooks API.

    Enable the API

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

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Notebooks API.

    Enable the API

  8. 如果您计划在用户管理的笔记本实例中使用 GPU,请查看 Google Cloud 控制台中的配额页面,确保您的项目中有足够的 GPU 可用。如果配额页面上未列出 GPU,或者您需要额外的 GPU 配额,您可以申请增加配额。请参阅 Compute Engine 资源配额页面的申请增加配额

所需的角色

如果您已创建项目,则需要具有项目的 Owner (roles/owner) IAM 角色,该角色可提供所有必需的权限。跳过此部分并开始创建用户管理的笔记本实例。如果您未自行创建项目,请继续阅读本部分。

如需确保您的用户账号具有创建 Vertex AI Workbench 用户管理的笔记本实例所需的权限,请让您的管理员向您的用户账号授予项目的以下 IAM 角色:

如需详细了解如何授予角色,请参阅管理访问权限

您的管理员还可以通过自定义角色或其他预定义角色向您的用户账号授予所需的权限。

创建实例

控制台

  1. 在 Google Cloud 控制台中,转到用户管理的笔记本页面。 或者转到 notebook.new (https://notebook.new) 并跳过下一步。

    转到“用户管理的笔记本”

  2. 点击  新建笔记本,然后选择自定义

  3. 创建用户管理的笔记本页面的详细信息部分中,为新实例提供以下信息:

    • 名称:新实例的名称。
    • 区域可用区:为新实例选择区域和可用区。为获得最佳网络性能,请选择与您的地理位置最近的区域。 查看可用的用户管理的笔记本位置
  4. 系统健康状况部分中,选择环境自动升级

  5. 选择每周还是每月升级一次笔记本。

  6. 星期几字段中,选择所需的选项。

  7. 小时字段中,选择一天中的某个小时。

  8. 完成实例创建对话框的其余部分,然后点击创建

gcloud

  1. Cloud Shell 中或安装了 Google Cloud CLI 的任何环境中,输入以下 Google Cloud CLI 命令:

    gcloud notebooks instances create INSTANCE_NAME
        --metadata=notebook-upgrade-schedule=SCHEDULE
        --vm-image-project=deeplearning-platform-release
        --vm-image-family=VM_IMAGE_FAMILY
        --machine-type=MACHINE_TYPE
        --location=LOCATION
    

    请替换以下内容:

    • INSTANCE_NAME:新实例的名称
    • SCHEDULE:您设置的每周或每月时间表,采用 unix-cron 格式;例如,“00 19 * * MON”表示格林威治标准时间 (GMT) 每周一的 19:00
    • VM_IMAGE_FAMILY:要用于创建实例的映像系列名称
    • MACHINE_TYPE:实例虚拟机的机器类型
    • LOCATION:新实例所在的 Google Cloud 位置
  2. 通过 Google Cloud 控制台访问实例。

修改自动升级时间表

如需在创建用户管理的笔记本实例后修改自动升级时间表,请完成以下步骤:

  1. 在 Google Cloud 控制台中,打开用户管理的笔记本页面。

    转到“用户管理的笔记本”

  2. 点击需要更改时间表的实例名称。

  3. 笔记本详情页面的环境自动升级部分中,修改时间表。

  4. 点击提交,保存您做的修改。

手动升级

您可以手动升级符合要求的用户管理的笔记本实例。

检查实例环境的较新版本

如需检查是否有较新版本的实例环境,请从 Google Cloud 控制台访问实例。

  1. 在 Google Cloud 控制台中,转到用户管理的笔记本页面。

    进入“用户管理的笔记本”

  2. 如果实例未运行,请启动实例。Vertex AI Workbench 只能在实例运行时对其进行升级。

  3. 点击您要检查较新环境版本可用性的实例名称。

  4. 笔记本详情页面上,点击虚拟机详情旁边的在 Compute Engine 中查看

    如果有较新版本的环境,则会显示“此实例需要升级”消息。

将实例的环境升级到新版本

您可以在 Google Cloud 控制台中或使用 Google Cloud CLI 手动升级用户管理的笔记本实例。

控制台

  1. 在 Google Cloud 控制台中,打开用户管理的笔记本页面。

    进入“用户管理的笔记本”

  2. 如果实例未运行,请启动实例。Vertex AI Workbench 只能在实例运行时对其进行升级。

  3. 点击要升级的实例名称。

  4. 笔记本详情页面上,点击 升级

  5. 继续操作之前,请确保已创建实例上数据的副本

  6. 备份数据后,点击升级。Vertex AI Workbench 将升级并启动实例。

gcloud

  1. 如需检查实例是否可以升级,请使用 API 方法 isUpgradeable。此方法会在实例的启动磁盘上检查是否有新的映像版本。

    gcloud notebooks instances is-upgradeable INSTANCE_NAME \
        --location=LOCATION
    

    请替换以下内容:

    • INSTANCE_NAME:实例的名称
    • LOCATION:实例所在的 Google Cloud 位置

    如果实例可以升级,则响应为 true。如果响应为 false,该实例无法升级,但您仍然可以尝试将数据迁移到新实例

  2. 如果实例未运行,请启动实例。Vertex AI Workbench 只能在实例运行时对其进行升级。

  3. 继续操作之前,请确保已创建实例上数据的副本

  4. 如果实例可以升级,请使用 API 方法 upgrade 升级实例:

    gcloud notebooks instances upgrade INSTANCE_NAME \
        --location=LOCATION
    

    Vertex AI Workbench 会升级实例。

回滚升级

如需回滚升级,请完成以下步骤:

  1. 在 Google Cloud 控制台中,打开用户管理的笔记本页面。

    转到“用户管理的笔记本”

  2. 点击要回滚的实例名称。

  3. 笔记本详情页面的升级历史记录下,点击回滚

  4. Vertex AI Workbench 会将实例回滚到先前版本。