使用 AMI 原始伺服器追蹤 AMI 的原始伺服器 - Amazon Elastic Compute Cloud

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

使用 AMI 原始伺服器追蹤 AMI 的原始伺服器

AMI 上階透過傳回其所有上階 AMI IDs 和區域,協助您追蹤 AMIs 的原始伺服器。當您建立或複製 AMI 時,新的 AMI 會保留其來源 (父系) AMI 的 ID 和區域。這可讓您將 AMIs 鏈追蹤回根 AMI。

主要優點

使用 AMI 原始伺服器可協助您:

  • 追蹤 AMI 衍生產品以確保符合內部政策。

  • 在舊版 AMIs 中發現安全問題時,識別潛在易受攻擊的 AMI。

  • 維持跨多個區域的 AMI 原始伺服器可見性。

AMI 原始伺服器的運作方式

AMI 原始伺服器會識別用來建立指定 AMI 的父系 AMI、父系的父系,以此類推,直到根 AMI。以下是其運作方式:

  • 每個 AMI 會顯示其來源 (父) AMI 的 ID 和區域。

  • 從您選取的 AMI 開始,祖系項目清單會依序顯示每個父系 AMI。

  • 原始項目清單會追蹤回 ,直到到達根 AMI。根 AMI 是下列其中一項:

    • 來自已驗證供應商的公有 AMI (由其擁有者別名識別,即 amazonaws-marketplace)。

    • 沒有記錄祖先的 AMI。例如,使用 RegisterImage 直接從一組快照建立 AMI 時,沒有要追蹤的來源 AMI,與從執行個體建立 AMI 時不同。

    • 來源 AMI 來自不同分割區的 AMI。

    • 清單中的第 50 個 AMI。原始清單中AMIs 數目上限為 50。

考量事項

  • 來源 AMI 的 ID 和區域僅適用於使用 CreateImageCopyImageCreateRestoreImageTask 建立AMIs。

  • 對於使用 CreateImage 建立AMIs (從執行個體建立 AMI),來源 AMI ID 是用來啟動執行個體的 AMI ID。

  • 來源 AMI 資訊不適用於:

    • 使用 RegisterImage 建立AMIs,因為它們是從快照建立的。

    • 對於某些較舊AMIs。

  • 來源 AMI 資訊會在下列情況下保留:

    • AMIs會跨區域複製。

    • 已取消註冊 (刪除) 來源 AMIs。

    • 您無法存取來源 AMIs。

  • 每個前代清單限制為 50 AMIs。

檢視 AMI 原始伺服器

您可以使用下列方法檢視 AMI 的祖系。

Console
檢視 AMI 的原始伺服器
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

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

  3. 選取 AMI,然後選擇 AMI 原始標籤

  4. AMI 祖先項目表列出祖先清單中的所有 AMIs。

    • AMI ID – 原始清單中每個 AMI 的識別符。資料表中的第一個項目是選取的 AMI,後面接著其祖先。

    • 來源 AMI ID – 建立 AMI ID 欄中 AMI 的 AMI ID。破折號 (-) 表示 AMI 原始清單的結尾。

    • 來源 AMI 區域 – AWS 區域 來源 AMI 所在的 。

    • 上階層級 – 上階清單中的位置,其中:

      • 0 (輸入 AMI) 表示您想知道其前代的所選 AMI。

      • 數字增加會顯示較舊的祖先。

      • n (原始 AMI) 表示根 AMI,數字表示前者清單過去的時間。

    • 建立日期 – 建立 AMI 時,採用 UTC 格式。

    • 擁有者別名 – AMI 擁有者的別名 (例如 amazon)。破折號 (-) 表示 AMI 沒有擁有者別名。

AWS CLI
檢視 AMI 的原始伺服器

使用 get-image-ancestry 命令並指定 AMI ID。

aws ec2 get-image-ancestry \ --image-id ami-1111111111EXAMPLE \ --region us-east-1

以下為範例輸出。輸出會依祖先順序列出 AMIs:第一個項目是指定的 (輸入) AMI,後面接著其父系、父系的父系等,並以根 AMI 結尾。

{ "ImageAncestryEntries": [ { "CreationDate": "2025-01-17T18:37:50.000Z", "ImageId": "ami-1111111111EXAMPLE", // Input AMI "SourceImageId": "ami-2222222222EXAMPLE", "SourceImageRegion": "us-east-1" }, { "CreationDate": "2025-01-17T18:37:50.000Z", "ImageId": "ami-2222222222EXAMPLE", // Parent AMI "SourceImageId": "ami-3333333333EXAMPLE", "SourceImageRegion": "us-east-1" }, ... { "CreationDate": "2025-01-17T18:37:50.000Z", "ImageId": "ami-8888888888EXAMPLE", // Root AMI "ImageOwnerAlias": "aws-marketplace", "SourceImageId": "ami-9999999999EXAMPLE", "SourceImageRegion": "us-east-2" } ] }
PowerShell
檢視 AMI 的原始伺服器

使用 Get-EC2ImageAncestry cmdlet。

Get-EC2ImageAncestry -ImageId ami-1111111111EXAMPLE

以下為範例輸出。輸出會依祖先順序列出 AMIs:第一個項目是指定的 (輸入) AMI,後面接著其父系、父系的父系等,並以根 AMI 結尾。

ImageAncestryEntries : { @{ CreationDate = "2025-01-17T18:37:50.000Z" ImageId = "ami-1111111111EXAMPLE" # Input AMI SourceImageId = "ami-2222222222EXAMPLE" SourceImageRegion = "us-east-1" }, @{ CreationDate = "2025-01-17T18:37:50.000Z" ImageId = "ami-2222222222EXAMPLE" # Parent AMI SourceImageId = "ami-3333333333EXAMPLE" SourceImageRegion = "us-east-1" }, ... @{ CreationDate = "2025-01-17T18:37:50.000Z" ImageId = "ami-8888888888EXAMPLE" # Root AMI ImageOwnerAlias = "aws-marketplace" SourceImageId = "ami-9999999999EXAMPLE" SourceImageRegion = "us-east-2" } }

識別來源 AMI

如果您只需要識別用來建立 AMI 的直接父系 (來源) AMI,您可以使用下列方法。

Console
識別用來建立所選 AMI 的來源 AMI
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

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

  3. 選取 AMI 以檢視詳細資訊。

    來源 AMI 資訊於下列欄位顯示:來源 AMI ID來源 AMI 區域

AWS CLI
識別用來建立指定 AMI 的來源 AMI

使用 describe-images 命令。

aws ec2 describe-images \ --region us-east-1 \ --image-ids ami-0abcdef1234567890 \ --query "Images[].{ID:SourceImageId,Region:SourceImageRegion}"

以下為範例輸出。

[ { "ID": "ami-0abcdef1234567890", "Region": "us-west-2" } }
PowerShell
識別用來建立指定 AMI 的來源 AMI

使用 Get-EC2Image cmdlet。

Get-EC2Image -ImageId ami-0abcdef1234567890 | Select SourceImageId, SourceImageRegion

以下為範例輸出。

SourceImageId SourceImageRegion ------------- ----------------- ami-0abcdef1234567890 us-west-2