Amazon のリソースへのアクセスを SageMaker ホストエンドポイントに許可する VPC - Amazon SageMaker

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

Amazon のリソースへのアクセスを SageMaker ホストエンドポイントに許可する VPC

Amazon VPC Access のモデルを設定する

プライベート でサブネットとセキュリティグループを指定するにはVPC、 CreateModelVpcConfigリクエストパラメータを使用するかAPI、 SageMaker コンソールでモデルを作成するときにこの情報を指定します。 はこの情報 SageMaker を使用してネットワークインターフェイスを作成し、モデルコンテナにアタッチします。ネットワークインターフェイスは、モデルコンテナに、インターネットに接続VPCされていない 内のネットワーク接続を提供します。また、モデルがプライベート のリソースに接続できるようにしますVPC。

注記

ホスティングインスタンスが 1 つしかない場合でもVPC、プライベート の異なるアベイラビリティーゾーンに少なくとも 2 つのサブネットを作成する必要があります。

次に、VpcConfig への呼び出しに含める CreateModel パラメータの例を示します。

VpcConfig: { "Subnets": [ "subnet-0123456789abcdef0", "subnet-0123456789abcdef1", "subnet-0123456789abcdef2" ], "SecurityGroupIds": [ "sg-0123456789abcdef0" ] }

SageMaker ホスティングVPC用にプライベートを設定する

VPC SageMaker モデルのプライベートを設定するときは、次のガイドラインを使用します。のセットアップの詳細についてはVPC、「Amazon VPCユーザーガイド」の「 VPCsとサブネットの使用」を参照してください。

サブネットに十分な IP アドレスを確保する

Elastic Fabric Adapter (EFA) を使用しないトレーニングインスタンスには、少なくとも 2 つのプライベート IP アドレスが必要です。を使用するトレーニングインスタンスには、少なくとも 5 つのプライベート IP アドレスEFAが必要です。詳細については、Amazon EC2ユーザーガイドの「複数の IP アドレス」を参照してください。

Amazon S3 VPCエンドポイントを作成する

モデルコンテナがインターネットにアクセスできないVPCように を設定すると、アクセスを許可するVPCエンドポイントを作成しない限り、データを含む Amazon S3 バケットに接続できません。VPC エンドポイントを作成することで、モデルコンテナがデータおよびモデルアーティファクトを保存するバケットにアクセスできるようになります。また、プライベートから S3 バケットVPCへのアクセスのみを許可するカスタムポリシーを作成することをお勧めします。詳細については、Amazon S3 のエンドポイントを参照してください。

Amazon S3 VPCエンドポイントを作成するには:
  1. で Amazon VPCコンソールを開きますhttps://console.aws.amazon.com/vpc/

  2. ナビゲーションペインで [エンドポイント] を選択し、[エンドポイントの作成] を選択します。

  3. サービス名 で、com.amazonaws を選択します。region.s3、ここで region は、 が存在する AWS リージョンの名前ですVPC。

  4. ではVPC、このエンドポイントVPCに使用する を選択します。

  5. [Configure route tables] (ルートテーブルの設定) で、エンドポイントで使うルートテーブルを選択します。VPC サービスは、Amazon S3 トラフィックを新しいエンドポイントにポイントするルートテーブルにルートを自動的に追加します。

  6. ポリシー では、フルアクセスを選択して、 内の任意のユーザーまたはサービスによる Amazon S3 サービスへのフルアクセスを許可しますVPC。アクセスを詳細に制限するには、[カスタム] を選択します。詳細については、「カスタムエンドポイントポリシーを使って Amazon S3 へのアクセスを制限する」を参照してください。

カスタムエンドポイントポリシーを使って Amazon S3 へのアクセスを制限する

デフォルトのエンドポイントポリシーでは、 内の任意のユーザーまたはサービスに対して Amazon Simple Storage Service (Amazon S3) へのフルアクセスを許可しますVPC。Amazon S3 へのアクセスを詳細に制限するには、カスタムエンドポイントポリシーを作成します。詳細については、「Amazon S3 のエンドポイントポリシー」を参照してください。

バケットポリシーを使用して、S3 バケットへのアクセスを Amazon からのトラフィックのみに制限することもできますVPC。詳細については、「Amazon S3 バケットポリシー」を参照してください。

カスタムのエンドポイントポリシーでモデルコンテナへのパッケージのインストールを制限する

デフォルトエンドポイントポリシーでは、ユーザーは、Amazon Linux と Amazon Linux 2 のリポジトリからのパッケージをモデルコンテナにインストールできます。ユーザーがそのようなリポジトリからパッケージをインストールしないようにする場合は、Amazon Linux と Amazon Linux 2 のリポジトリへのアクセスを明示的に拒否するカスタムエンドポイントポリシーを作成します。これらのリポジトリへのアクセスを拒否するポリシーの例を次に示します。

{ "Statement": [ { "Sid": "AmazonLinuxAMIRepositoryAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Deny", "Resource": [ "arn:aws:s3:::packages.*.amazonaws.com/*", "arn:aws:s3:::repo.*.amazonaws.com/*" ] } ] } { "Statement": [ { "Sid": "AmazonLinux2AMIRepositoryAccess", "Principal": "*", "Action": [ "s3:GetObject" ], "Effect": "Deny", "Resource": [ "arn:aws:s3:::amazonlinux.*.amazonaws.com/*" ] } ] }

で実行されているコンテナのエンドポイントアクセスのアクセス許可VPCをカスタムIAMポリシーに追加する

SageMakerFullAccess マネージドポリシーには、Amazon VPC アクセス用に設定されたモデルをエンドポイントで使用するために必要なアクセス許可が含まれています。これらのアクセス許可により SageMaker 、 は Elastic Network Interface を作成し、 で実行されているモデルコンテナにアタッチできますVPC。独自のIAMポリシーを使用する場合は、VPCアクセス用に設定されたモデルを使用するには、そのポリシーに次のアクセス許可を追加する必要があります。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ec2:DescribeVpcEndpoints", "ec2:DescribeDhcpOptions", "ec2:DescribeVpcs", "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeNetworkInterfaces", "ec2:DeleteNetworkInterfacePermission", "ec2:DeleteNetworkInterface", "ec2:CreateNetworkInterfacePermission", "ec2:CreateNetworkInterface" ], "Resource": "*" } ] }

SageMakerFullAccess 管理ポリシーの詳細については、「AWS マネージドポリシー: AmazonSageMakerFullAccess」を参照してください。

ルートテーブルの設定

エンドポイントルートテーブルのDNSデフォルト設定を使用して、標準の Amazon S3 URLs ( などhttp://s3-aws-region.amazonaws.com/amzn-s3-demo-bucket) が解決されるようにします。DNS デフォルト設定を使用しない場合は、モデル内のデータの場所を指定URLsするために使用する が、エンドポイントルートテーブルを設定して解決していることを確認します。VPC エンドポイントルートテーブルの詳細については、「Amazon VPCユーザーガイド」の「ゲートウェイエンドポイントのルーティング」を参照してください。

の外部リソースに接続する VPC

インターネットアクセスがないVPCように を設定する場合、 を使用するモデルには、 の外部にあるリソースへのアクセス権VPCがありませんVPC。モデルが 外のリソースにアクセスする必要がある場合はVPC、次のいずれかのオプションを使用してアクセスを提供します。

  • モデルがインターフェイスVPCエンドポイントをサポートする AWS サービスにアクセスする必要がある場合は、そのサービスに接続するエンドポイントを作成します。インターフェイスエンドポイントをサポートするサービスのリストについては、「Amazon VPC ユーザーガイド」のVPC「エンドポイント」を参照してください。インターフェイスVPCエンドポイントの作成の詳細については、「Amazon VPCユーザーガイド」の「インターフェイスVPCエンドポイント (AWS PrivateLink)」を参照してください。

  • モデルがインターフェイスVPCエンドポイントをサポートしていない AWS サービスまたは 外のリソースにアクセスする必要がある場合は AWS、NATゲートウェイを作成し、アウトバウンド接続を許可するようにセキュリティグループを設定します。のNATゲートウェイの設定についてはVPC、Amazon Virtual Private Cloud Cloud ユーザーガイドの「シナリオ 2: パブリックサブネットとプライベートサブネット (NAT) VPC を使用する」を参照してください。