在 EC2 執行個體上設定基於 CloudWatch 動作的復原 - Amazon Elastic Compute Cloud

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

在 EC2 執行個體上設定基於 CloudWatch 動作的復原

重要

本節描述如何在 EC2 執行個體上主動設定復原機制。當 AWS 偵測到導致系統狀態檢查失敗的基礎硬體或軟體問題時,這些復原機制可用於還原執行個體可用性。如果您目前在存取執行個體時遇到問題,請參閱對 EC2 執行個體進行疑難排解

如果 AWS 偵測到執行個體因基礎硬體或軟體問題而無法使用,CloudWatch 動作型復原可以透過將具有基礎問題的執行個體從主機移至不同的主機,自動還原執行個體可用性。

如果發生 CloudWatch 動作型復原, 會根據結果 AWS Health 儀板表將下列其中一個事件 AWS 傳送至您的 :

  • 成功事件:AWS_EC2_INSTANCE_AUTO_RECOVERY_SUCCESS

  • 失敗事件:AWS_EC2_INSTANCE_AUTO_RECOVERY_FAILURE

您可以設定基於 CloudWatch 動作的復原,將復原動作新增至 Amazon CloudWatch 警示。CloudWatch 動作型復原使用 StatusCheckFailed_System 指標。CloudWatch 動作型復原提供即時復原回應時間的精細程度,以及復原動作和結果的 Amazon Simple Notification Service (Amazon SNS) 通知。與簡化的自動復原相比,這些組態選項允許更快速的復原嘗試,並且更精密地控制系統狀態的檢查失敗事件回應。如需可用 CloudWatch 選項的詳細資訊,請參閱執行個體的狀態檢查

不過,只有在執行個體處於 running 狀態、 中未列出任何服務事件,且執行個體類型有可用的容量時 AWS Health 儀板表,CloudWatch 動作型復原才能運作。某些情況下,例如重大中斷,容量限制可能會導致復原嘗試失敗。如需詳細資訊,請參閱對基於 CloudWatch 動作的復原失敗進行疑難排解

警告

當 因基礎硬體或軟體問題 AWS 而復原執行個體時,請注意下列後果:儲存在揮發性記憶體 (RAM) 和執行個體儲存體磁碟區上的資料將會遺失,而且作業系統的執行時間會從零開始。為協助防範資料遺失,建議您定期建立重要資料的備份。如需有關 EC2 執行個體備份與復原最佳實務的詳細資訊,請參閱 Amazon EC2 的最佳實務

自動執行個體復原機制是為個別執行個體設計的。如需有關建置彈性系統的指引,請參閱 建置彈性系統

基於 CloudWatch 動作的復原的需求

可在符合下列條件的執行個體上啟用基於 CloudWatch 動作的復原:

執行個體類型
  • 一般用途:A1, M3, M4, M5, M5a, M5n, M5zn, M6a, M6g, M6i, M6in, M7a, M7g, M7i, M7i-flex, M8a, M8azn, M8g, M8gb, M8gn, M8i, M8i-flex, T1, T2, T3, T3a, T4g

  • 運算最佳化:C3, C4, C5, C5a, C5n, C6a, C6g, C6gn, C6i, C6in, C7a, C7g, C7gn, C7i, C7i-flex, C8a, C8g, C8gb, C8gn, C8i, C8i-flex

  • 記憶體最佳化:R3, R4, R5, R5a, R5b, R5n, R6a, R6g, R6i, R6in, R7a, R7g, R7i, R7iz, R8a, R8g, R8gb, R8gn, R8i, R8i-flex, U-3tb1, U-6tb1, U-9tb1, U-12tb1, U-18tb1, U-24tb1, U7i-6tb, U7i-8tb, U7i-12tb, U7in-16tb, U7in-24tb, U7in-32tb, U7inh-32tb, X1, X1e, X2idn, X2iedn, X2iezn, X8g, X8i

  • 加速運算:G3、G5g、Inf1、P3、VT1

  • 高效能運算:Hpc6a, Hpc7a, Hpc7g, Hpc8a

  • 裸機執行個體:上述任何具有裸機執行個體大小的執行個體類型。

  • 若在啟動時新增執行個體儲存體磁碟區:則僅支援下列執行個體類型:M3、C3、R3、X1、X1e、X2idn、X2iedn

租用
  • 共同

  • Dedicated Instance

如需詳細資訊,請參閱Amazon EC2 專用執行個體

限制

具有下列特性的執行個體不支援基於 CloudWatch 動作的復原:

  • 租用:專用主機。對於專用主機,改用專用主機自動復原

  • 聯網:使用 Elastic Fabric Adapter 的執行個體

  • 自動擴展:屬於 Auto Scaling 群組的執行個體

  • 維護:目前正在進行排程維護事件的執行個體

尋找支援的執行個體類型

您可以檢視支援基於 CloudWatch 動作的復原的執行個體類型。

Console
檢視支援基於 CloudWatch 動作的復原的執行個體類型
  1. 前往 https://console.aws.amazon.com/ec2/ 開啟 Amazon EC2 主控台。

  2. 在左側導覽窗格中選擇 Instance Types (執行個體類型)。

  3. 在篩選條件列中,新增篩選條件支援自動復原程序:是執行個體類型表格會顯示支援基於 CloudWatch 動作的復原的所有執行個體類型。

  4. (選用) 新增篩選條件以進一步限定到感興趣的特定執行個體類型。

AWS CLI
檢視支援基於 CloudWatch 動作的復原的執行個體類型

使用 describe-instance-types 命令並搭配 auto-recovery-supported 篩選條件。

aws ec2 describe-instance-types \ --filters Name=auto-recovery-supported,Values=true \ --query "InstanceTypes[*].[InstanceType]" \ --output text | sort
PowerShell
檢視支援基於 CloudWatch 動作的復原的執行個體類型

使用 Get-EC2InstanceType cmdlet 搭配 auto-recovery-supported 篩選條件。

Get-EC2InstanceType ` -Filter @{Name="auto-recovery-supported";Values="true"} | ` Select InstanceType | Sort-Object InstanceType

設定 CloudWatch 動作型復原

若要為 EC2 執行個體設定基於 CloudWatch 動作的復原,請建立 CloudWatch 警示,用於監控指定執行個體的 StatusCheckFailed_System 指標。將警示設定為在指標值為 1 時觸發,此數值表示系統狀態檢查失敗。設定警示動作,使其在觸發時自動復原執行個體。

您可以使用 Amazon EC2 主控台或 CloudWatch 主控台設定警示。有關說明,請參閱本使用者指南中的 將復原動作新增至 Amazon CloudWatch 警示,或《Amazon CloudWatch 使用者指南》中的將復原動作新增至 Amazon CloudWatch 警示

對基於 CloudWatch 動作的復原失敗進行疑難排解

若基於 CloudWatch 動作的復原未能復原您的執行個體,請考量下列問題:

  • AWS 服務事件正在執行

    CloudWatch 動作型復原不會在 AWS Health 儀板表的服務事件期間運作。您可能不會收到此類事件的復原故障通知。如需最新的服務可用性資訊,請參閱服務運作狀態頁面。

  • 容量不足

    暫時沒有足夠的替換硬體可用於移轉執行個體。

  • 已達每日復原嘗試次數上限

    執行個體已達到每日復原嘗試的最高限額。如果自動復原失敗,而原始系統狀態檢查未通過的原因判定為硬體劣化,則執行個體可能隨後會遭到淘汰。

如果執行個體系統狀態檢查在多次復原嘗試後持續未通過,請參閱對狀態檢查失敗的執行個體進行疑難排解以取得其他指引。