View a markdown version of this page

マルチターン RL ジョブの VPC を設定する - Amazon SageMaker AI

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

マルチターン RL ジョブの VPC を設定する

マルチターン RL ジョブ設定VpcConfigで を指定すると、Amazon SageMaker AI はプロキシ Elastic Network Interface (ENI) を VPC に配置します。S3 バケットへのアクセス、エージェントの呼び出し、ログ記録を含むすべての顧客データトラフィックは、この ENI を経由します。これにより、データは VPC ネットワーク境界内に保持されます。

必要な VPC のセットアップ

サブネット

冗長性を確保するために、異なるアベイラビリティーゾーンに 2 つ以上のプライベートサブネットを指定します。すべてのトラフィックは VPC エンドポイントを経由するため、サブネットには NAT ゲートウェイやインターネットアクセスは必要ありません。

セキュリティグループ

次のアウトバウンドルールを使用してセキュリティグループを作成します。インバウンドルールは必要ありません。

  • へのアウトバウンド TCP 443 0.0.0.0/0

  • へのアウトバウンド UDP 53 0.0.0.0/0

注記

セキュリティを強化するために、 を許可する代わりに、S3 マネージドプレフィックスリストとインターフェイスエンドポイント ENIs のプライベート IP アドレスに出力を制限できます0.0.0.0/0

VPC エンドポイント

プロキシ ENI からのトラフィックがインターネットアクセスなしで AWS サービスに到達できるように、次の VPC エンドポイントを作成します。

Endpoint ルーティングされたトラフィック サービス名 タイプ
S3 (必須) プロンプトデータ、ジョブ出力、MLflow アーティファクト (GetObjectPutObjectListBucket) com.amazonaws.region.s3 ゲートウェイ
CloudWatch Logs (必須) トレーニングコンテナログ (PutLogEventsCreateLogGroupCreateLogStream) com.amazonaws.region.logs インターフェイス
Bedrock AgentCore (Bedrock エージェントを使用する場合は必須) エージェント呼び出し (InvokeAgentRuntime) com.amazonaws.region.bedrock-agentcore インターフェイス
Lambda (Lambda エージェントを使用する場合は必須) Lambda フォワーダーによるエージェントの呼び出し (Invoke) com.amazonaws.region.lambda インターフェイス
MLflow (MLflow 追跡を使用する場合に必要) トレーニングメトリクスとトレース (LogBatchStartTraceEndTrace) aws.sagemaker.region.mlflow インターフェイス
注記

すべてのインターフェイスエンドポイントでプライベート DNS を有効にします。

インターフェイスエンドポイントセキュリティグループ

すべてのインターフェイスエンドポイントは、VPC CIDR からのインバウンド TCP 443 とセキュリティグループを共有する必要があります。

IAM アクセス許可

実行ロールには、ENI 管理のための EC2 アクセス許可を含める必要があります。ロールに次のポリシーステートメントを追加します。

[ { "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:DeleteNetworkInterfacePermission", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeVpcs" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:CreateTags" ], "Resource": "arn:aws:ec2:*:*:network-interface/*", "Condition": { "StringEquals": { "ec2:CreateAction": "CreateNetworkInterface" } } } ]

API 設定

マルチターン RL ジョブリクエストに VpcConfigパラメータを含めます。

"VpcConfig": { "Subnets": ["subnet-0abc123", "subnet-0def456"], "SecurityGroupIds": ["sg-0abc123def"] }
VPC へのアクセスを制限する

VPC 設定をさらに保護するために、追加の制限を適用できます。

S3 バケットポリシー

VPC への S3 アクセスのみを制限するには、 aws:SourceVpc条件で拒否ポリシーを追加します。

{ "Sid": "DenyAccessFromOutsideVpc", "Effect": "Deny", "Principal": "*", "Action": "s3:*", "Resource": [ "arn:aws:s3:::my-mtrl-bucket", "arn:aws:s3:::my-mtrl-bucket/*" ], "Condition": { "StringNotEquals": { "aws:SourceVpc": "vpc-0abc123def" } } }
注記

aws:SourceVpc 条件キーは、リクエストが S3 Gateway エンドポイントを通過する場合にのみ入力されます。

VPC エンドポイントポリシー

マルチターン RL ジョブに必要なアクションのみを許可するようにインターフェイスエンドポイントを制限できます。次の例では、CloudWatch Logs エンドポイントを /aws/sagemaker/Job/ プレフィックスを持つロググループに制限します。

{ "Statement": [ { "Effect": "Allow", "Principal": "*", "Action": [ "logs:PutLogEvents", "logs:CreateLogGroup", "logs:CreateLogStream" ], "Resource": "arn:aws:logs:*:*:log-group:/aws/sagemaker/Job/*" } ] }