設定使用 EI - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定使用 EI

只有當您符合下列其中一種情況時,才使用本主題中的說明:

  • 您想要使用自訂的角色或許可政策。

  • 您想要針對您的託管模型或筆記本執行個體使用 VPC。

注意

如果您已經擁有附加AmazonSageMakerFullAccess受管政策的執行角色 (對於在主控台中建立筆記本執行個體、訓練任務或模型時建立的任何 IAM 角色都是如此),並且未連線至 VPC 中的 EI 模型或筆記本執行個體,則不需要進行任何變更即可在 Amazon SageMaker 中使用 EI。

設定必要的許可

若要在中使用 EI SageMaker,您用來開啟筆記本執行個體或建立可部署模型的角色,必須具有附加必要權限的原則。您可以將包含所需許可的 AmazonSageMakerFullAccess 受管政策連接到角色,或者您可以新增具有所需許可的自訂政策。如需建立 IAM 角色的相關資訊,請參閱AWS Identity and Access Management 使用指南中的建立 AWS 服務角色 (主控台)。如需將政策連接到角色的資訊,請參閱新增與移除 IAM 政策

特別針對連線 IAM 政策的 EI 新增這些許可。

{ "Effect": "Allow", "Action": [ "elastic-inference:Connect", "ec2:DescribeVpcEndpoints" ], "Resource": "*" }

下列 IAM 政策是在中使用 EI 所需許可的完整清單 SageMaker。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "elastic-inference:Connect", "ec2:DescribeVpcEndpoints" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "sagemaker:*" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ecr:GetAuthorizationToken", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", "ecr:BatchCheckLayerAvailability", "cloudwatch:PutMetricData", "cloudwatch:PutMetricAlarm", "cloudwatch:DescribeAlarms", "cloudwatch:DeleteAlarms", "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DescribeNetworkInterfaces", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "application-autoscaling:DeleteScalingPolicy", "application-autoscaling:DeleteScheduledAction", "application-autoscaling:DeregisterScalableTarget", "application-autoscaling:DescribeScalableTargets", "application-autoscaling:DescribeScalingActivities", "application-autoscaling:DescribeScalingPolicies", "application-autoscaling:DescribeScheduledActions", "application-autoscaling:PutScalingPolicy", "application-autoscaling:PutScheduledAction", "application-autoscaling:RegisterScalableTarget", "logs:CreateLogGroup", "logs:CreateLogStream", "logs:DescribeLogStreams", "logs:GetLogEvents", "logs:PutLogEvents" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::*SageMaker*", "arn:aws:s3:::*Sagemaker*", "arn:aws:s3:::*sagemaker*" ] }, { "Effect": "Allow", "Action": [ "s3:CreateBucket", "s3:GetBucketLocation", "s3:ListBucket", "s3:ListAllMyBuckets" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": "*", "Condition": { "StringEqualsIgnoreCase": { "s3:ExistingObjectTag/SageMaker": "true" } } }, { "Action": "iam:CreateServiceLinkedRole", "Effect": "Allow", "Resource": "arn:aws:iam::*:role/aws-service-role/sagemaker.application-autoscaling.amazonaws.com/AWSServiceRoleForApplicationAutoScaling_SageMakerEndpoint", "Condition": { "StringLike": { "iam:AWSServiceName": "sagemaker.application-autoscaling.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "*", "Condition": { "StringEquals": { "iam:PassedToService": "sagemaker.amazonaws.com" } } } ] }

使用自訂的 VPC 連線 EI

若要在 VPC SageMaker 中搭配使用 EI,您需要建立和設定兩個安全群組,以及設定 PrivateLink VPC 介面端點。EI 使用 VPC 介面端點與 VPC 中的 SageMaker 端點進行通訊。您建立的安全群組會用來連線到 VPC 介面端點。

設定安全群組以連線到 EI

若要在 VPC 內使用 EI,您需要建立兩個安全群組:

  • 您要針對 EI 設定,控制存取 VPC 介面端點的安全群組。

  • 允許 SageMaker 呼叫第一個安全性群組的安全性群組。

設定兩個安全性群組
  1. 建立沒有對外連線的安全群組。您會在下一節將它連接到您建立的 VPC 端點介面。

  2. 建立第二個安全群組,沒有入站連線,但對外連線到第一個安全群組。

  3. 編輯第一個安全群組,僅允許第二個安全群組的入站連線,以及所有對外連線。

如需修改 VPC 安全群組的更多相關資訊,請參閱Amazon Virtual Private Cloud 使用者指南中的 您的 VPC 安全群組

若要在自訂 VPC SageMaker 中搭配使用 EI,您需要為 EI 服務設定 VPC 介面端點 (PrivateLink)。

  • 為 EI 設定 VPC 介面端點 (PrivateLink)。遵循建立介面端點中的說明。在服務清單中,選擇 com.amazonaws.<region>.elastic-inference.runtime。針對 Security group (安全群組),確保選取您上一節在端點建立的第一個安全群組。

  • 當您設定介面端點時,請選擇可以使用 EI 的所有可用區域。如果您不設定至少兩個可用區域,則 EI 會失敗。如需 VPC 子網路的資訊,請參閱 VPC 和子網路