本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
若要控制對資料和處理任務的存取,請使用私有子網路建立 Amazon VPC。如需 VPC 在建立和設定方面的資訊,請參閱 Amazon VPC 使用者指南中 Amazon VPC 入門的相關文章。
您可以使用 VPC 流量日誌,監控所有傳出傳入處理容器的網路流量。如需詳細資訊,請參閱 Amazon VPC 使用者指南中的 VPC 流量日誌。
本文件說明如何為處理任務新增 Amazon VPC 組態。
設定處理任務以存取 Amazon VPC
您可以在 VPC 內指定子網路和安全群組 ID 來設定處理任務。您不需要為處理容器指定子網路。Amazon SageMaker AI 會自動從 Amazon ECR 提取處理容器。如需此處理容器的更多相關資訊,請參閱使用 SageMaker Processing 的資料轉換工作負載。
建立處理任務時,您可以使用 SageMaker AI 主控台或 API 在 VPC 中指定子網路和安全群組。
若要使用 API,請在 CreateProcessingJob 作業的 NetworkConfig.VpcConfig
參數中指定子網路和安全群組 ID。SageMaker AI 使用子網路和安全群組詳細資訊來建立網路介面,並將其連接到處理容器。網路介面在您的 VPC 內提供具有網路連線的處理容器。這可讓處理任務連線至您的 VPC 中存在的資源。
以下為您包含在對 CreateProcessingJob
作業的呼叫內的 VpcConfig
參數的範例:
VpcConfig: {
"Subnets": [
"subnet-0123456789abcdef0",
"subnet-0123456789abcdef1",
"subnet-0123456789abcdef2"
],
"SecurityGroupIds": [
"sg-0123456789abcdef0"
]
}
設定您的私有 VPC 以進行 SageMaker AI 處理
為 SageMaker AI 處理任務設定私有 VPC 時,請使用下列準則。如需如何設定 VPC 的相關資訊,請參閱 Amazon VPC 使用者指南中的使用 VPC 和子網路的相關文章。
主題
確保子網路擁有充足的 IP 地址
您的 VPC 子網路應至少具有兩個私有 IP 地址,以供處理任務中的各個執行個體使用。如需詳細資訊,請參閱 Amazon VPC 使用者指南中的IPv4 的 VPC 與子網路的大小調整的相關文章。
建立 Amazon S3 VPC 端點
如果您將您的 VPC 設定為讓處理容器無法存取網際網路,除非您建立的 VPC 端點允許存取,否則也會無法連線至包含資料的 Amazon S3 儲存貯體。建立 VPC 端點可讓您的處理容器存取您存放資料的儲存貯體。建議也建立一個自訂政策,只允許來自您私有 VPC 的請求存取您的 S3 儲存貯體。如需詳細資訊,請參閱 Amazon S3 的端點。
建立 S3 VPC 端點:
-
在 https://console.aws.amazon.com/vpc/
開啟 Amazon VPC 主控台。 -
在導覽窗格中,選擇端點,然後選擇建立端點
-
對於服務名稱),選擇 com.amazonaws.
region
.s3,其中region
是您的 VPC 所在區域的名稱。 -
對於 VPC,選擇您要用於此端點的 VPC。
-
針對設定路由表,選取要供端點使用的路由表。每個 VPC 服務會自動將路由新增到您選擇的路由表,以便將任何 S3 流量導向新的端點。
-
對於政策,選擇完整存取,以允許 VPC 內的任何使用者或服務完整存取 S3 服務。選擇自訂,以進一步限制存取權。如需相關資訊,請參閱使用自訂端點政策來限制存取 S3。
使用自訂端點政策來限制存取 S3
預設端點政策可讓您的 VPC 中的任何使用者或服務完整存取 S3。若要進一步限制存取 S3,請建立自訂端點政策。如需詳細資訊,請參 Amazon S3 使用端點政策。您也可以使用儲存貯體政策,以限制只有來自 Amazon VPC 流量才能存取您的 S3 儲存貯體。如需資訊,請參閱使用 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 URL (例如 http://s3-aws-region.amazonaws.com/amzn-s3-demo-bucket
)。若未使用預設的 DNS 設定,請將端點路由表設定妥當,確保您用來指定處理任務的資料所在位置的 URL 可解析。如需 VPC 端點路由表的相關資訊,請參閱 Amazon VPC 使用者指南中的閘道端點路由的相關文章。
設定 VPC 安全群組
在分散式處理中,必須允許同一處理任務內不同容器之間的通訊。若要執行此操作,請為安全群組設定規則,允許相同安全群組成員彼此間的傳入連線。如需詳細資訊,請參閱安全群組規則。
連線至您的 VPC 外部的資源
如果您要將模型連接到模型執行的 VPC 以外的資源,請執行下列其中一個動作:
-
連線至其他 AWS 服務 – 如果您的模型需要存取支援界面 Amazon VPC 端點的 AWS 服務,請建立端點以連線至該服務。如需支援界面端點的服務清單,請參閱 AWS PrivateLink 《 使用者指南》中的AWS 與 整合的 服務 AWS PrivateLink。如需有關建立介面 VPC 端點的資訊,請參閱 AWS PrivateLink 《 使用者指南》中的使用介面 VPC 端點存取 AWS 服務。
-
透過網際網路連線到資源 - 如果您的模型在沒有可存取網際網路的 Amazon VPC 中的執行個體子網路上執行,則模型將無法存取網際網路上的資源。如果您的模型需要存取不支援介面 VPC 端點的 AWS 服務,或存取 外部的資源 AWS,請確定您在私有子網路中執行模型,該子網路使用公有子網路中的公有 NAT 閘道存取網際網路。在私有子網路中執行模型之後,請設定您的安全群組和網路存取控制清單 (NACL),以允許從私有子網路到公用子網路中公用 NAT 閘道的輸出連線。如需詳細資訊,請參閱 Amazon VPC 使用者指南中的 NAT 閘道。
使用 CloudWatch Logs 和指標監控 Amazon SageMaker Processing 任務
Amazon SageMaker AI 提供 Amazon CloudWatch logs和指標來監控訓練任務。CloudWatch 提供 CPU、GPU、記憶體、GPU 記憶體和磁碟指標,以及事件記錄。如需監控 Amazon SageMaker 執行任務的更多相關資訊,請參閱使用 Amazon CloudWatch 監控 Amazon SageMaker AI 的指標 Amazon CloudWatch和SageMaker AI 任務和端點指標。