平時我們的雲端計算資源作為對外營運的電商網站服務,每當遇到活動檔期時都很怕他的主機資源爆量導致資源不敷使用大大影響了服務品質而影響了公司銷售業績的成長.
這還不打緊,最怕的是在晚上夜間或是假日沒人固守的情況下更為擔心,但一次擴增的最大又怕其實流量不如預期導致支援閒置增加了更多不必要的成本.
其實關於這類的情境比較好的作法有二:
不過今天的主角是主機透過自動化觸發Runbook讓VM做ScaleUp的動作而無需人工介入,這次就來做簡單的示範
這台familyweb1等會就透過自動化機制不做人工介入來讓規格Up Up
新增資源搜尋自動化(中英文皆可)
自動化建立
自訂名稱並選擇東南亞地區(因為我的VM也在東南亞)
自動化服務建立完成
記得基本建立好還要來更新模組因為大多都不一定會同步預設最新版模組,常有遇到異常問題,所以直接先來更新一下
執行更新確認
它就會開始自動匯入模組來做覆蓋更新作業(需要十多分鐘的等待時間)
更新完成了
回到我的示範主機找到警示功能
點進去警示選到檢視傳統警示
新增指標性Metric Alert
自訂名稱,重點是Metric Alert的觸發條件非常多,可以依您的需求來作為觸發條件,我用CPU%來做示範
條件當達到CPU 80%持續五分鐘的時候就觸發自動化條件啟動Runbook(依各個環境需求調整),我也設定條件觸發會發送通知信給我
下面有看到嗎?條件觸發後要讓Runbook執行甚麼動作本次需求是要做VMScaleUp
最後是真正能執行整個流程需要一個自動化服務,就選擇剛剛剛建立的,如果沒有可以從這新增
設定完成按下OK
建立好一條ScaleUp觸發條件了
不過因為我這只是靜態網站要超到CPU 80%持續5分鐘真的滿難的....所以為了測試快速呈現直接動手腳把80%直接改成1%,至於持續時間都是標準最少是五分鐘
有了!收到觸發系統信內容如下顯示
到自動化服務來看儀表板可以看到執行Job成功,失敗,連接等狀態的總和
回到VM資訊頁面已經看到規格已經自動升級成D2v2
從從自動化服務中Job紀錄來檢視剛剛是否成功與否,直接拉到最後D1v2-->D2v2已經成功
補充一下:持續有觀察到條件持續觸發就會一階一階的往上提升D1v2-->D2v2-->D3v2以此類推,但不能跨到不同類型規格.
另外在Azure自動化中要觸發RunBook來執行你要的行為動作有以下方式:
以上就先這樣先讓大家有個初步的用法,再會哩!81