跳至內容

為什麼無法終止我的 EC2 執行個體?

2 分的閱讀內容
0

我想終止我的 Amazon Elastic Compute Cloud (Amazon EC2) 執行個體。

解決方法

**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤,請參閱AWS CLI 錯誤疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本

您的 Amazon EC2 執行個體可能因下列原因而無法終止。

執行個體的停止保護已開啟

當停止保護已開啟時,您無法終止 EC2 執行個體。若要檢查停止保護是否已開啟並將其關閉,您可以使用 AWS CLI 或 Amazon EC2 主控台。

使用 AWS CLI

若要檢查 EC2 執行個體是否已開啟停止保護,請執行下列 describe-instance-attribute 命令:

aws ec2 describe-instance-attribute --instance-id i-1234567890 --attribute disableApiStop

如果輸出傳回正確,則會為執行個體開啟停止保護。

若要關閉停止保護,以便可以終止執行個體,請執行下列 modify-instance-attribute 命令:

aws ec2 modify-instance-attribute --instance-id i-1234567890 --no-disable-api-stop

使用 Amazon EC2 主控台

若要從 Amazon EC2 主控台檢查停止保護狀態,請完成下列步驟:

  1. 開啟 Amazon EC2 console (Amazon EC2 主控台)。
  2. 選擇 Actions (動作)。
  3. 選擇 Instance settings (執行個體設定)。
  4. 選擇 Change stop protection (變更停止保護)。

如果選取 Enable (啟用),則清除核取方塊以關閉停止保護。

執行個體的終止保護已開啟

終止保護已開啟時,您無法終止 EC2 執行個體。若要檢查終止保護是否已開啟並將其關閉,您可以使用 AWS CLI 或 Amazon EC2 主控台。

使用 AWS CLI

若要檢查 EC2 執行個體是否已開啟終止保護,請執行下列 describe-instance-attribute 命令:

aws ec2 describe-instance-attribute --instance-id i-1234567890 --attribute disableApiTermination

如果輸出傳回正確,則會為執行個體開啟終止保護。

若要關閉終止保護,以便可以終止執行個體,請執行下列 modify-instance-attribute 命令:

aws ec2 modify-instance-attribute --instance-id i-1234567890 --no-disable-api-termination

使用 Amazon EC2 主控台

若要從 Amazon EC2 主控台檢查終止保護狀態,請完成下列步驟:

  1. 開啟 Amazon EC2 console (Amazon EC2 主控台)。
  2. 選擇 Actions (動作)。
  3. 選擇 Instance settings (執行個體設定)。
  4. 選擇 Change termination protection (變更終止保護)。

如果終止保護已開啟,請選擇 Yes, Disable (是,停用),然後選擇 Save (儲存) 以關閉終止保護。

附加至 IAM 實體的 IAM 政策不包括終止執行個體的權限

若要終止執行個體,AWS Identity and Access Management (IAM) 實體的 IAM 政策必須明確允許 TerminateInstances API 動作。

範例政策:

{  
    "Version": "2012-10-17",  
    "Statement": [  
        {  
            "Effect": "Allow",  
            "Action": "ec2:TerminateInstances",  
            "Resource": [  
                "arn:aws:ec2:us-west-2:123456789012:instance/i-0abcd1234efgh5678",  
                "arn:aws:ec2:us-west-2:123456789012:instance/i-1wxyz9876lmno4321"  
            ]  
        }  
    ]  
}

如果 AmazonEC2FullAccessAdministratorAccess AWS 受管政策已附加至 IAM 實體,則該實體具有 TerminateInstances 動作的權限。如果 AmazonEC2FullAccessAdministratorAccess 並未附加至 IAM 實體,則必須編輯客戶管理政策以允許 TerminateInstances 動作。或者,建立允許 TerminateInstances 動作的客戶管理政策

執行個體屬於 Auto Scaling 群組的一部分

當您終止屬於 Auto Scaling 群組一部分的執行個體時,Auto Scaling 群組可能會啟動取代執行個體。取代執行個體允許 Auto Scaling 群組維持預期的執行個體計數。若要終止執行個體並調整 Auto Scaling 群組大小,請在 AWS CLI 中執行 terminate-instance-in-auto-scaling-group 命令。

相關資訊

終止 Amazon EC2 執行個體

AWS 官方已更新 2 年前