針對執行個體啟動問題進行故障診斷
下列問題會導致您無法啟動執行個體。
無效裝置名稱
描述
當您嘗試啟動新的執行個體時,發生 Invalid device name
錯誤。device_name
原因
如果您在嘗試啟動執行個體時收到此錯誤,表示在請求中為一個或多個磁碟區指定的裝置名稱具有無效的裝置名稱。可能的原因包括:
-
選取的 AMI 可能正在使用裝置名稱。
-
裝置名稱可能會保留給根磁碟區。
-
裝置名稱可能會用於請求中的其他磁碟區。
-
裝置名稱可能對作業系統無效。
解決方案
要解決問題:
超過執行個體限制
描述
當您嘗試啟動新的執行個體或重新啟動已停止的執行個體時,發生 InstanceLimitExceeded
錯誤。
原因
當您嘗試啓動新的執行個體或重新啟動已停止的執行個體時,如果發生 InstanceLimitExceeded
錯誤,就表示已達到您在區域中可啟動的執行個體數目限制。當您建立 AWS 帳戶時,我們會設定您在每一區域中可執行之執行個體數目的預設限制。
解決方案
您可以要求提高每一區域的執行個體限制。如需詳細資訊,請參閱 Amazon EC2 服務配額。
執行個體容量不足
描述
當您嘗試啟動新的執行個體或重新啟動已停止的執行個體時,發生 InsufficientInstanceCapacity
錯誤。
原因
當您嘗試啓動執行個體或重新啟動已停止的執行個體時,如果發生此錯誤,就表示 AWS 目前可用的隨需容量不足,無法滿足您的請求。
解決方案
若要解決問題,請嘗試下列方法:
目前並不支援要求的組態。請查看文件以了解支援的組態。
描述
當您嘗試啟動新的執行個體時,由於不支援執行個體組態,因此發生 Unsupported
錯誤。
原因
錯誤訊息會提供其他詳細資訊。例如,指定的區域或可用區域可能不支援執行個體類型或執行個體購買選項。
解決方案
請嘗試不同的執行個體組態。若要搜尋符合您需求的執行個體類型,請參閱 尋找 Amazon EC2 執行個體類型。
立刻終止執行個體
描述
您的執行個體會從 pending
狀態進入 terminated
狀態。
原因
下列是執行個體為什麼可能會立即終止的幾個原因:
-
您已超過 EBS 磁碟區限制。如需詳細資訊,請參閱 執行個體磁碟區限制。
-
EBS 快照已損毀。
-
根 EBS 磁碟區已加密,且您沒有存取 KMS 金鑰進行解密的許可。
-
AMI 的區塊型設備映射中指定的快照已加密,且您沒有存取 KMS 金鑰進行解密的許可,或您無法存取 KMS 金鑰來加密還原的磁碟區。
-
您用來啟動執行個體的執行個體存放區後端 AMI 缺少必要部分 (an image.part.xx 檔案)。
如需詳細資訊,請使用下列其中一種方法來查明終止原因。
使用 Amazon EC2 主控台查明終止原因
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 -
在導覽窗格中,選擇 Instances (執行個體),然後選取該執行個體。
-
在第一個索引標籤上,找出狀態轉換原因旁的原因。
使用 AWS Command Line Interface 查明終止原因
-
使用 describe-instances 命令並指定執行個體 ID。
aws ec2 describe-instances --instance-id
instance_id
-
檢閱命令傳回的 JSON 回應,並記下
StateReason
回應元素中的值。下列程式碼區塊顯示
StateReason
回應元素的範例。"StateReason": { "Message": "Client.VolumeLimitExceeded: Volume limit exceeded", "Code": "Server.InternalError" },
如何使用 AWS CloudTrail 查明終止原因
如需詳細資訊,請參閱 AWS CloudTrail 使用者指南中的 使用 CloudTrail 事件歷史記錄檢視事件。
解決方案
根據終止原因,採取下列其中一項動作:
-
Client.VolumeLimitExceeded: Volume limit exceeded
— 刪除未使用的磁碟區。您可以提交申請來增加磁碟區容量上限。 -
Client.InternalError: Client error on launch
— 確保您有存取用於解密和加密磁碟區之 AWS KMS keys 所需的許可。如需詳細資訊,請參閱 AWS Key Management Service 開發人員指南中的 在 AWS KMS 中使用金鑰政策。
許可不足
描述
當您嘗試啟動新的執行個體時發生 "
錯誤,並且啟動失敗。errorMessage
": "You are not authorized to
perform this operation."
原因
如果在嘗試啟動執行個體時發生此錯誤,表示您沒有啟動執行個體所需的 IAM 許可。
可能缺少的許可包括:
-
ec2:RunInstances
-
iam:PassRole
可能還缺少其他許可。如需啟動執行個體所需的許可清單,請參閱 範例:使用 EC2 啟動執行個體精靈 和 啟動執行個體 (RunInstances) 下方的 IAM 政策範例。
解決方案
要解決問題:
-
如果您以 IAM 使用者身分提出請求,請確認您具有以下許可:
-
ec2:RunInstances
使用萬用字元資源 (「*」) -
iam:PassRole
與資源符合角色 ARN (例如,arn:aws:iam::999999999999:role/ExampleRoleName
)
-
-
如果沒有上述許可,請編輯與 IAM 角色或使用者關聯的 IAM 政策,以新增缺少的必要許可。
如果您的問題尚未解決,且繼續收到啟動失敗錯誤,可以解碼錯誤中包含的授權失敗訊息。解碼的訊息包含 IAM 政策中缺少的許可。如需詳細資訊,請參閱在 EC2 執行個體啟動期間收到 "UnauthorizedOperation" 錯誤後如何解碼授權失敗訊息?