禁用 Amazon EC2 AMI - Amazon Elastic Compute Cloud

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

禁用 Amazon EC2 AMI

您可以禁用AMI以防止將其用於實例啟動。您無法從已停用的執行個體啟動新的執行個體AMI。您可以重新啟用禁用的功能,以AMI便在實例啟動時再次使用它。

警告

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

當一個AMI被禁用時:

  • AMI的狀態會變更為disabled

  • 禁用的AMI無法共享。如果AMI是公開的或先前共用的,則會將其設為私有。如果與 AWS 帳戶、組織或組織單位共用,則他們將失去對禁用者的存取權AMI。AMI

  • 根據預設,通DescribeImagesAPI話中AMI不會顯示停用。

  • 已停用AMI不會顯示在 [由我擁有] 主控台篩選器下方。若要尋找停用AMIs,請使用 [已停用的映像] 主控台篩選

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

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

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

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

當重新啟用時:AMI

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

  • 可AMI以共用。

  • AWS 帳戶、組織和組織單位在停用AMI時失去存取權限的組織和組織單位不會自動重新獲得存取權,但AMI可以再次與他們共用。

您可以禁用私人和公共AMIs。

您可以封存與已停用的EBS備份AMIs相關聯的快照。這可以幫助您降低需要長期保留的罕見使用AMIs相關的存儲成本。如需詳細資訊,請參閱 Amazon EBS使用者指南中的封存 Amazon EBS 快照

成本

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

必要條件

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

必要的IAM權限

若要停用並重新啟用AMI,您必須具備下列IAM權限:

  • ec2:DisableImage

  • ec2:EnableImage

禁用 AMI

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

Console
若要停用 AMI
  1. 在打開 Amazon EC2 控制台https://console.aws.amazon.com/ec2/

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

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

  4. 選取AMI,然後選擇 [動作]、[停用] AMI。您可以選擇多個AMIs以一次禁用。

  5. 在「用AMI」視窗中,選擇「停用」AMI。

AWS CLI
若要停用 AMI

使用指disable-image令並指定的 ID AMI。

aws ec2 disable-image --image-id ami-1234567890abcdef0

預期的輸出結果

{ "Return": "true" }

描述已禁用 AMIs

您可以在EC2主控台AMIs中檢視已停用,並使用 AWS CLI.

您必須是AMI擁有者才能檢視停用AMIs。由於禁用AMIs被設為私人,因此AMIs如果您不是所有者,則無法查看禁用。

Console
若要檢視已停用 AMIs
  1. 在打開 Amazon EC2 控制台https://console.aws.amazon.com/ec2/

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

  3. 在篩選列中,選擇 [停用的影像]。

    已停用的影像篩選器。
AWS CLI

默認情況下,當您使用命describe-images令來描述所有內容時AMIs,禁用AMIs不會出現在結果中。這是因為預設值為 --no-include-disabled。若要在結果AMIs中包含禁用,您必須指定--include-disabled參數。

描述全部AMIs時包含所有已停用的步驟 AMIs

除了所有其他--include-disabled參數之外,使用指describe-images令並指定要擷取停AMIs用的參數AMIs。或者,指--owners self定僅擷取AMIs您擁有的。

aws ec2 describe-images \ --region us-east-1 \ --owners self --include-disabled

如果您指定停用的 IDAMI,但未指定--include-disabled,則會在結果中傳回停用AMI的 ID。

aws ec2 describe-images \ --region us-east-1 \ --image-ids ami-1234567890EXAMPLE
僅擷取已停用 AMIs

指定 --filters Name=state,Values=disabled。還必須指定 --include-disabled,否則會收到錯誤。

aws ec2 describe-images \ --include-disabled \ --filters Name=state,Values=disabled

範例輸出

State欄位會顯示的狀態AMI。 disabled表示已AMI停用。

{ "Images": [ { "VirtualizationType": "hvm", "Description": "Provided by Red Hat, Inc.", "PlatformDetails": "Red Hat Enterprise Linux", "EnaSupport": true, "Hypervisor": "xen", "State": "disabled", "SriovNetSupport": "simple", "ImageId": "ami-1234567890EXAMPLE", "DeprecationTime": "2023-05-10T13:17:12.000Z" "UsageOperation": "RunInstances:0010", "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "SnapshotId": "snap-111222333444aaabb", "DeleteOnTermination": true, "VolumeType": "gp2", "VolumeSize": 10, "Encrypted": false } } ], "Architecture": "x86_64", "ImageLocation": "123456789012/RHEL-8.0.0_HVM-20190618-x86_64-1-Hourly2-GP2", "RootDeviceType": "ebs", "OwnerId": "123456789012", "RootDeviceName": "/dev/sda1", "CreationDate": "2019-05-10T13:17:12.000Z", "Public": false, "ImageType": "machine", "Name": "RHEL-8.0.0_HVM-20190618-x86_64-1-Hourly2-GP2" } ] }

重新啟用已禁用 AMI

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

Console
若要重新啟用已停用 AMI
  1. 在打開 Amazon EC2 控制台https://console.aws.amazon.com/ec2/

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

  3. 在篩選列中,選擇 [停用的影像]。

  4. 選取AMI,然後選擇 [動作] > [啟用] AMI。您可以選取多個AMIs以一次重新啟用多AMIs個功能。

  5. 在「用AMI」視窗中,選擇「啟用」。

AWS CLI
若要重新啟用已停用 AMI

使用指enable-image令並指定的 ID AMI。

aws ec2 enable-image --image-id ami-1234567890abcdef0

預期的輸出結果

{ "Return": "true" }