第 2 阶段:迁移自定义映像和生命周期配置 - Amazon SageMaker
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

第 2 阶段:迁移自定义映像和生命周期配置

您必须更新您的自定义映像和生命周期配置 (LCC) 脚本,才能在 Amazon SageMaker Studio 中使用简化的本地执行模型。如果您尚未在域中创建自定义映像或生命周期配置,则可以跳过此阶段。

Amazon SageMaker Studio Classic 在拆分环境中运行,JupyterServer应用程序在运行Jupyter Server,而 Studio Classic 笔记本电脑在一个或多个KernelGateway应用程序上运行。Studio 已摆脱拆分环境,在本地运行时模型中运行基于 Code-OSS 的 JupyterLab 和代码编辑器、Visual Studio Code-开源应用程序。有关架构变更的更多信息,请参阅在 Amazon SageMaker Studio 上提高工作效率

迁移自定义镜像

您现有的 Studio 经典版自定义图像可能无法在 Studio 中使用。我们建议创建满足在 Studio 中使用要求的新自定义映像。Studio 的发布通过提供,简化了构建自定义映像的过程SageMaker 分发图片。 SageMaker分发图像包括用于机器学习、数据科学和数据分析可视化的常用库和软件包。有关基本 SageMaker 分发映像列表和 Amazon Elastic Container Registry 账户信息,请参阅亚马逊 SageMaker 图片可用于 Studio Classic

要构建自定义镜像,请完成以下任一操作。

  • 使用自定义包和模块扩展 SageMaker 分发映像。这些图像已经使用 JupyterLab 和代码编辑器进行了预配置,基于 Code-OSS、Visual Studio Code-Open Source。

  • 按照中的说明生成自定义 Dockerfile 文件。Dockerfile 规格要使其与 Studio 兼容,您必须在映像CodeServer上安装JupyterLab并开源。

迁移生命周期配置

由于 Studio 中简化了本地运行时模型,因此我们建议迁移现有 Studio Classic LCC 的结构。在 Studio Classic 中,您经常需要为两者KernelGateway以及JupyterServer应用程序创建单独的生命周期配置。由于JupyterServer和KernelGateway应用程序在 Studio Classic 中的不同计算资源上运行,因此 Studio Classic LCC 可以是以下任一类型之一:

  • JupyterServerLCC:这些 LCC 主要控制用户的家庭操作,包括设置代理、创建环境变量和自动关闭资源。

  • KernelGatewayLCC:这些 LCC 管理 Studio Classic 笔记本环境优化,包括更新内核中的 numpy 软件包版本和在Data Science 3.0内核中安装 snowflake 软件包。Pytorch 2.0 GPU

在简化的 Studio 架构中,您只需要一个在应用程序启动时运行的 LCC 脚本。虽然 LCC 脚本的迁移因开发环境而异,但我们建议合并JupyterServer和 KernelGateway LCC 来构建组合的 LCC。

Studio 中的 LCC 可以与以下应用程序之一相关联:

  • JupyterLab

  • 代码编辑器

用户可以在创建空间时为相应的应用程序类型选择 LCC,也可以使用管理员设置的默认 LCC。

注意

现有的 Studio 经典版自动关闭脚本不适用于 Studio。有关 Studio 自动关闭脚本的示例,请参阅 SageMaker Studio 生命周期配置示例

重构 LCC 时的注意事项

在重构 LCC 时,请考虑 Studio Classic 和 Studio 之间的以下区别。

  • JupyterLab 而且,代码编辑器应用程序在置备后将sagemaker-userUID:1001GID:101一样运行。默认情况下,sagemaker-user具有承担 sudo/root 权限的权限。 KernelGateway默认情况下,应用程序root按默认方式运行。

  • SageMaker 内部运行的分发映像 JupyterLab 和代码编辑器应用程序使用Debian基于的包管理器apt-get

  • Studio JupyterLab 和代码编辑器应用程序使用Conda包管理器,并在配置 Studio 应用程序时配置单一基础Python3Conda环境。有关在基础Conda环境中更新软件包和创建新Conda环境的信息,请参见JupyterLab 用户指南。相比之下,并非所有KernelGateway应用程序都可用Conda作软件包管理器。

  • Studio JupyterLab 应用程序使用JupyterLab 4.0,而 Studio 经典应用程序使用JupyterLab 3.0。验证您使用的所有JupyterLab扩展程序是否兼容JupyterLab 4.0。有关扩展的更多信息,请参阅扩展与 JupyterLab 4.0 的兼容性