本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立警示以停止、終止、重新啟動或復原執行個體
使用 Amazon CloudWatch 警示動作,您可以建立自動停止、終止、重新開機或復原執行個體的警示。當執行個體不再需要執行,您可以使用停止或終止動作以協助您節省成本。如果發生系統受損,您可以使用重新啟動和復原動作,自動重新啟動這些執行個體或將它們復原到新的硬體。
注意
如需 Amazon CloudWatch 警示帳單和定價資訊,請參閱 Amazon CloudWatch 使用者指南中的 CloudWatch 帳單和費用。
AWSServiceRoleForCloudWatchEvents
服務連結角色可 AWS 讓您代表執行警示動作。當您第一次在 AWS Management Console、或 IAM API 中建 CloudWatch 立警示時 AWS CLI,會為您建立服務連結角色。
在許多情況下,您可能想要自動停止或終止您的執行個體。例如,您可能有專門批次處理薪資作業或科學運算任務的執行個體,它們在執行一段時間後完成工作。您不必讓這些執行個體閒置 (及累積費用),您可以停止或終止它們以協助您節省成本。使用停止和終止警示動作的主要差別是,如果執行個體之後需要重新執行,您將可以輕鬆地啟動已停止的執行個體,而且您可以保持相同的執行個體 ID 和根磁碟區。不過,您無法啟動已終止的執行個體。相反地,您必須啟動新的執行個體。在停止或終止執行個體時,執行個體儲存體磁碟區上的資料會遺失。
您可以將停止、終止、重新啟動或復原動作新增至 Amazon EC2 每個執行個體指標上設定的任何警示,包括 Amazon CloudWatch (在AWS/EC2
命名空間中) 提供的基本和詳細監控指標,以及包含InstanceId
維度的任何自訂指標,只要其值參考有效執行中的 Amazon EC2 執行個體即可。
主控台支援
您可以使用 Amazon EC2 主控台或主控台建立警示。 CloudWatch 本文件中的程序使用 Amazon EC2 主控台。如需使用 CloudWatch 主控台的程序,請參閱 Amazon 使用 CloudWatch 者指南中的建立停止、終止、重新開機或復原執行個體的警示。
許可
您必須擁有 iam:CreateServiceLinkedRole
才能建立或修改執行 EC2 警示動作的警示。服務角色是服務擔任的 IAM 角色,可代您執行動作。IAM 管理員可以從 IAM 內建立、修改和刪除服務角色。如需詳細資訊,請參閱《IAM 使用者指南》中的建立角色以委派許可給 AWS 服務服務。
目錄
向 Amazon CloudWatch 警報添加停止操作
您可以建立警示,在符合特定閾值時停止 Amazon EC2 執行個體。例如,您可以執行開發或測試執行個體,並偶爾忘記關閉它們。您可以建立警示,在平均 CPU 使用率百分比已低於 10% 達 24 小時時觸發,以通知其為閒置且不再使用。您可以調整閾值、持續時間和期間以符合您的需求,而且您可以新增 Amazon Simple Notification Service (Amazon SNS) 通知,當觸發提醒時,您將會收到電子郵件。
使用 Amazon EBS 磁碟區做為根裝置的執行個體可以停止或終止,而使用執行個體存放區做為根裝置的執行個體只能終止。在終止或停止執行個體時,執行個體儲存體磁碟區上的資料會遺失。
建立警示以停止閒置的執行個體 (Amazon EC2 主控台)
-
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 -
在導覽窗格中,選擇執行個體。
-
選取執行個體,然後選擇 [動作]、[監控及疑難排解]、 CloudWatch [管理
或者,您可以在 Alarm status (警示狀態) 資料欄中選擇加號 ( )。
-
在「管理 CloudWatch 警示」頁面上,執行下列動作:
-
選擇 Create an alarm (建立警示)。
-
若要在警示觸發時接收電子郵件,請在 Alarm notification (警示通知) 選擇現有的 Amazon SNS 主題。您首先需要使用 Amazon SNS 主控台建立 Amazon SNS 主題。如需詳細資訊,請參閱 Amazon 簡單通知服務開發人員指南中的使用 Amazon SNS 進行 application-to-person (A2P) 簡訊。
-
切換 Alarm action (警示動作),然後選擇 Stop (停止)。
-
若要將 Group samples by (分組範例條件) 和 Type of data to sample (要作為範例的資料類型),請選擇統計資料和指標。在此範例中,選擇 Average (平均) 和 CPU Utilization (CPU 使用率)。
-
針對 Alarm When (警示時間) 和 Percent (百分比),指定指標閾值。在此範例中,指定 <= 和 10%。
-
針對 Consecutive period (連續期間) 和Period (期間),指定警示的評估期間。在此範例中,請指定 1 個每隔 5 Minute (5 分鐘) 的連續期間。
-
Amazon CloudWatch 會自動為您創建一個警報名稱。若要變更名稱,請在 Alarm name (警示名稱) 中輸入新名稱。警示名稱只能包含 ASCII 字元。
注意
您可以在建立警示之前根據自己的需求調整警示組態,也可以稍後再進行編輯。這包括指標、閾值、持續時間、動作和通知設定。不過,在您建立警示之後,以後就無法編輯其名稱。
-
選擇建立。
-
將終止動作新增至 Amazon CloudWatch 警示
您可以建立警示,在符合特定閾值時自動終止 EC2 執行個體 (前提是執行個體未啟用終止保護)。例如,您可能想要在執行個體完成作業時予以終止,而且不再需要該執行個體。如果您之後還要使用該執行個體,您應該停止而非終止執行個體。在終止執行個體時,執行個體儲存體磁碟區上的資料會遺失。如需為執行個體啟用和停用終止保護的詳細資訊,請參閱 啟用終止保護。
建立警示以終止閒置的執行個體 (Amazon EC2 主控台)
-
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 -
在導覽窗格中,選擇執行個體。
-
選取執行個體,然後選擇 [動作]、[監控及疑難排解]、 CloudWatch [管理
或者,您可以在 Alarm status (警示狀態) 資料欄中選擇加號 ( )。
-
在「管理 CloudWatch 警示」頁面上,執行下列動作:
-
選擇 Create an alarm (建立警示)。
-
若要在警示觸發時接收電子郵件,請在 Alarm notification (警示通知) 選擇現有的 Amazon SNS 主題。您首先需要使用 Amazon SNS 主控台建立 Amazon SNS 主題。如需詳細資訊,請參閱 Amazon 簡單通知服務開發人員指南中的使用 Amazon SNS 進行 application-to-person (A2P) 簡訊。
-
切換 Alarm action (警示動作),然後選擇 Terminate (終止)。
-
若要將 Group samples by (分組範例條件) 和 Type of data to sample (要作為範例的資料類型),請選擇統計資料和指標。在此範例中,選擇 Average (平均) 和 CPU Utilization (CPU 使用率)。
-
針對 Alarm When (警示時間) 和 Percent (百分比),指定指標閾值。在此範例中,指定 >= 和 10%。
-
針對 Consecutive period (連續期間) 和Period (期間),指定警示的評估期間。在此範例中,請指定 24 個每隔 1 Hour (1 小時) 的連續期間。
-
Amazon CloudWatch 會自動為您創建一個警報名稱。若要變更名稱,請在 Alarm name (警示名稱) 中輸入新名稱。警示名稱只能包含 ASCII 字元。
注意
您可以在建立警示之前根據自己的需求調整警示組態,也可以稍後再進行編輯。這包括指標、閾值、持續時間、動作和通知設定。不過,在您建立警示之後,以後就無法編輯其名稱。
-
選擇建立。
-
將重新開機動作新增至 Amazon CloudWatch 警示
您可以建立 Amazon CloudWatch 警示來監控 Amazon EC2 執行個體並自動重新啟動執行個體。重新啟動警示動作建議用於執行個體運作狀態檢查失敗 (相對的,復原警示動作則適用於系統運作狀態檢查失敗)。重新啟動執行個體等同於重新啟動作業系統。在大多數情況下,將執行個體重新開機只需要幾分鐘的時間。當您重新啟動執行個體時,它會維持在相同的實體主機上,所以您的執行個體會保有其公有 DNS 名稱、私有 IP 地址和執行個體存放區磁碟區上的任何資料。
有別於停用和重新開始執行個體,重新啟動執行個體不會啟動新的執行個體計費時段 (最少收費一分鐘)。在重新啟動執行個體時,會保留執行個體儲存體磁碟區上的資料。執行個體儲存體磁碟區必須在重新啟動後重新掛載到檔案系統中。如需詳細資訊,請參閱 重新啟動您的執行個體。
重要
為了避免重新開機和復原動作之間的競爭情況,請避免為重新開機警示和復原警示設定相同的評估期間數。我們建議您將重新開機警示設定為三個各一分鐘的評估期間。如需詳細資訊,請參閱 Amazon CloudWatch 使用者指南中的評估警示。
建立警示以重新啟動執行個體 (Amazon EC2 主控台)
-
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 -
在導覽窗格中,選擇執行個體。
-
選取執行個體,然後選擇 [動作]、[監控及疑難排解]、 CloudWatch [管理
或者,您可以在 Alarm status (警示狀態) 資料欄中選擇加號 ( )。
-
在「管理 CloudWatch 警示」頁面上,執行下列動作:
-
選擇 Create an alarm (建立警示)。
-
若要在警示觸發時接收電子郵件,請在 Alarm notification (警示通知) 選擇現有的 Amazon SNS 主題。您首先需要使用 Amazon SNS 主控台建立 Amazon SNS 主題。如需詳細資訊,請參閱 Amazon 簡單通知服務開發人員指南中的使用 Amazon SNS 進行 application-to-person (A2P) 簡訊。
-
切換 Alarm action (警示動作),然後選擇 Reboot (重新開機)。
-
若要將 Group samples by (分組範例條件) 和 Type of data to sample (要作為範例的資料類型),請選擇統計資料和指標。在此範例中,選擇 Average (平均) 和 Status check failed: instance (狀態檢查失敗:執行個體)。
-
針對 Consecutive period (連續期間) 和Period (期間),指定警示的評估期間。在此範例中,請輸入 3 個每隔 5 Minutes (5 分鐘) 的連續期間。
-
Amazon CloudWatch 會自動為您創建一個警報名稱。若要變更名稱,請在 Alarm name (警示名稱) 中輸入新名稱。警示名稱只能包含 ASCII 字元。
-
選擇建立。
-
將恢復動作添加到 Amazon CloudWatch 警報
您可以建立監控 Amazon EC2 執行個體的亞馬遜 CloudWatch 警示。如果執行個體因為基礎硬體故障或需要 AWS 參與修復的問題而受損,您可以自動復原執行個體。已終止的執行個體無法復原。復原後的執行個體與原始執行個體相同,包括執行個體 ID、私有 IP 地址、彈性 IP 地址及所有執行個體中繼資料。
CloudWatch 防止您將復原動作新增至不支援復原動作的執行個體上的警示。
當 StatusCheckFailed_System
提醒觸發且復原動作啟動時,您會收到 Amazon SNS 主題通知,這是您在建立提醒時選擇並與復原動作關聯的通知。在執行個體復原期間,執行個體會在重新啟動期間遷移,記憶體內的任何資料都將遺失。當程序完成時,會將資訊發佈到您為此警示設定的 SNS 主題。訂閱此 SNS 主題的所有使用者都會收到電子郵件通知,其中包含復原嘗試的狀態和進一步的說明。您會發現執行個體在已復原的執行個體上重新啟動。
注意
復原動作只能用於 StatusCheckFailed_System
,而非 StatusCheckFailed_Instance
。
下列為可能導致系統狀態檢查失敗的問題:
-
網路連線中斷
-
系統電力中斷
-
實體主機的軟體問題
-
實體主機上會影響網路連線的硬體問題
復原動作僅在符合某些特性的執行個體上受到支援:如需詳細資訊,請參閱 復原您的執行個體。
如果您的執行個體具有公有 IP 地址,它將在復原後保留公有 IP 地址。
重要
為了避免重新開機和復原動作之間的競爭情況,請避免為重新開機警示和復原警示設定相同的評估期間數。我們建議您將復原警示設定為兩個各一分鐘的評估期間。如需詳細資訊,請參閱 Amazon CloudWatch 使用者指南中的評估警示。
建立警示以復原執行個體 (Amazon EC2 主控台)
-
在 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 -
在導覽窗格中,選擇執行個體。
-
選取執行個體,然後選擇 [動作]、[監控及疑難排解]、 CloudWatch [管理
或者,您可以在 Alarm status (警示狀態) 資料欄中選擇加號 ( )。
-
在「管理 CloudWatch 警示」頁面上,執行下列動作:
-
選擇 Create an alarm (建立警示)。
-
若要在警示觸發時接收電子郵件,請在 Alarm notification (警示通知) 選擇現有的 Amazon SNS 主題。您首先需要使用 Amazon SNS 主控台建立 Amazon SNS 主題。如需詳細資訊,請參閱 Amazon 簡單通知服務開發人員指南中的使用 Amazon SNS 進行 application-to-person (A2P) 簡訊。
注意
使用者必須訂閱指定的 SNS 主題,以在警示觸發時收到電子郵件通知。即使未指定 SNS 主題或根使用者未訂閱指定的 SNS 主題,也一 AWS 帳戶根使用者 律會在執行個體復原動作發生時收到電子郵件通知。
-
切換 Alarm action (警示動作),然後選擇 Recover (復原)。
-
若要將 Group samples by (分組範例條件) 和 Type of data to sample (要作為範例的資料類型),請選擇統計資料和指標。在此範例中,選擇 Average (平均) 和 Status check failed: system (狀態檢查失敗:系統)。
-
針對 Consecutive period (連續期間) 和Period (期間),指定警示的評估期間。在此範例中,請輸入 2 個每隔 5 Minutes (5 分鐘) 的連續期間。
-
Amazon CloudWatch 會自動為您創建一個警報名稱。若要變更名稱,請在 Alarm name (警示名稱) 中輸入新名稱。警示名稱只能包含 ASCII 字元。
-
選擇建立。
-
使用 Amazon 主 CloudWatch 控台檢視警示和動作歷史記錄
您可以在 Amazon CloudWatch 主控台中檢視警示和動作歷史記錄。Amazon CloudWatch 保留了最近兩週的警報和行動歷史。
若要檢視觸發警示和動作的歷史記錄 (CloudWatch 主控台)
-
開啟主 CloudWatch 控台,網址為 https://console.aws.amazon.com/cloudwatch/
。 -
在導覽窗格中,選擇警示。
-
選擇警示。
-
Details (詳細資訊) 標籤會顯示隨著時間轉換的最新狀態及指標值。
-
選擇 History (歷史記錄) 標籤可檢視最新的歷史記錄項目。
Amazon CloudWatch 警報動作案例
您可以使用 Amazon EC2 主控台來建立提醒動作,在滿足特定條件時停止或終止 Amazon EC2 執行個體。在下列用來設定警示動作的主控台頁面螢幕截圖中,我們為設定加上編號。我們也在隨後的案例中為設定加上編號,協助您建立適當的動作。
案例 1:停止閒置的開發和測試執行個體
建立警示,在用於軟體開發或測試的執行個體已閒置至少一小時後,將其停止。
設定 | Value |
---|---|
1 |
停止 |
2 |
最大 |
3 |
CPU 使用率 |
4 |
<= |
5 |
10% |
6 |
1 |
7 |
1 小時 |
案例 2:停止閒置的執行個體
建立警示,在執行個體已閒置 24 小時後,停止執行個體並傳送電子郵件。
設定 | Value |
---|---|
1 |
停止和寄送電子郵件 |
2 |
平均數 |
3 |
CPU 使用率 |
4 |
<= |
5 |
5% |
6 |
24 |
7 |
1 小時 |
案例 3:針對發生異常高流量的 Web 伺服器傳送電子郵件
建立警示,在執行個體每天超過 10 GB 傳出網路流量後,傳送電子郵件。
設定 | Value |
---|---|
1 |
電子郵件 |
2 |
總和 |
3 |
網路輸出 |
4 |
> |
5 |
10 GB |
6 |
24 |
7 |
1 小時 |
案例 4:停止發生異常高流量的 Web 伺服器
建立警示,在傳出流量每小時超過 1 GB 後,停止執行個體並傳送簡訊 (SMS)。
設定 | Value |
---|---|
1 |
停止並傳送簡訊 |
2 |
總和 |
3 |
網路輸出 |
4 |
> |
5 |
1 GB |
6 |
1 |
7 |
1 小時 |
案例 5:停止受損的執行個體
建立警示,停止未通過三次連續運作狀態檢查的執行個體 (以 5 分鐘間隔執行)。
設定 | Value |
---|---|
1 |
停止 |
2 |
平均數 |
3 |
狀態檢查失敗:系統 |
4 |
- |
5 |
- |
6 |
1 |
7 |
15 分鐘 |
案例 6:批次處理任務完成時終止執行個體
建立警示,當執行批次任務的執行個體不再傳送結果資料時,終止該執行個體。
設定 | Value |
---|---|
1 |
終止 |
2 |
最大 |
3 |
網路輸出 |
4 |
<= |
5 |
100,000 位元組 |
6 |
1 |
7 |
5 分鐘 |