View a markdown version of this page

使用 Systems Manager 公有參數來參考最新的 AMI - Amazon Elastic Compute Cloud

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

使用 Systems Manager 公有參數來參考最新的 AMI

AWS Systems Manager 為 維護的公有 AMIs 提供公有參數 AWS。您可在啟動執行個體時使用公有參數來確保您使用的是最新 AMI。例如,公有參數 /aws/service/ami-amazon-linux-latest/al2023-ami-kernel-default-arm64 可在所有區域中使用,並且一律指向指定區域中適用於 arm64 架構的 Amazon Linux 2023 AMI 最新版本。

公有參數可從以下路徑取得:

  • Linux/aws/service/ami-amazon-linux-latest

  • Windows/aws/service/ami-windows-latest

如需詳細資訊,請參閱「AWS Systems Manager 使用者指南」中的使用公有參數

尋找公有 AMI 的 SSM 參數

當您描述公有 AMI 時,回應會在 PublicSsmParameterName 欄位中包含 associated AWS Systems Manager (SSM) 參數。使用此參數來識別一律指向該 AMI 最新版本的 SSM 參數。

Console
尋找公有 AMI 的 SSM 參數
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在導覽窗格中,選擇 AMI

  3. 選取公有 AMI。

  4. 詳細資訊索引標籤上,尋找公有 SSM 參數名稱

AWS CLI
尋找公有 AMI 的 SSM 參數

使用 describe-images 命令。回應包含具有相關聯 SSM 參數的公AMIs PublicSsmParameterName 欄位。

aws ec2 describe-images \ --image-ids ami-0abcdef1234567890

下列範例輸出顯示 PublicSsmParameterName 欄位。為了簡潔起見,省略某些欄位。

{ "Images": [ { "ImageId": "ami-0abcdef1234567890", "Name": "al2023-ami-2023.7.20260601.0-kernel-6.1-x86_64", ... "PublicSsmParameterName": "aws/service/ami-amazon-linux-latest/al2023-ami-kernel-default-x86_64" } ] }
PowerShell
尋找公有 AMI 的 SSM 參數

使用 Get-EC2Image cmdlet。回應包含具有相關聯 SSM 參數的公AMIs PublicSsmParameterName 欄位。

Get-EC2Image -ImageId ami-0abcdef1234567890

下列範例輸出顯示 PublicSsmParameterName 欄位。為了簡潔起見,省略某些欄位。

ImageId : ami-0abcdef1234567890 Name : al2023-ami-2023.7.20260601.0-kernel-6.1-x86_64 ... PublicSsmParameterName : aws/service/ami-amazon-linux-latest/al2023-ami-kernel-default-x86_64

列示 Amazon Linux AMI

AWS CLI
列出目前區域中AMIs AWS

請使用下面的 get-parameters-by-path 命令。--path 參數的值為 Linux AMI 特定。

aws ssm get-parameters-by-path \ --path /aws/service/ami-amazon-linux-latest \ --query "Parameters[].Name"
PowerShell
列出目前區域中AMIs AWS

使用 Get-SSMParametersByPath cmdlet。

Get-SSMParametersByPath ` -Path "/aws/service/ami-amazon-linux-latest" | ` Sort-Object Name | Format-Table Name

列示 Windows AMI

AWS CLI
列出目前 AWS 區域中AMIs

請使用下面的 get-parameters-by-path 命令。--path 參數的值為 Windows AMI 特定。

aws ssm get-parameters-by-path \ --path /aws/service/ami-windows-latest \ --query "Parameters[].Name"
PowerShell
列出目前 AWS 區域中AMIs

使用 Get-SSMParametersByPath cmdlet。

Get-SSMParametersByPath ` -Path "/aws/service/ami-windows-latest" | ` Sort-Object Name | Format-Table Name

使用公有參數啟動執行個體

如需在啟動執行個體時指定公有參數,請使用下列語法:resolve:ssm:public-parameter,其中 resolve:ssm 是標準字首,而 public-parameter 是公有參數的路徑和名稱。

AWS CLI
使用公有參數啟動執行個體

請使用 --image-id 選項並搭配 run-instances 命令。此範例指定映像 ID 的 Systems Manager 公有參數,以使用最新 Amazon Linux 2023 AMI 啟動執行個體

--image-id resolve:ssm:/aws/service/ami-amazon-linux-latest/al2023-ami-kernel-default-x86_64
PowerShell
使用公有參數啟動執行個體

使用 New-EC2Instance cmdlet 搭配 -ImageId 參數。此範例指定映像 ID 的 Systems Manager 公有參數,以使用最新 AMI for Windows Server 2022 啟動執行個體

-ImageId "resolve:ssm:/aws/service/ami-windows-latest/Windows_Server-2022-English-Full-Base"

如需使用 Systems Manager 參數的更多範例,請參閱使用 AWS Systems Manager 參數存放區查詢最新的 Amazon Linux AMI IDs,以及使用 AWS Systems Manager 參數存放區查詢最新的 Windows AMI