设置 - Amazon SageMaker

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

设置

在开始使用 SageMaker Edge Manager 管理设备队列中的模型之前,必须先为 SageMaker 和 AWS IoT创建IAM角色。您还需要创建至少一个 Amazon S3 存储桶,用于存储您的预训练模型、 SageMaker Neo 编译任务的输出以及来自边缘设备的输入数据。

注册获取 AWS 账户

如果您没有 AWS 账户,请完成以下步骤来创建一个。

报名参加 AWS 账户
  1. 打开https://portal.aws.amazon.com/billing/注册。

  2. 按照屏幕上的说明进行操作。

    在注册时,将接到一通电话,要求使用电话键盘输入一个验证码。

    当您注册时 AWS 账户,就会创建AWS 账户根用户一个。根用户有权访问该账户中的所有 AWS 服务 和资源。作为安全最佳实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务

AWS 注册过程完成后会向您发送一封确认电子邮件。您可以随时前往 https://aws.amazon.com/并选择 “我的账户”,查看您当前的账户活动并管理您的账户

创建具有管理访问权限的用户

注册后,请保护您的安全 AWS 账户 AWS 账户根用户 AWS IAM Identity Center,启用并创建管理用户,这样您就不会使用 root 用户执行日常任务。

保护你的 AWS 账户根用户
  1. 选择 Root 用户并输入您的 AWS 账户 电子邮件地址,以账户所有者的身份登录。AWS Management Console在下一页上,输入您的密码。

    要获取使用根用户登录方面的帮助,请参阅《AWS 登录 用户指南》中的以根用户身份登录

  2. 为您的 root 用户开启多重身份验证 (MFA)。

    有关说明,请参阅《用户指南》中的 “为 AWS 账户 root 用户(控制台)启用虚拟MFA设备” IAM。

创建具有管理访问权限的用户
  1. 启用 “IAM身份中心”。

    有关说明,请参阅《AWS IAM Identity Center 用户指南》中的启用 AWS IAM Identity Center

  2. 在 IAM Identity Center 中,向用户授予管理访问权限。

    有关使用 IAM Identity Center 目录 作为身份源的教程,请参阅《用户指南》 IAM Identity Center 目录中的使用默认设置配置AWS IAM Identity Center 用户访问权限

以具有管理访问权限的用户身份登录
将访问权限分配给其他用户
  1. 在 IAM Identity Center 中,创建一个遵循应用最低权限权限的最佳实践的权限集。

    有关说明,请参阅《AWS IAM Identity Center 用户指南》中的创建权限集

  2. 将用户分配到一个组,然后为该组分配单点登录访问权限。

    有关说明,请参阅《AWS IAM Identity Center 用户指南》中的添加组

创建角色和存储

SageMaker 边缘管理器需要访问您的 Amazon S3 存储桶URI。为便于执行此操作,请创建一个可以运行 SageMaker 并有权访问 Amazon S3 的IAM角色。使用此角色, SageMaker 可以在您的账户下运行并访问您的 Amazon S3 存储桶。

你可以使用IAM控制台为 Python (Boto3) 或创建IAM角色。 AWS SDK AWS CLI以下是如何创建IAM角色、将必要策略附加到IAM控制台以及创建 Amazon S3 存储桶的示例。

  1. 为 Amazon 创建IAM角色 SageMaker。

    1. 登录 AWS Management Console 并打开IAM控制台,网址为https://console.aws.amazon.com/iam/

    2. 在IAM控制台的导航窗格中,选择角色,然后选择创建角色

    3. 对于Select type of trusted entity(选择受信任实体的类型),选择 AWS service(服务)

    4. 选择您希望允许其承担此角色的服务。在这种情况下,请选择SageMaker。然后选择下一步:权限

      • 这会自动创建一项IAM策略,授予访问相关服务(例如 Amazon S3、Amaz ECR on 和 CloudWatch 日志)的权限。

    5. 选择下一步:标签

    6. (可选)通过以键值对的形式附加标签来向角色添加元数据。有关在中使用标签的更多信息IAM,请参阅为IAM资源添加标签

    7. 选择下一步:审核

    8. 角色名称中键入角色名称。

    9. 如果可能,键入角色名称或角色名称后缀。在您的 AWS 账户中,角色名称必须是唯一的。名称不区分大小写。例如,您无法同时创建名为 PRODROLEprodrole 的角色。由于其他 AWS 资源可能会引用该角色,因此您无法在角色创建后对其名称进行编辑。

    10. (可选) 对于 Role description,键入新角色的描述。

    11. 检查角色,然后选择创建角色

      请注意 SageMaker 角色ARN,您可以使用该角色在 SageMaker Neo 中创建编译作业和使用 Edge Manager 创建打包作业。要ARN使用控制台找出角色,请执行以下操作:

      1. 前往IAMconsole:https://console.aws.amazon.com/iam/

      2. 选择角色

      3. 在搜索字段中键入角色的名称,搜索您刚刚创建的角色。

      4. 选择角色。

      5. 该角色位ARN于 “摘要” 页面的顶部。

  2. 为创建一个IAM角色 AWS IoT。

    您创建的 AWS IoT IAM角色用于授权您的事物对象。您还可以使用该IAM角色ARN在 SageMaker客户端对象中创建和注册设备队列。

    在您的 AWS 账户中配置一个IAM角色,让凭证提供者代表您的设备队列中的设备代替。然后,附加策略以授权您的设备与 AWS IoT 服务进行交互。

    以编程方式或通过IAM控制台为 AWS IoT 其创建角色,类似于您为 SageMaker其创建角色时所做的操作。

    1. 登录 AWS Management Console 并打开IAM控制台,网址为https://console.aws.amazon.com/iam/

    2. 在IAM控制台的导航窗格中,选择角色,然后选择创建角色

    3. 对于Select type of trusted entity(选择受信任实体的类型),选择 AWS service(服务)

    4. 选择您希望允许其承担此角色的服务。在本例中,我们选择 IoT。选择 IoT 作为使用案例

    5. 选择下一步: 权限

    6. 选择下一步:标签

    7. (可选)通过以键值对的形式附加标签来向角色添加元数据。有关在中使用标签的更多信息IAM,请参阅为IAM资源添加标签

    8. 选择下一步:审核

    9. 角色名称中键入角色名称。角色名称必须以 SageMaker 开头。

    10. (可选) 对于 Role description,键入新角色的描述。

    11. 检查角色,然后选择创建角色

    12. 创建角色后,在IAM控制台中选择 “角色”。通过在搜索字段中键入角色名称来搜索您创建的角色。

    13. 选择您的角色。

    14. 接下来选择附加策略

    15. 搜索字段中搜索 AmazonSageMakerEdgeDeviceFleetPolicy。选择 AmazonSageMakerEdgeDeviceFleetPolicy

    16. 选择附加策略

    17. 向信任关系中添加以下策略声明:

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": {"Service": "credentials.iot.amazonaws.com"}, "Action": "sts:AssumeRole" }, { "Effect": "Allow", "Principal": {"Service": "sagemaker.amazonaws.com"}, "Action": "sts:AssumeRole" } ] }

      信任策略是一种JSON策略文档,您可以在其中定义您信任的委托人来担任该角色。有关信任策略的更多信息,请参阅角色术语和概念

    18. 注意这个 AWS IoT 角色ARN。您可以使用 AWS IoT 角色ARN创建和注册设备队列。要使用控制台查找IAM角色ARN,请执行以下操作:

      1. 转到IAM控制台:https://console.aws.amazon.com/iam/

      2. 选择角色

      3. 通过在搜索字段中键入角色名称来搜索您创建的角色。

      4. 选择角色。

      5. 该角色ARN位于 “摘要” 页面上。

  3. 创建 Amazon S3 存储桶。

    SageMaker Neo 和 Edge Manager 从 Amazon S3 存储桶访问您的预编译模型和编译后的模型。Edge Manager 还会将来自设备队列的示例数据存储在 Amazon S3 中。

    1. 打开 Amazon S3 控制台,网址为https://console.aws.amazon.com/s3/

    2. 选择创建存储桶

    3. 存储桶名称中,输入存储桶的名称。

    4. 区域中,选择您想要存储桶所在的 AWS 区域。

    5. 阻止公有访问的存储桶设置中,选择要应用于存储桶的设置。

    6. 选择创建存储桶

    有关创建 Amazon S3 存储桶的更多信息,请参阅 Amazon S3 入门