为 Amazon SageMaker AI 使用自定义设置 - Amazon SageMaker AI
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

为 Amazon SageMaker AI 使用自定义设置

针对组织设置(自定义设置)可指导您完成 Amazon SageMaker AI 域的高级设置。该选项提供信息和建议,帮助您了解和控制账户配置的各个方面,包括权限、集成和加密。如果要设置自定义域,请使用此选项。有关域的信息,请参阅 Amazon SageMaker AI 域概述

身份验证方法

在设置域之前,请考虑用户访问域的身份验证方法。

Amazon Identity Center

  • 帮助简化对用户组访问权限的管理。您可以授予或拒绝授予用户组权限,而不是将这些权限应用到每个用户。如果用户转移到不同的机构,您可以将该用户转移到不同的 Amazon Identity and Access Management 身份中心 (Amazon IAM Identity Center) 组。然后,用户会自动获得新组织所需的权限。

    请注意,IAM Identity Center 必须与域位于同一 Amazon Web Services 区域。

    要使用 IAM Identity Center 进行设置,请使用《Amazon IAM Identity Center 用户指南》中的以下说明:

  • IAM Identity Center 中的用户可以使用电子邮件发送给他们的 Amazon Web Services 访问门户URL 访问域。邮件中提供了创建账户访问域的说明。有关更多信息,请参阅登录 Amazon Web Services 访问门户

    作为管理员,您可以通过导航至 IAM Identity Center 并在设置摘要下找到 Amazon Web Services 访问门户 URL 来找到 Amazon Web Services 访问门户 URL。

  • 如果您希望将域的访问权限限制在特定的 Amazon 虚拟私有云(VPC)、接口端点或预定义的 IP 地址集,则必须使用 Amazon Identity and Access Management (IAM) 身份验证。使用 IAM Identity Center 身份验证的域不支持此功能。您仍然可以使用 IAM Identity Center 实现集中的劳动力身份控制。有关如何在保留 IAM Identity Center 以提供一致用户登录体验的同时实施这些限制的说明,请参阅 Amazon 机器学习博客中的通过 IAM Identity Center 和 SAML 应用程序安全访问 Amazon SageMaker Studio Classic。请注意,Amazon SSO 就是本博客中的 IAM Identity Center。

通过 IAM 登录

  • 登录账户后,用户配置文件可通过 SageMaker AI 控制台访问域。

  • 使用 Amazon Identity and Access Management(IAM)身份验证时,您可以将域的访问权限限制在特定的 Amazon 虚拟私有云(VPC)、接口端点或预定义的 IP 地址集。有关更多信息,请参阅仅允许从您的 VPC 内部进行访问

机构设置(自定义设置)

满足 完成 Amazon SageMaker AI 的先决条件 中的先决条件后,打开设置 SageMaker AI 域(自定义设置)页面,展开以下部分来了解设置信息。

从 SageMaker AI 控制台打开设置 SageMaker AI 域
  1. 打开 SageMaker AI 控制台

  2. 在左侧导航窗格中,选择管理员配置以展开选项。

  3. 管理员配置下,选择

  4. 页面上,选择创建域

  5. 设置 SageMaker AI 域页面上,选择针对组织设置

  6. 选择设置

打开设置 SageMaker AI 域页面后,请按以下说明操作:

  1. 域名中,输入域的唯一名称。例如,这可以是您的项目或团队名称。

  2. 选择下一步

在此步骤中,您将设置域的身份验证方法、用户和权限。

  1. 如何访问 Studio?下,您可以从两个选项中选择一个。有关身份验证方法的信息,请参阅 身份验证方法。有关这些选项的详细信息,请参阅下文:

    • Amazon Identity Center

      谁将使用 Studio?下选择一个将访问域的 Amazon IAM Identity Center 组。

      如果选择无身份中心用户组,则创建一个无用户的域。您可以在创建域后向域添加 IAM Identity Center 组。有关更多信息,请参阅编辑域设置

    • 通过 IAM 登录

      谁将使用 Studio?下选择 + 添加用户,输入新的用户配置文件名称,并选择添加以创建和添加用户配置文件名称。

      您可以重复此过程来创建多个用户配置文件。

  2. 谁将使用 Studio?下选择 IAM Identity Center 用户或组,然后选择选择。您需要在配置 IAM Identity Center 的同一区域内设置 Amazon SageMaker Studio。您可以从管理控制台右上方的下拉列表中选择区域来更改域的区域,也可以通过导航到 Amazon 访问门户来更改 IAM Identity Center 的区域。

  3. 它们执行哪些 ML 活动?下,您可以选择使用现有角色来使用现有角色,也可以选择创建新角色来创建新角色,并选中希望该角色访问的 ML 活动。

  4. 在选择 ML 活动时,您可能需要满足一些要求。要满足要求,请选择添加并完成要求。

  5. 满足所有要求后,选择下一步

在此步骤中,您可以配置在上一步骤中启用的应用程序。有关 ML 活动的更多信息,请参阅 机器学习活动参考

如果应用程序尚未启用,则会收到针对该应用程序的警告。要启用尚未启用的应用程序,请选择 Back(返回)返回上一步,并按照之前的说明操作。

  • Studio 配置:

    Studio 下,您可以选择较新版本和经典版本的 Studio 作为默认体验。这意味着在打开 Studio 时,要选择与哪个 ML 环境交互。

    • Studio 包括多个集成式开发环境(IDE)和应用程序,其中包括 Amazon SageMaker Studio Classic。如果选择了该选项,Studio Classic IDE 将使用默认设置。有关默认设置的信息,请参阅 默认设置

      有关 Studio 的信息,请参阅 Amazon SageMaker Studio

    • Studio Classic 包含 Jupyter IDE。如果选择了,您可以配置您的 Studio Classic 配置。

      有关 Studio Classic 的信息,请参阅 Amazon SageMaker Studio Classic

  • SageMaker Canvas 配置:

    如果已启用 Amazon SageMaker Canvas,请参阅 开始使用 Amazon SageMaker Canvas,了解载入说明和配置详情。

  • Studio Classic 配置:

    如果您选择 Studio(推荐)作为默认体验,Studio Classic IDE 就会有默认设置。有关默认设置的信息,请参阅 默认设置

    如果选择 Studio Classic 作为默认体验,则可以选择启用或禁用笔记本资源共享。笔记本资源包括单元格输出和 Git 存储库等构件。有关笔记本资源的更多信息,请参阅 共享和使用 Amazon SageMaker Studio Classic 笔记本

    如果启用了笔记本资源共享:

    1. 可共享笔记本资源的 S3 位置下,输入您的 Amazon S3 位置。

    2. 加密密钥 - 可选下,保留为无自定义加密或选择现有的 Amazon KMS 密钥,或选择输入 KMS 密钥 ARN 并输入 Amazon KMS 密钥的 ARN。

    3. 笔记本单元格输出共享首选项下,选择允许用户共享单元格输出禁用单元格输出共享

  • RStudio 配置:

    要启用 RStudio,需要 RStudio 许可证。设置方法请参阅 获取 RStudio 许可证

    1. RStudio Workbench 下,验证是否会自动检测到您的 RStudio 许可证。有关获取 RStudio 许可证并使用 SageMaker AI 激活该许可证的更多信息,请参阅 获取 RStudio 许可证

    2. 选择要在其上启动 RStudio Server 的实例类型。有关更多信息,请参阅RStudioServerPro 实例类型

    3. 权限下,创建您的角色或选择现有角色。该角色必须具有以下权限策略。该策略允许 RStudioServerPro 应用程序访问必要的资源。它还允许 Amazon SageMaker AI 在现有 RStudioServerPro 应用程序处于 DeletedFailed 状态时自动启动 RStudioServerPro 应用程序。有关向角色添加权限的信息,请参阅修改角色权限策略(控制台)

      JSON
      { "Version": "2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "license-manager:ExtendLicenseConsumption", "license-manager:ListReceivedLicenses", "license-manager:GetLicense", "license-manager:CheckoutLicense", "license-manager:CheckInLicense", "logs:CreateLogDelivery", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DeleteLogDelivery", "logs:Describe*", "logs:GetLogDelivery", "logs:GetLogEvents", "logs:ListLogDeliveries", "logs:PutLogEvents", "logs:PutResourcePolicy", "logs:UpdateLogDelivery", "sagemaker:CreateApp" ], "Resource": "*" } ] }
    4. RStudio Connect 下,添加 RStudio Connect 服务器的 URL。RStudio Connect 是 Shiny 应用程序、R Markdown 报告、控制面板、绘图等的发布平台。当您加入 RStudio on SageMaker AI 时,系统不会创建 RStudio Connect 服务器。有关更多信息,请参阅添加 RStudio Connect URL

    5. RStudio 软件包管理器下,添加 RStudio 软件包管理器的 URL。当您加入 RStudio 时,SageMaker AI 会为软件包管理器创建一个默认的软件包存储库。有关 RStudio 软件包管理器的更多信息,请参阅 更新 RStudio 软件包管理器 URL

    6. 选择下一步

  • Code Editor 配置:

    如果已启用 Code Editor,请参阅 Amazon SageMaker Studio 中的代码编辑器 了解概述和配置详情。

在本节中,您可以自定义 Studio 中显示的可查看应用程序和机器学习 (ML) 工具。该自定义功能只隐藏 Studio 左侧导航窗格中的应用程序和 ML 工具。有关 Studio UI 的信息,请参阅 Amazon SageMaker Studio 用户界面概述

有关应用程序的信息,请参阅 Amazon SageMaker Studio 支持的应用程序

Studio Classic 中不提供自定义 Studio UI 功能。如果希望将 Studio 设置为默认体验,请选择上一步,然后返回上一步。

  1. 自定义 Studio UI 页面上,您可以通过切换隐藏 Studio 中显示的应用程序和 ML 工具。

  2. 查看更改后,选择下一步

选择 Studio 与其他 Amazon 服务的连接方式。

您可以指定使用仅虚拟私有云(VPC)网络访问类型,从而禁用 Studio 的互联网访问。如果您选择了这个选项,就不能运行 Studio 笔记本,除非您的 VPC 有连接到 SageMaker API 和运行时的接口端点,或者有一个可以访问互联网的网络地址转换 (NAT) 网关,而且您的安全组允许出站连接。有关 Amazon VPC 的更多信息,请参阅 选择 Amazon VPC

如果您选择虚拟私有云(VPC),则只需执行以下步骤。如果您选择公共互联网访问,则需要执行以下步骤中的前两个。

  1. VPC 下,选择 Amazon VPC ID。

  2. 子网下,选择一个或多个子网。如果您不选择任何子网,SageMaker AI 将使用 Amazon VPC 中的所有子网。我们建议您使用不在受限可用区中创建的多个子网。在这些受限可用区中使用子网可能会导致容量不足错误和更长的应用程序创建时间。有关受限可用区的更多信息,请参阅可用区

  3. 安全组下,选择一个或多个子网。

如果选择仅 VPC,SageMaker AI 会自动将为域定义的安全组设置应用到域中创建的所有共享空间。如果选择仅公共互联网,则 SageMaker AI 不会将安全组设置应用于在域中创建的共享空间。

您可以选择加密数据。创建域时,会为您创建 Amazon Elastic File System (Amazon EFS)Amazon Elastic Block Store (Amazon EBS) 文件系统。Code Editor 和 JupyterLab 空间都使用 Amazon EBS 大小。

加密 Amazon EFS 和 Amazon EBS 文件系统后,您就不能更改加密密钥了。要加密 Amazon EFS 和 Amazon EBS 文件系统,您可以使用以下配置。

  • 加密密钥 - 可选下,保留为无自定义加密或选择现有 KMS 密钥,或选择输入 KMS 密钥 ARN 并输入 KMS 密钥的 ARN。

  • 默认空间大小 - 可选下,输入默认空间大小。

  • 最大空间大小 - 可选下,输入最大空间大小。

查看域设置。如果您需要更改设置,请选择相关步骤旁边的编辑。确认域设置准确无误后,选择提交,域就为您创建好了。此过程可能需要几分钟时间。

以下各节将提供使用 IAM Identity Center 或 IAM 身份验证方法自定义设置域的 Amazon CLI 说明。

满足前提条件(包括在 完成 Amazon SageMaker AI 的先决条件 中设置 Amazon CLI 凭证)后,请使用以下步骤。

  1. 创建用于创建域并附加 AmazonSageMakerFullAccess 策略的执行角色。您也可以使用至少具有附加信任策略的现有角色,该策略授予 SageMaker AI 代入此现有角色的权限。有关更多信息,请参阅如何使用 SageMaker AI 执行角色

    aws iam create-role --role-name execution-role-name --assume-role-policy-document file://execution-role-trust-policy.json aws iam attach-role-policy --role-name execution-role-name --policy-arn arn:aws:iam::aws:policy/AmazonSageMakerFullAccess
  2. 获取账户的默认 Amazon Virtual Private Cloud (Amazon VPC)。

    aws --region region ec2 describe-vpcs --filters Name=isDefault,Values=true --query "Vpcs[0].VpcId" --output text
  3. 获取默认 Amazon VPC 中的子网列表。

    aws --region region ec2 describe-subnets --filters Name=vpc-id,Values=default-vpc-id --query "Subnets[*].SubnetId" --output json
  4. 通过默认 Amazon VPC ID、子网和执行角色 ARN 创建域。您还必须传递 SageMaker 映像 ARN。有关可用 JupyterLab 版本 ARN 的信息,请参阅设置默认的 JupyterLab 版本

    对于 authentication-mode,使用 SSO 进行 IAM Identity Center 身份验证,或使用 IAM 进行 IAM 身份验证。

    aws --region region sagemaker create-domain --domain-name domain-name --vpc-id default-vpc-id --subnet-ids subnet-ids --auth-mode authentication-mode --default-user-settings "ExecutionRole=arn:aws:iam::account-number:role/execution-role-name,JupyterServerAppSettings={DefaultResourceSpec={InstanceType=system,SageMakerImageArn=image-arn}}" \ --query DomainArn --output text

    您可以使用 StudioWebPortalSettings 为域自定义 Studio 中显示的应用程序和 ML 工具。使用 HiddenAppTypes 隐藏应用程序,使用 HiddenMlTools 隐藏 ML 工具。有关自定义 Studio 用户界面左侧导航的更多信息,请参阅 在 Amazon SageMaker Studio 用户界面中隐藏机器学习工具和应用程序。此功能不适用于 Studio Classic。

  5. 确认域已创建。

    aws --region region sagemaker list-domains

有关使用 Amazon CloudFormation 创建域的信息,请参阅《Amazon CloudFormation 用户指南》中的 AWS::SageMaker::Domain

有关可用于设置域的 Amazon CloudFormation 模板示例,请参阅在 aws-samples GitHub 存储库中使用 Amazon CloudFormation 创建 Amazon SageMaker AI 域

域设置完成后,管理用户可以查看和编辑域。有关更多信息,请参阅 查看领域编辑域设置

载入后访问域

用户可以通过以下方式访问 SageMaker AI: