本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AMI 選擇順序
AWS Batch 會使用下列優先順序來決定運算資源的 Amazon Machine Image (AMI)。了解此順序可協助您了解為什麼要為您的運算環境 AWS Batch 選擇特定的 AMI:
-
啟動範本覆寫 AMI - 如果啟動執行個體的啟動範本覆寫具有映像,則會使用其映像。
-
運算資源映像 ID (已棄用) - 如果設定,則會使用此運算環境 AMI。注意:已棄用欄位;請改用 ec2Configuration.imageIdOverride。
-
EC2 組態映像 ID 覆寫 - 如果指定,則會使用此欄位中的映像。
-
啟動範本 AMI - 如果運算環境具有與映像相關聯的啟動範本,則會使用此映像。
-
AWS 預設 AMI - 如果未設定上述任何項目, 會根據 AWS Batch ec2Configuration 中指定的 imageType 選取預設 AMI。
注意
ec2Configuration 參數是選用的。省略時, 會根據運算環境中啟動的執行個體類型, AWS Batch 自動選取適當的 ec2Configuration 和預設 AMI。
注意
此 AMI 選擇順序不適用於 Fargate 運算環境。
從最高到最低優先順序的 AMI 選擇順序
-
啟動範本覆寫 AMI (最高優先順序)
API 欄位:
overrides[].launchTemplateId具有目標執行個體類型參考: LaunchTemplateSpecification
覆寫範本以特定執行個體類型為目標,並提供比預設啟動範本更精細的控制。它們優先於所有其他符合執行個體類型的 AMI 規格。
{ "computeResources": { "launchTemplate": { "launchTemplateId": "lt-default", "overrides": [ { "launchTemplateId": "lt-gpu-optimized", "targetInstanceTypes": ["p3.2xlarge", "g4dn.xlarge"] } ] } } } -
運算資源映像 ID
API 欄位:
computeResources.imageId您可以直接在運算環境層級指定 AMI。這優先於 EC2 組態覆寫和啟動範本 (覆寫範本除外)。
在具有多個 EC2 組態的運算環境中 (例如
ECS_AL2023和ECS_AL2023_NVIDIA),此處指定的 AMI ID 用於所有 EC2 組態。重要
imageId欄位已棄用。請ec2Configuration.imageIdOverride改用 。{ "computeResources": { "imageId": "ami-12345678", "instanceTypes": ["m5.large", "m5.xlarge"] } } -
EC2 組態映像 ID 覆寫
API 欄位:
computeResources.ec2Configuration[].imageIdOverrideEC2 組態提供影像類型特定的覆寫。此設定會覆寫指定映像類型的預設 AMI 選擇和啟動範本 AMI。
{ "computeResources": { "ec2Configuration": [ { "imageType": "ECS_AL2", "imageIdOverride": "ami-87654321" } ] } } -
啟動範本 AMI
API 欄位:在 Amazon EC2 啟動範本
ImageId中參考: 搭配 使用 Amazon EC2 啟動範本 AWS Batch
當您在啟動範本中指定 AMI 時,其優先順序高於預設 AMI 選擇,但會由優先順序較高的設定覆寫。
// EC2 Launch Template content { "LaunchTemplateName": "my-batch-template", "LaunchTemplateData": { "ImageId": "ami-12345678" } }由 AWS Batch 啟動範本參考:
// Batch Launch Template content { "computeResources": { "launchTemplate": { "launchTemplateName": "my-batch-template", "version": "$Latest" } } } -
AWS 預設 AMI (最低優先順序)
API 欄位:由 決定
computeResources.ec2Configuration[].imageType未指定自訂 AMI 時, 會根據映像類型 AWS Batch 自動選取最新核准的 Amazon ECS 最佳化 AMI。
注意
ec2Configuration為選用。如果ec2Configuration未指定, AWS Batch 將選取適當的預設 AMI。{ "computeResources": { "ec2Configuration": [ { "imageType": "ECS_AL2023" } ] } }