VPC 内の Studio ノートブックを外部リソースに接続する - Amazon SageMaker AI

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

VPC 内の Studio ノートブックを外部リソースに接続する

次のトピックでは、VPC 内の Studio ノートブックを外部リソースに接続する方法について説明します。

インターネットとのデフォルトの通信

デフォルトでは、SageMaker Studio は、SageMaker AI によって管理される VPC を介したインターネットとの通信を可能にするネットワークインターフェイスを提供します。Amazon S3 や CloudWatch などの AWS サービスへのトラフィックは、インターネットゲートウェイを通過します。SageMaker API および SageMaker AI ランタイムにアクセスするトラフィックも、インターネットゲートウェイを経由します。ドメインと Amazon EFS ボリューム間のトラフィックは、Studio にオンボーディングした際、または CreateDomain API を呼び出した際に指定した VPC を経由します。デフォルト設定は以下の図のようになります。

インターネットへの直接アクセスの使用を描いた SageMaker Studio VPC の図

インターネットとの VPC only 通信

SageMaker AI が Studio ノートブックにインターネットアクセスを提供しないようにするには、VPC onlyネットワークアクセスタイプを指定してインターネットアクセスを無効にします。Studio にオンボードする際、または CreateDomain API を呼び出す際に、このネットワークアクセスタイプを指定します。これにより、次の条件を満たさない限り、Studio ノートブックを実行できなくなります。

  • VPC に SageMaker API とランタイムへのインターフェイスエンドポイントがあるか、インターネットにアクセスできる NAT ゲートウェイがある

  • セキュリティグループでアウトバウンド接続が許可されている

次の図は、VPC 専用モードを使用するための設定を示しています。

VPC 専用モードの使用を描いた SageMaker Studio VPC の図

VPC only モードを使用するための要件

VpcOnly を選択した場合は、次の手順に従います。

  1. プライベートサブネットのみを使用する必要があります。パブリックサブネットは、VpcOnly モードでは使用できません。

  2. サブネットに必要な IP アドレス数があることを確認してください。ユーザー 1 人あたりに必要な IP アドレスの数は、ユースケースによって異なる場合があります。ユーザー 1 人につき 2~4 個の IP アドレスを推奨します。Studio ドメインの合計 IP アドレス数は、ドメインの作成時に提供された各サブネットで使用可能な IP アドレスの合計です。IP アドレスの使用量が、提供したサブネットの数でサポートされる容量を超えないように注意します。さらに、多数のアベイラビリティゾーンに分散されたサブネットを使用すると、IP アドレスの可用性が向上します。詳細については、「IPv4 用の VPC とサブネットのサイズ設定」を参照してください。

    注記

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

  3. 警告

    VpcOnly モードを使用すると、ドメインのネットワーク設定の一部を所有することになります。セキュリティのベストプラクティスとして、セキュリティグループのルールが提供するインバウンドアクセスとアウトバウンドアクセスに最小特権のアクセス許可を適用することをお勧めします。過度に許可されるインバウンドルール設定では、VPC にアクセスできるユーザーが認証なしで他のユーザープロファイルのアプリケーションとやり取りできる可能性があります。

    以下のトラフィックを許可するインバウンドルールとアウトバウンドルールを使用して、1 つ以上のセキュリティグループを設定します。

    ユーザープロファイルごとに個別のセキュリティグループを作成し、同じセキュリティグループからのインバウンドアクセスを追加します。ドメインレベルのセキュリティグループをユーザープロファイルに再利用することはお勧めしません。ドメインレベルのセキュリティグループがそれ自体へのインバウンドアクセスを許可すると、ドメイン内のすべてのアプリケーションがドメイン内のその他のすべてのアプリケーションにアクセスできるようになります。

  4. インターネットアクセスを許可する場合は、インターネットゲートウェイなどを経由してインターネットにアクセスできる NAT ゲートウェイを使用する必要があります。

  5. インターネットアクセスを削除するには、インターフェイス VPC エンドポイント (PrivateLink) を作成して、Studio が対応するサービス名で次のサービスにアクセスできるようにします。AWS PrivateLink また、VPC のセキュリティグループをこれらのエンドポイントに関連付ける必要があります。

    • SageMaker API : com.amazonaws.region.sagemaker.api

    • SageMaker AI ランタイム: com.amazonaws.region.sagemaker.runtime。Studio ノートブックを実行し、モデルをトレーニングおよびホストするために必要です。

    • Amazon S3: com.amazonaws.region.s3

    • SageMaker プロジェクトを使用する場合: com.amazonaws.region.servicecatalog

    • その他必要な AWS サービス。

    SageMaker Python SDK を使用してリモートトレーニングジョブを実行する場合は、次の Amazon VPC エンドポイントも作成する必要があります。

    • AWS Security Token Service: com.amazonaws.region.sts

    • Amazon CloudWatch: com.amazonaws.region.logs。 これは、SageMaker Python SDK がリモートトレーニングジョブのステータスを取得できるようにするために必要です Amazon CloudWatch。

注記

VPC モードで顧客が作業する場合、会社のファイアウォールが原因となって SageMaker Studio または JupyterServer と KernelGateway 間に接続の問題が発生する場合があります。ファイアウォールの背後から SageMaker Studio を使用している際にこれらの問題のいずれかが発生した場合は、次の点を確認してください。

  • Studio URL がネットワーク許可リストに含まれていることをチェックする。

  • WebSocket 接続がブロックされていないことをチェックする。WebSocket は Jupyter 内部で使用されます。KernelGateway アプリケーションが InService になっていると、JupyterServer が KernelGateway に接続できない場合があります。この問題は、システムターミナルが開いている場合にも発生します。