本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
AMIIDs在啟動範本中使用 AWS Systems Manager 參數而不是
本節說明如何建立啟動範本,以指定 AWS Systems Manager 參考 Amazon 機器映像 (AMI) ID 的參數。您可以使用存儲在同一個參數 AWS 帳戶,從另一個參數共享 AWS 帳戶,或者為由AMI維護的公共參數使用 AWS。
透過 Systems Manager 參數,您可以更新 Auto Scaling 群組以使用新的,AMIIDs而不需要在每次 AMI ID 變更時建立新的啟動範本或新版本的啟動範本。這些IDs可能會定期更改,例如使用最新AMI的操作系統或軟件更新進行更新時。
您可以使用「參數存放區」功能來建立、更新或刪除自己的「Systems Manager」參數 AWS Systems Manager。您必須先建立 Systems Manager 參數,才能在啟動範本中使用該參數。若要開始使用,請使用資料類型建立參數aws:ec2:image
,並針對其值輸入的 ID AMI。AMIID 具有表單ami-
,例如,<identifier>
ami-123example456
。正確的 AMI ID 取決於執行個體類型以及 AWS 區域 您要在中啟動 Auto Scaling 群組的執行個體類型。
若要取得有關為 AMI ID 建立有效參數的詳細資訊,請參閱〈建立 Systems Manager 參數〉。
建立指定參數的啟動範本 AMI
若要建立指定參數的啟動範本AMI,請使用下列其中一種方法:
若要在啟動範本中從「參數存放區」指定參數,您必須擁有指定參數的ssm:GetParameters
權限。使用啟動範本的任何人也需要ssm:GetParameters
權限,才能驗證參數值。若要取得更多資訊,請參閱《使用指南》中的〈使用IAM策略限制 Systems Manager 參數的存AWS Systems Manager 取〉。
確認啟動範本取得正確的 AMI ID
使用指describe-launch-template-versions令並包括將參數解析為實際 AMI ID 的--resolve-alias
選項。
aws ec2 describe-launch-template-versions --launch-template-name
my-template-for-auto-scaling
\ --versions$Default
--resolve-alias
此範例會傳回的 AMI ID ImageId
。使用此啟動範本啟動執行個體時,AMIID 會解析為ami-0ac394d6a3example
。
{
"LaunchTemplateVersions": [
{
"LaunchTemplateId": "lt-089c023a30example",
"LaunchTemplateName": "my-template-for-auto-scaling",
"VersionNumber": 1,
"CreateTime": "2022-12-28T19:52:27.000Z",
"CreatedBy": "arn:aws:iam::123456789012:user/Bob",
"DefaultVersion": true,
"LaunchTemplateData": {
"ImageId": "ami-0ac394d6a3example",
"InstanceType": "t2.micro",
}
}
]
}
相關資源
如需有關在啟動範本中指定 Systems Manager 參數的詳細資訊,請參閱 Amazon 使用EC2者指南中的使用 Systems Manager 參數而非 AMI ID。
若要取得有關使用 Systems Manager 參數的更多資訊,請參閱「Systems Manager」文件中的下列參考資料。
-
如需如何查詢 Amazon 支援的AMI公用參數的詳細資訊EC2,請參閱呼叫AMI公用參數。
-
如需與其他 AWS 帳戶共用參數或透過共用參數的相關資訊 AWS Organizations,請參閱使用共用參數。
-
如需監控參數是否成功建立的相關資訊,請參閱 Amazon 機器映像的原生參數支援IDs。
限制
使用「Systems Manager」參數時,請注意下列限制:
-
Amazon EC2 Auto Scaling 僅支援指定AMIIDs為參數。
-
不支援使用指定 Systems Manager 參數的啟動範本,使用以屬性為基礎的執行個體類型選擇來建立或更新混合執行個體群組。
-
如果您的 Auto Scaling 群組使用指定 Systems Manager 參數的啟動範本,您將無法使用所需組態或使用略過比對來啟動執行個體重新整理。
-
每次呼叫建立或更新自動擴展群組時,Amazon EC2 Auto Scaling 都會解析啟動範本中的 Systems Manager 參數。如果您使用進階參數或更高的輸送量限制,則頻繁呼叫參數存放區 (亦即
GetParameters
作業) 可能會增加 Systems Manager 的成本,因為每次參數存放區API互動都會產生費用。如需詳細資訊,請參閱 AWS Systems Manager 定價。