Amazon のリソースへのアクセスを SageMaker トレーニングジョブに許可する VPC - Amazon SageMaker

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

Amazon のリソースへのアクセスを SageMaker トレーニングジョブに許可する VPC

注記

トレーニングジョブでは、インスタンスが共有ハードウェアVPCで実行されるデフォルトのテナンシーを持つサブネットのみを設定できます。のテナンシー属性の詳細についてはVPCs、「専有インスタンス」を参照してください。

Amazon VPC Access のトレーニングジョブを設定する

トレーニングジョブへのアクセスを制御するには、インターネットにアクセスできないプライベートサブネットVPCを持つ Amazon で実行します。

で実行するトレーニングジョブを設定するには、サブネットとセキュリティグループ VPCを指定しますIDs。トレーニングジョブのコンテナにサブネットを指定する必要はありません。Amazon は、Amazon からトレーニングコンテナイメージ SageMaker を自動的にプルしますECR。

トレーニングジョブを作成するときは、Amazon SageMaker コンソールまたは VPCを使用して、 のサブネットとセキュリティグループを指定できますAPI。

を使用するにはAPI、 CreateTrainingJob operation の VpcConfigパラメータIDsでサブネットとセキュリティグループを指定します。 はサブネットとセキュリティグループの詳細 SageMaker を使用してネットワークインターフェイスを作成し、トレーニングコンテナにアタッチします。ネットワークインターフェイスは、トレーニングコンテナに 内のネットワーク接続を提供しますVPC。これにより、トレーニングジョブは に存在するリソースに接続できますVPC。

以下は、 CreateTrainingJobオペレーションの呼び出しに含める VpcConfig パラメータの例です。

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

SageMaker トレーニングVPC用にプライベートを設定する

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

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

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

VPC サブネットには、トレーニングジョブ内のインスタンスごとに少なくとも 2 つのプライベート IP アドレスが必要です。詳細については、「Amazon VPCユーザーガイド」のVPC「」および「 のサブネットのサイズ設定IPv4」を参照してください。

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

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

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

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

  3. サービス名 については、com.amazonaws を検索します。region.s3、ここで region は、 が存在するリージョンの名前ですVPC。

  4. [ゲートウェイタイプ] を選択します。

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

  6. [Configure route tables] で、エンドポイントで使用するルートテーブルを選択します。このVPCサービスでは、選択した各ルートテーブルに、S3 トラフィックを新しいエンドポイントにポイントするルートが自動的に追加されます。

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

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

デフォルトのエンドポイントポリシーでは、 内の任意のユーザーまたはサービスに対して S3 へのフルアクセスを許可しますVPC。S3 へのアクセスを詳細に制限するには、カスタムエンドポイントポリシーを作成します。詳細については、「Amazon S3 のエンドポイントポリシー」を参照してください。また、バケットポリシーを使用して、Amazon からのトラフィックのみに S3 バケットへのアクセスを制限することもできます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/*" ] } ] }

ルートテーブルの設定

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

VPC セキュリティグループを設定する

分散型トレーニングでは、同じトレーニングジョブ内の異なるコンテナ間の通信を許可する必要があります。そのためには、同じセキュリティグループのメンバー間のインバウンド接続を許可するセキュリティグループのルールを設定します。EFAが有効なインスタンスの場合、インバウンド接続とアウトバウンド接続の両方で、同じセキュリティグループからのすべてのトラフィックが許可されていることを確認します。詳細については、「Amazon Virtual Private Cloud ユーザーガイド」の「セキュリティグループのルール」を参照してください。

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

インターネットアクセスがないVPCように を設定する場合、 の外部リソースにアクセスVPCできない を使用するトレーニングジョブVPC。トレーニングジョブで 以外のリソースにアクセスする必要がある場合はVPC、次のいずれかのオプションを使用してアクセスできるようにします。

CloudWatch ログとメトリクスを使用して Amazon SageMaker トレーニングジョブをモニタリングする

Amazon SageMaker は、トレーニングジョブをモニタリングするための Amazon CloudWatch ログとメトリクスを提供します。 はCPU、、GPU、メモリ、GPUメモリ、ディスクメトリクス、およびイベントログ記録 CloudWatch を提供します。Amazon SageMaker トレーニングジョブのモニタリングの詳細については、Amazon SageMaker で Amazon をモニタリングするためのメトリクス CloudWatch「」および「」を参照してくださいSageMaker ジョブとエンドポイントメトリクス