停用 Amazon EC2 AMI - Amazon Elastic Compute Cloud

停用 Amazon EC2 AMI

可以停用 AMI 以防止其用於執行個體啟動。無法從已停用的 AMI 中啟動新執行個體。可以重新啟用已停用的 AMI,以便在執行個體啟動時再次使用它。

可以同時停用私有和公有 AMI。

如需減少很少使用但需長期保留的停用 EBS 支援的 AMI 的儲存費用,您可封存其關聯的快照。如需詳細資訊,請參閱「Amazon EBS 使用者指南」中的檔案 Amazon EBS 快照

AMI 停用運作方式

警告

停用 AMI 會移除其所有啟動權限。

停用 AMI 時:
  • AMI 的狀態會變更為 disabled

  • 無法共用已停用的 AMI。如果 AMI 為公有或先前被共用,則會將其設為私有。如果與 AWS 帳戶、組織或組織單位共用 AMI,則他們將無法存取已停用的 AMI。

  • 依預設,已停用的 AMI 不會出現在 DescribeImages API 呼叫中。

  • 已停用的 AMI 不會出現在我所擁有主控台篩選條件下。若要尋找已停用的 AMI,請使用已停用的映像主控台篩選條件。

  • 對於 EC2 主控台中的執行個體啟動,不可選擇已停用的 AMI。例如,在啟動執行個體精靈中或建立啟動範本時,已停用的 AMI 不會出現在 AMI 目錄中。

  • 啟動服務 (例如啟動範本和 Auto Scaling 群組) 可以繼續參考已停用的 AMI。從已停用的 AMI 中進行後續執行個體啟動將會失敗,因此建議您更新啟動範本和 Auto Scaling 群組以僅參考可用的 AMI。

  • 先前使用隨後被停用的 AMI 來啟動的 EC2 執行個體不會受到影響,而且可以停止、啟動和重新啟動。

  • 您無法刪除與已停用的 AMI 相關聯的快照。嘗試刪除關聯的快照會導致snapshot is currently in use錯誤。

重新啟用 AMI 時:
  • AMI 的狀態會變更為 available,而且可用來啟動執行個體。

  • 可以共用 AMI。

  • 由於停用 AMI 而無法對其進行存取的 AWS 帳戶、組織和組織單位不會自動重新獲得存取權,但可以再次與他們共用 AMI。

成本

當您停用 AMI 時,不會刪除 AMI。如果 AMI 是 EBS 後端 AMI,您會繼續支付 AMI 的 EBS 快照。如果想要保留 AMI,可以透過封存快照來降低儲存成本。如需詳細資訊,請參閱「Amazon EBS 使用者指南」中的檔案 Amazon EBS 快照。如果不想保留 AMI 及其快照,必須取消註冊 AMI 並刪除快照。如需更多詳細資訊,請參閱 取消註冊 AMI

必要條件

若要停用或重新啟用 AMI,您必須是 AMI 的擁有者。

所需的 IAM 許可

若要停用和重新啟用 AMI,您必須具有下列 IAM 許可:

  • ec2:DisableImage

  • ec2:EnableImage

停用 AMI

可以使用 EC2 主控台或 AWS Command Line Interface (AWS CLI) 來停用 AMI。您必須是 AMI 擁有者才能執行此程序。

Console
停用 AMI
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在左側導覽窗格中選擇 AMI

  3. 從篩選條件列中,選擇 Owned by me (由我擁有)。

  4. 選取 AMI,然後選擇動作停用 AMI。可以選取多個 AMI,以便一次停用。

  5. 停用 AMI 視窗中,選擇停用 AMI

AWS CLI
停用 AMI

使用下列 disable-image 命令。

aws ec2 disable-image --image-id ami-0abcdef1234567890
PowerShell
停用 AMI

使用 Disable-EC2Image cmdlet。

Disable-EC2Image -ImageId ami-0abcdef1234567890

描述已停用的 AMI

可以使用 EC2 主控台或 AWS CLI 來檢視已停用的 AMI。

您必須是 AMI 擁有者,才能檢視已停用的 AMI。因為已停用的 AMI 會設為私有,如果您不是擁有者,就無法檢視已停用的 AMI。

Console
若要檢視已停用的 AMI
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在左側導覽窗格中選擇 AMI

  3. 從篩選列中,選擇已停用的映像

    已停用映像篩選條件。
AWS CLI

依預設,當您描述所有 AMI 時,停用的 AMI 不會包括在結果中。如需在結果中包括停用的 AMI,請指定 --include-disabled 選項。若已停用 AMI,AMI 的 State 欄位為 disabled

如需在為帳戶描述所有 AMI 時包括已停用的 AMI

使用下列 describe-images 命令。

aws ec2 describe-images \ --owners 123456789012 \ --include-disabled
如需列出帳戶的停用 AMI

使用下列 describe-images 命令。

aws ec2 describe-images \ --owners self \ --include-disabled \ --filters Name=state,Values=disabled \ --query Images[].ImageId \ --output text

下列為範例輸出。

ami-0abcdef1234567890
如需描述 AMI 的狀態

使用下列 describe-images 命令。若輸出中不存在 DeprecationTime,不會棄用 AMI,或者將其設定為在未來日期棄用。

aws ec2 describe-images \ --image-ids ami-0abcdef1234567890 \ --query Images[].State \ --output text

下列為範例輸出。

disabled
PowerShell

依預設,當您描述所有 AMI 時,停用的 AMI 不會包括在結果中。若要在結果中包含已停用的 AMI,請指定 -IncludeDisabled 參數。若已停用 AMI,AMI 的 State 欄位為 disabled

如需列出帳戶的停用 AMI

使用 Get-EC2Image cmdlet。

(Get-EC2Image ` -Owner self ` -IncludeDisabled $true | Where-Object {$_.State -eq "disabled"}).ImageId

下列為範例輸出。

ami-0abcdef1234567890
如需描述 AMI 的狀態

使用 Get-EC2Image cmdlet。

(Get-EC2Image -ImageId ami-0abcdef1234567890).State.Value

下列為範例輸出。

disabled

重新啟用已停用的 AMI

可以重新啟用已停用的 AMI。您必須是 AMI 擁有者才能執行此程序。

Console
重新啟用已停用的 AMI
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在左側導覽窗格中選擇 AMI

  3. 從篩選列中,選擇已停用的映像

  4. 選取 AMI,然後選擇動作啟用 AMI。可以選取多個 AMI,一次重新啟用多個 AMI。

  5. 啟用 AMI 視窗中,選擇啟用

AWS CLI
重新啟用已停用的 AMI

使用下列 enable-image 命令。

aws ec2 enable-image --image-id ami-0abcdef1234567890
PowerShell
重新啟用已停用的 AMI

使用 Enable-EC2Image cmdlet。

Enable-EC2Image -ImageId ami-0abcdef1234567890