本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
约束和注意事项
请查看以下约束,确保您的笔记本作业成功完成。Studio 使用 Papermill 来运行笔记本。您可能需要更新 Jupyter 笔记本以符合 Papermill 的要求。LCC脚本的内容也有一些限制,需要了解有关VPC配置的重要细节。
JupyterLab 版本
JupyterLab 支持 3.0 及更高版本。
安装需要重启内核的软件包
Papermill 不支持调用 pip install
来安装需要重启内核的软件包。在这种情况下,请在初始化脚本中使用 pip install
。对于不需要重启内核的软件包安装,您仍可在笔记本中包含 pip install
。
在 Jupyter 中注册的内核和语言名称
Papermill 为特定内核和语言注册了一个转换器。如果您自带实例 (BYOI),请使用标准内核名称,如以下代码段所示:
papermill_translators.register("python", PythonTranslator) papermill_translators.register("R", RTranslator) papermill_translators.register("scala", ScalaTranslator) papermill_translators.register("julia", JuliaTranslator) papermill_translators.register("matlab", MatlabTranslator) papermill_translators.register(".net-csharp", CSharpTranslator) papermill_translators.register(".net-fsharp", FSharpTranslator) papermill_translators.register(".net-powershell", PowershellTranslator) papermill_translators.register("pysparkkernel", PythonTranslator) papermill_translators.register("sparkkernel", ScalaTranslator) papermill_translators.register("sparkrkernel", RTranslator) papermill_translators.register("bash", BashTranslator)
参数和环境变量限制
参数和环境变量限制。当您创建笔记本作业时,它会收到您指定的参数和环境变量。最多可以传递 100 个参数。每个参数名称的长度最多为 256 个字符,关联值的长度最多为 2500 个字符。如果传递环境变量,则最多可以传递 28 个变量。变量名称和关联值长度最多为 512 个字符。如果需要超过 28 个环境变量,请在初始化脚本中使用其他环境变量,该脚本对于可以使用的环境变量数量没有限制。
查看作业和作业定义
查看作业和作业定义。如果您在笔记本的 Studio 用户界面中安排 JupyterLab 笔记本作业,则可以在 Studio 用户界面中查看笔记本作业和笔记本作业定义。如果您使用 SageMaker Python 安排了笔记本作业SDK,则只能查看作业, SageMaker Python SDK 笔记本作业步骤不会创建作业定义。要查看您的作业,您还需要为笔记本作业步骤实例提供其他标签。有关详细信息,请参阅在 Studio 用户界面控制面板中查看你的笔记本作业。
图像
您需要根据在 Studio 中运行笔记本作业还是在管道中运行 SageMaker Python SDK 笔记本作业步骤来管理图像限制。
SageMaker笔记本作业(Studio)的图像限制
映像和内核支持。启动笔记本作业的驱动程序假设以下条件:
-
基本 Python 运行时环境安装在 Studio 或 bring-your-own (BYO) 镜像中,并且是外壳中的默认运行环境。
-
基本 Python 运行时环境包含正确配置了内核规格的 Jupyter 客户端。
-
基本 Python 运行时环境包含
pip
函数,因此笔记本作业可以安装系统依赖项。 -
对于具有多个环境的映像,在安装笔记本专用软件包之前,您的初始化脚本应切换到适当的内核专用环境。配置完内核 Python 运行时环境后,如果与内核运行时环境不同,应切换回默认 Python 运行时环境。
启动笔记本作业的驱动程序是一个 bash 脚本,Bash v4 必须位于 /bin/bash 下。
bring-your-own-images(BYOI) 上的 root 权限。您必须对自己的 Studio 映像拥有根权限,无论作为根用户还是通过 sudo
访问。如果您不是根用户,但通过 sudo
访问根权限,请使用 1000/100
作为 UID/GID
。
SageMakerPython SDK 笔记本作业的图像限制
笔记本作业步骤支持以下图像:
-
SageMaker 中列出的分发映像亚马逊 SageMaker 图片可用于 Studio Classic。
-
基于前面列表中的 SageMaker 分发映像的自定义镜像。使用SageMaker 分发图像
作为基础。 -
预先安装的带有笔记本作业依赖关系的自定义镜像 BYOI (即 sagemaker-headless-execution-driver
. 您的图片必须符合以下要求: -
该映像预先安装了笔记本作业依赖关系。
-
已安装基本的 Python 运行时环境,该环境在 shell 环境中为默认环境。
-
基本 Python 运行时环境包含正确配置了内核规格的 Jupyter 客户端。
-
您可以以 root 用户身份或通过
sudo
访问权限获得 root 权限。如果您不是根用户,但通过sudo
访问根权限,请使用1000/100
作为UID/GID
。
-
VPC创建任务期间使用的子网
如果您使用VPC,Studio 将使用您的私有子网来创建您的作业。指定 1 至 5 个私有子网(以及 1 至 15 个安全组)。
如果您使用VPC带有私有子网的,则必须选择以下选项之一,以确保笔记本作业可以连接到依赖的服务或资源:
-
如果任务需要访问支持接口VPC终端节点的 AWS 服务,请创建一个终端节点来连接到该服务。有关支持接口端点的服务列表,请参阅与集成的AWS 服务 AWS PrivateLink。有关创建接口VPC终端节点的信息,请参阅使用接口VPC终端节点访问 AWS 服务。必须至少提供一个 Amazon S3 VPC 终端节点网关。
-
如果笔记本作业需要访问不支持接口VPC端点的 AWS 服务或外部的资源 AWS,请创建NAT网关并将您的安全组配置为允许出站连接。有关为您的设置NAT网关的信息VPC,请参阅 VPC Amazon Virtual Private Cloud 用户指南中的使用公有和私有子网 (NAT)。
服务限制
由于笔记本作业计划程序是基于 Pipelines、T SageMaker raining 和 Amazon EventBridge 服务构建的,因此您的笔记本作业受其特定服务的配额限制。如果超过这些配额,则可能会看到与这些服务相关的错误消息。例如,一次可以运行的管道数量以及可以为单个事件总线设置的规则数量都有限制。有关 SageMaker 配额的更多信息,请参阅 Amazon SageMaker 终端节点和配额。有关 EventBridge 配额的更多信息,请参阅 Amazon EventBridge 配额。