將 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 模式的組態。

SageMaker Studio VPC 圖表說明了僅 VPC 模式的使用情況。

使用 VPC only 模式的要求

當您選擇時 VpcOnly,請依照下列步驟執行:

  1. 您必須僅使用私有子網路。您無法在 VpcOnly 模式中使用公用子網路。

  2. 確保您的子網路具有所需數量的 IP 地址。每位使用者預期所需的 IP 地址數可能會因使用案例而有所不同。我們建議每位使用者介於 2 至 4 個 IP 地址之間。Studio 網域的總 IP 地址容量是建立網域時所提供之每個子網路的可用 IP 地址總和。確定您的 IP 位址用量不超過您提供的子網路數量所支援的容量。此外,使用分散在許多可用區域的子網路也有助於提高 IP 位址的可用性。如需詳細資訊,請參閱 VPC 和 IPv4 的子網路大小調整

    注意

    針對訓練任務,您只能使用執行個體在共用硬體執行所在的預設租用 VPC 來設定子網路。如需 VPC 租用屬性的詳細資訊,請參閱專用執行個體

  3. 警告

    使用 VpcOnly 模式時,您部分擁有網域的網路組態。我們建議您採用安全性最佳作法,將最低權限許可套用至安全群組規則所提供的輸入和輸出存取。過於寬鬆的輸入規則組態可能會讓具有 VPC 存取權的使用者,在沒有驗證的情況下與其他使用者設定檔的應用程式互動。

    使用允許下列流量的輸入和輸出規則,來設定一或多個安全群組:

    為每個使用者設定檔建立不同的安全性組,並從同一個安全群組新增輸入存取權。我們不建議針對使用者設定檔重複使用網域層級安全群組。如果網域層級安全群組允許對本身進行輸入存取,則網域中的所有應用程式都可以存取網域中的所有其他應用程式。

  4. 如果您想要允許網際網路存取,則必須使用可存取網際網路的 NAT 閘道,例如透過網際網路閘道

  5. 若要移除網際網路存取,請建立介面 VPC 端點 (AWS PrivateLink),以允許 Studio 使用對應的服務名稱存取下列服務。您還必須將您的 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 連線是否被封鎖。Jupyter 在幕後使用 websocket。如果 KernelGateway 應用程式在 InService 中,則 JupyterServer 可能無法連線至 KernelGateway。打開系統終端機時也應該會看到此問題。