

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

# Amazon VPC のリソースへのアクセス権を SageMaker AI コンパイルジョブに付与する
<a name="neo-vpc"></a>

**注記**  
コンパイルジョブの場合は、デフォルトのテナンシー VPC でのみサブネットを設定できます。このデフォルトでは、ジョブが共有ハードウェアで実行されます。VPC のテナンシー属性の詳細については、「[ハードウェア専有インスタンス](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-instance.html)」を参照してください。

## Amazon VPC アクセス用にコンパイルジョブを設定する
<a name="neo-vpc-configure"></a>

プライベート VPC 内のサブネットとセキュリティグループを指定するには、[https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateCompilationJob.html](https://docs.aws.amazon.com/sagemaker/latest/APIReference/API_CreateCompilationJob.html) API の `VpcConfig` リクエストパラメータを使用するか、SageMaker AI コンソールでコンパイルジョブを作成する際に、この情報を指定します。SageMaker AI Neo は、この情報を使用してネットワークインターフェイスを作成し、コンパイルジョブにアタッチします。ネットワークインターフェイスは、インターネットに接続されていない VPC 内のネットワーク接続をコンパイルジョブに提供します。また、コンパイルジョブがプライベート VPC 内のリソースに接続できるようにします。次に、`VpcConfig` への呼び出しに含める `CreateCompilationJob` パラメータの例を示します。

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

## SageMaker AI コンパイル用のプライベート VPC を設定する
<a name="neo-vpc-vpc"></a>

プライベート VPC を SageMaker AI コンパイルジョブ用に設定する場合、次のガイドラインに従います。VPC のセットアップについては、Amazon VPC ユーザーガイドの「[VPC とサブネットの使用](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/working-with-vpcs.html)」を参照してください。**

**Topics**
+ [サブネットに十分な IP アドレスを確保する](#neo-vpc-ip)
+ [Amazon S3 VPC エンドポイントを作成する](#neo-vpc-s3)
+ [カスタムエンドポイントポリシーを使用して S3 へのアクセスを制限する](#neo-vpc-policy)
+ [ルートテーブルの設定](#neo-vpc-route-table)
+ [VPC セキュリティグループを設定する](#neo-vpc-groups)

### サブネットに十分な IP アドレスを確保する
<a name="neo-vpc-ip"></a>

VPC サブネットには、コンパイルジョブの各インスタンスにプライベート IP アドレスが少なくとも 2 つ必要です。詳細については、*Amazon VPC ユーザーガイド*の [IPv4 用の VPC とサブネットのサイズ設定](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_Subnets.html#vpc-sizing-ipv4)を参照してください。

### Amazon S3 VPC エンドポイントを作成する
<a name="neo-vpc-s3"></a>

インターネットへのアクセスをブロックするように VPC を設定した場合、アクセスを許可する VPC エンドポイントを作成しない限り、SageMaker Neo はモデルを含む Amazon S3 バケットに接続できません。VPC エンドポイントを作成することで、データとモデルのアーティファクトを保存するバケットに SageMaker Neo コンパイルジョブがアクセスできるようにします。プライベート VPC からのリクエストのみに S3 バケットへのアクセスを許可するカスタムポリシーも作成することをお勧めします。詳細については、[Amazon S3 のエンドポイント](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-endpoints-s3.html)を参照してください。

**S3 VPC エンドポイントを作成するには**

1. Amazon VPC コンソールの [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/) を開いてください。

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

1. **[Service Name]** (サービス名) で、**com.amazonaws.*region*.s3** を検索します。この場合、*region* は VPC が存在するリージョンの名前になります。

1. **[Gateway]** (ゲートウェイ) タイプを選択します。

1. **[VPC]**] で、エンドポイントに使用する VPC を選択します。

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

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

### カスタムエンドポイントポリシーを使用して S3 へのアクセスを制限する
<a name="neo-vpc-policy"></a>

デフォルトのエンドポイントポリシーでは、VPC のすべてのユーザーまたはサービスに対して S3 へのフルアクセスが許可されています。S3 へのアクセスを詳細に制限するには、カスタムエンドポイントポリシーを作成します。詳細については、「[Amazon S3 のエンドポイントポリシー](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-s3.html#vpc-endpoints-policies-s3)」を参照してください。バケットポリシーを使って、S3 バケットへのアクセスを Amazon VPC からのトラフィックのみに制限することもできます。詳細については、「[Amazon S3 バケットポリシー](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-endpoints-s3.html#vpc-endpoints-s3-bucket-policies)」を参照してください。以下は、カスタマイズしたそのポリシーの例です。

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Deny",
            "Principal": {
                "AWS": "*"
            },
            "Action": "s3:GetObject",
            "Resource": [
                "arn:aws:s3:::your-sample-bucket",
                "arn:aws:s3:::your-sample-bucket/*"
            ],
            "Condition": {
                "StringNotEquals": {
                    "aws:SourceVpce": [
                        "vpce-1a2b3c4d"
                    ]
                }
            }
        }
    ]
}
```

------

#### Amazon VPC で実行されるコンパイルジョブのアクセス許可をカスタム IAM ポリシーに追加する
<a name="neo-vpc-custom-iam"></a>

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

------
#### [ JSON ]

****  

```
{"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",
                "ec2:ModifyNetworkInterfaceAttribute"
            ],
            "Resource": "*"
        }
    ]
}
```

------

`SageMakerFullAccess` 管理ポリシーの詳細については、「[AWS マネージドポリシー: AmazonSageMakerFullAccess](security-iam-awsmanpol.md#security-iam-awsmanpol-AmazonSageMakerFullAccess)」を参照してください。

### ルートテーブルの設定
<a name="neo-vpc-route-table"></a>

エンドポイントルートテーブルのデフォルトの DNS 設定を使って、標準 Amazon S3 URL (例えば、`http://s3-aws-region.amazonaws.com/amzn-s3-demo-bucket`) が解決されるようにします。デフォルトの DNS 設定を使用しない場合は、エンドポイントルートテーブルを設定することで、コンパイルジョブのデータの場所の指定に使用する URL が解決されるようにします。VPC エンドポイントルートテーブルについては、Amazon VPC ユーザーガイドの「[ゲートウェイエンドポイントのルーティング](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpce-gateway.html#vpc-endpoints-routing)」を参照してください。**

### VPC セキュリティグループを設定する
<a name="neo-vpc-groups"></a>

コンパイルジョブのセキュリティグループで、Amazon S3 Amazon VPC エンドポイントおよびコンパイルジョブに使用されるサブネット CIDR 範囲へのアウトバウンド通信を許可する必要があります。詳細については、「[セキュリティグループのルール](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/VPC_SecurityGroups.html#SecurityGroupRules)」と「[VPC エンドポイントでサービスへのアクセスを制御する](https://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-endpoints-access.html)」を参照してください。