Connect 到您的 VPC SageMaker 內 - Amazon SageMaker

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Connect 到您的 VPC SageMaker 內

您可以透過虛擬私有雲 (VPC) 中的介面端點直接連線至 SageMaker API 或 Amazon SageMaker 執行階段,而不是透過網際網路連線。當您使用 VPC 介面端點時,VPC 與 SageMaker API 或執行階段之間的通訊會在網路中完全安全地進行。 AWS

SageMaker 透過 VPC 介面端點 Connect

SageMaker API 和 SageMaker 執行階段支援提供支援的 Amazon V irtual Private Cloud (Amazon VPC) 界面端點。AWS PrivateLink每個 VPC 端點皆會由一個或多個在您的 VPC 子網路上具私有 IP 地址的彈性網路介面來表示。例如,VPC 內的應用程式用 AWS PrivateLink 來與 SageMaker 執行階段通訊。 SageMaker運行時依次與 SageMaker 端點進行通信。使用 AWS PrivateLink 可讓您從 VPC 中叫用 SageMaker 端點,如下圖所示。

VPC 用 AWS PrivateLink 於與 SageMaker 端點通訊。

VPC 介面端點不需使用網際網路閘道、NAT 裝置、VPN 連線或連線, AWS PrivateLink 即可直接將您的 VPC 連線至 SageMaker API 或 SageMaker AWS Direct Connect 執行階段。VPC 中的實例不需要連接到公共互聯網即可與 SageMaker API 或 SageMaker 運行時進行通信。

您可以使用 SageMaker or AWS Command Line Interface (AWS CLI) 建立 AWS PrivateLink 介面端點,以連接至 SageMaker執行階段 AWS Management Console 或執行階段。如需指示,請參閱使用介面 VPC 端點存取 AWS 服務

如果您尚未為 VPC 端點啟用私人網域名稱系統 (DNS) 主機名稱,則在建立 VPC 端點之後,請指定 SageMaker API 或 SageMaker 執行階段的網際網路端點 URL。使用指 AWS CLI 令指定endpoint-url參數的範例程式碼如下。

aws sagemaker list-notebook-instances --endpoint-url VPC_Endpoint_ID.api.sagemaker.Region.vpce.amazonaws.com aws sagemaker list-training-jobs --endpoint-url VPC_Endpoint_ID.api.sagemaker.Region.vpce.amazonaws.com aws sagemaker-runtime invoke-endpoint --endpoint-url https://VPC_Endpoint_ID.runtime.sagemaker.Region.vpce.amazonaws.com \ --endpoint-name Endpoint_Name \ --body "Endpoint_Body" \ --content-type "Content_Type" \ Output_File

如果您為 VPC 端點啟用私人 DNS 主機名稱,則不需要指定端點 URL,因為預設主機名稱 (https://api.sagemaker.Region.amazon.com) 會解析為您的 VPC 端點。同樣地,預設的 SageMaker 執行階段 DNS 主機名稱 (https://runtime.sagemaker. 區域. Amazonaws.com) 也會解析為您的 VPC 端點。

SageMaker API 和 SageMaker 執行階段在所有可用 Amazon VPC 和 SageMakerares 的情 AWS 區域 況下都支援虛擬私人雲端端點。 SageMaker 支援呼叫 VPC Operations內的所有內容。如果您使用AuthorizedUrl來自 CreatePresignedNotebookInstanceUrl命令,您的流量將通過公共互聯網。您不僅可以使用 VPC 端點存取預先簽署的 URL,而且要求必須透過網際網路閘道進行。

根據預設,您的使用者可以將預先簽署的 URL 共用給公司網路以外的人員。為了提高安全性,您必須新增 IAM 許可,以限制 URL 只能在您的網路中使用。如需 IAM 許可的相關資訊,請參閱如 AWS PrivateLink 何使用 IAM

注意

為 SageMaker 執行階段服務設定 VPC 人雲端介面端點時 (https://runtime.sagemaker. Region.amazonaws.com) 時,您必須確定 VPC 介面端點已在用戶端的可用區域中啟動,以便私人 DNS 解析才能運作。否則,您可能會在嘗試解析 URL 時看到 DNS 失敗。

若要進一步了解 AWS PrivateLink,請參閱AWS PrivateLink 文件。請參閱AWS PrivateLink 定價以取得 VPC 端點的價格。若要進一步了解 VPC 與端點,請參閱 Amazon VPC。如需如何使用以身分識別為基礎的 AWS Identity and Access Management 原則限制 SageMaker API 和 SageMaker 執行階段存取權的詳細資訊,請參閱。使用以身分識別為基礎的原則控制 SageMaker API 的存取

透過 VPC 內的資源使用 SageMaker 訓練和託管

SageMaker 使用您的執行角色,從 Amazon S3 儲存貯體和 Amazon Elastic Container Registry (Amazon ECR) 下載和上傳資訊,與訓練或推論容器隔離。如果您有位於 VPC 內的資源,您仍然可以授予這些資源的 SageMaker 存取權。以下各節說明如何讓您的資源可供網路隔離或沒有網路隔離使用。 SageMaker

未啟用網路隔離

如果您尚未在訓練工作或模型上設定網路隔離,則 SageMaker 可以使用下列其中一種方法存取資源。

  • SageMaker 根據預設,訓練和部署的推論容器可以存取網際網路。 SageMaker 作為訓練和推論工作負載的一部分,容器可以存取公用網際網路上的外部服務和資源。 SageMaker 如果沒有 VPC 組態,容器將無法存取 VPC 內的資源,如下圖所示。

    SageMaker 如果沒有 VPC 配置,則無法訪問 VPC 內的資源。
  • 使用 VPC 組態透過彈性網路介面 (ENI) 與您的 VPC 內的資源進行通訊。容器與您的 VPC 中資源之間的通訊會安全地在您的 VPC 網路中進行,如下圖所示。在這種情況下,您可以管理對您的 VPC 資源和網際網路的網路存取。

    SageMaker 可以使用 VPC 配置訪問 VPC 內的資源並與其進行通信。

有網路隔離

如果您採用網路隔離,則 SageMaker 容器無法與 VPC 內的資源通訊或進行任何網路呼叫,如下圖所示。如果您提供 VPC 組態,則下載和上傳作業將透過您的 VPC 執行。如需在使用 VPC 時透過網路隔離進行託管和訓練的更多相關資訊,請參閱網路隔離

SageMaker 可以使用 VPC 配置訪問 VPC 內的資源並與其進行通信。

您可以為的 Amazon VPC 端點建立政策,以指 SageMaker 定下列項目:

  • 可執行動作的主體。

  • 可執行的動作。

  • 可供執行動作的資源。

如需詳細資訊,請參閱 Amazon VPC 使用者指南中的使用 VPC 端點控制服務的存取

注意

的聯邦資訊處理標準 (FIPS) SageMaker 執行階段端點不支援 VPC 端點原則。runtime_InvokeEndpoint

下列範例 VPC 端點原則指定允許所有具有 VPC 介面端點存取權的使用者呼叫名為的 SageMaker 託管端點。myEndpoint

{ "Statement": [ { "Action": "sagemaker:InvokeEndpoint", "Effect": "Allow", "Resource": "arn:aws:sagemaker:us-west-2:123456789012:endpoint/myEndpoint", "Principal": "*" } ] }

在這個範例中,拒絕以下各項:

  • 其他 SageMaker API 動作,例如sagemaker:CreateEndpointsagemaker:CreateTrainingJob.

  • 調用 SageMaker 託管端點以外myEndpoint的.

注意

在此範例中,使用者仍然可以從 VPC 外部採取其他 SageMaker API 動作。如需有關如何僅限於從 VPC 內進行 API 呼叫的資訊,請參閱使用以身分識別為基礎的原則控制 SageMaker API 的存取

若要為 Amazon SageMaker 功能商店建立 VPC 端點,請使用以下端點範本,取代您的 VPC_Endpoint _ID. API 和區域:

VPC_Endpoint_ID.api.featurestore-runtime.sagemaker.Region.vpce.amazonaws.com

若要透過 VPC 呼叫 SageMaker API 和執 SageMaker 行階段,您必須從 VPC 內的執行個體進行連線,或使用 AWS Virtual Private Network ()AWS VPN或將私人網路連線到 VPC。 AWS Direct Connect如需相關資訊 AWS VPN,請參閱 Amazon Virtual Private Cloud 使用者指南中的 VPN 連線。若要取得有關資訊 AWS Direct Connect,請參閱〈AWS 直 Connect 連線使用指南〉中的〈建立連線〉