AWS快問快答

當我的 Amazon EC2 實例狀態更改時,如何取得通知?

使用案例

A 公司某員工在下班前誤關了某台 EC2,導致 B 服務無法使用,直到第二天其他同事才發現架設該服務的 EC2 處於關閉狀態,此時為時已晚!因此,A 公司希望在有人關閉實例時,能接收到電子郵件通知,要如何設定才能做到這一點呢?

只要透過 Amazon Simple Notification Service (SNS) 及 CloudWatch 就能辦到囉!今天就由博弘架構師一步步教大家如何設定:

設定步驟

一、設定 Amazon SNS 主題和端點

1. 首先您必須先在 SNS 中設定主題,並將電子郵件地址新增為端點,以讓 Amazon CloudWatch Events 能發送電子郵件到您的信箱。

2. 登入 Amazon SNS 主控台 

3. 從瀏覽窗格選取 Topics (主題),然後選取 Create Topic (建立主題)

設定 Amazon SNS 主題和端點

4. 在 Create topic(建立主題)區段中,輸入主題名稱(例如: GuardDuty),其他詳細資料可選擇性填寫

5. 選擇 Create Topic(建立主題),並選擇剛才所建立的 Topic

6. 在 Subscription(訂閱)區段中,選取 Create subscription建立訂閱

  A. 從 Protocol (通訊協定) 功能表中,選取 Email (電子郵件)

  B. 在 Endpoint (端點) 欄位中,新增您想要接收通知的電子郵件

7. 選擇 Create subscription(建立訂閱)

8. 建立完成後,系統會發訂閱郵件到您的信箱,請查看收件匣中的訂閱郵件,選擇 Confirm Subscription(確認訂閱)

二、設定當 EC 狀態改變時,觸發通知的 CloudWatch Event

1. 前往 CloudWatch 主控台

2. 從導覽窗格中選取 Rules(規則) →  Create Rule (建立規則)

3. Service Name(服務名稱)功能表中,選擇 EC2

4. Event Type(事件類型)功能表中,選擇 EC2 Instance State-change Notification

5. 可選擇 Any state,或是 Specific state(s)(只有特定事件才會通知,選項有:pending, running, shutting-down, stopped, stopping, terminated)

6. 可選擇 Any instance或是 Specific instance ID(s) (只有特定 instance 才通知)

02-event source

7. Targets(目標)區段中,點擊 Add Target(新增目標)

add target

8. Select Targets(選取目標)功能表中,選擇 SNS Topic(SNS 主題)

9. 選取您在「 一、設定 Amazon SNS 主題和端點 – 步驟 1」中建立的 SNS 主題名稱

10. Configure input 欄位選取 Input Transformer

11. 複製下列程式碼,並貼到 Input Path (輸入路徑) 欄位中

  {“instance-id”:”$.detail.instance-id”, “state”:”$.detail.state”, “time”:”$.time”,

   “region”:”$.region”, “account”:”$.account”}

12. 複製下列程式碼,並貼到 Input Template(輸入範本)欄位,以格式化電子郵件

  “At <time>, the status of your EC2 instance <instance-id> on account 

  <account> in the AWS Region <region> has changed to <state>.”

13. 設置完成後,將會顯示如下圖

設定當EC狀態改變時觸發通知的 CloudWatch Event

14. 確認設定無誤後,點擊 Configure Details(設定詳細資料)

15. Configure rule details (設定規則詳細資訊) 頁面上,輸入規則的 Name(名稱)及 Description(描述)

    State 必須勾選 Enable,最後點擊 Create rule (建立規則)

Configure rule details

完成以上步驟後,AWS偵測到任何一台EC2狀態改變時,將會發送通知到您的電子郵件啦!  

是不是清楚簡單又快速呢?

請持續鎖定 Nextlink 架構師專欄,以獲得最新專業資訊喔!

若您有任何 AWS 需求,歡迎與我們聯繫!