Amazon Machine Image ID 的原生參數支援 - AWS Systems Manager

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

Amazon Machine Image ID 的原生參數支援

建立 String 參數時,您現在可以將資料類型指定為 aws:ec2:image,以確保輸入的參數值為有效的 Amazon Machine Image (AMI) ID 格式。

支援 AMI ID 格式可讓您避免每次想要在程序中使用的 AMI 發生變更時,都使用新 ID 來更新所有指令碼和範本。您可以使用資料類型 aws:ec2:image 建立參數,並為其數值輸入 AMI 的 ID。這是您目前想要建立新執行個體的 AMI。然後,您可以在範本、命令和指令碼中參考此參數。

例如,您在執行 Amazon Elastic Compute Cloud (Amazon EC2) run-instances 命令時,可以指定包含您偏好的 AMI ID 的參數。

注意

執行此命令的使用者必須具有包含 ssm:GetParameters API 作業的 AWS Identity and Access Management (IAM) 許可,才能驗證參數值。否則,參數建立程序會失敗。

Linux & macOS
aws ec2 run-instances \ --image-id resolve:ssm:/golden-ami \ --count 1 \ --instance-type t2.micro \ --key-name my-key-pair \ --security-groups my-security-group
Windows
aws ec2 run-instances ^ --image-id resolve:ssm:/golden-ami ^ --count 1 ^ --instance-type t2.micro ^ --key-name my-key-pair ^ --security-groups my-security-group

當您使用 Amazon EC2 主控台建立執行個體時,也可以選擇偏好的 AMI。如需詳細資訊,請參閱 Amazon EC2 使用者指南AMI中的使用 Systems Manager 參數以尋找

當您需要在執行個體建立工作流程中使用不同的 AMI 時,只需要使用新的 AMI 值更新參數,Parameter Store 會再次驗證您已使用正確的格式輸入 ID。

授予許可以建立 aws:ec2:image 資料類型的參數

使用 AWS Identity and Access Management (IAM) 政策,您可以提供或限制使用者對 Parameter Store API 作業和內容的存取權。

若要建立aws:ec2:image資料類型參數,使用者必須同時擁有ssm:PutParameterec2:DescribeImages權限。

以下範例政策向使用者授予許可,為 aws:ec2:image 呼叫 PutParameter API 操作。這意味著使用者可以將資料類型 aws:ec2:image 的參數新增至系統。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ssm:PutParameter", "Resource": "*" }, { "Effect": "Allow", "Action": "ec2:DescribeImages", "Resource": "*" } ] }

AMI 格式驗證的運作方式

當您將 aws:ec2:image 指定為參數的資料類型時,Systems Manager 不會立即建立參數。它會執行非同步驗證操作,以確保參數值符合 AMI ID 的格式化要求,並且指定的 AMI 在您的 AWS 帳戶中可用。

在驗證操作完成之前,可能會產生參數版本號碼。操作可能無法完成,即使會產生參數版本編號。

若要監控您的參數是否成功建立,我們建議您使 EventBridge 用 Amazon 傳送有關您createupdate參數操作的通知給您。這些通知會報告參數操作是否成功。如果操作失敗,通知會包含錯誤訊息,指出失敗原因。

{ "version": "0", "id": "eed4a719-0fa4-6a49-80d8-8ac65EXAMPLE", "detail-type": "Parameter Store Change", "source": "aws.ssm", "account": "111122223333", "time": "2020-05-26T22:04:42Z", "region": "us-east-2", "resources": [ "arn:aws:ssm:us-east-2:111122223333:parameter/golden-ami" ], "detail": { "exception": "Unable to Describe Resource", "dataType": "aws:ec2:image", "name": "golden-ami", "type": "String", "operation": "Create" } }

如需有關在中訂閱Parameter Store事件的資訊 EventBridge,請參閱根據Parameter Store事件設定通知或觸發動作