ECS事件通知之创建失败事件
ECS提供了批量實例創建接口,可以一次調用創建最多100臺實例。批量創建接口可以完成批量實例的創建、啟動、IP分配等流程,可以快速完成實例資源的擴容。
在實例的創建過程中(實際后臺異步創建),庫存和VSwitch中私網IP的可用數量是動態變化的,在創建過程中有可能資源不滿足創建需求,導致實例的創建過程失敗,實例創建失敗后會有兩種結果:
1.實例會被自動釋放,某些典型的錯誤,例如庫存不足,會觸發實例的自動釋放,實例釋放后會從實例列表中消失,用戶很難感知實例的創建失敗以及原因。
2.實例會保持創建中狀態,并且可以操作實例的釋放(包年包月實例要通過工單申請),這種是對自動運維非常不友好的邏輯,實例的生命周期并沒有閉環。
實例創建失敗事件
實例創建失敗事件會對上面兩種流程自動化運維,首先會進行實例的自動化釋放(實例在這種狀態下是被評估為無法創建成功的),開始釋放流程后ECS會發出實例創建失敗事件,此時實例在實例列表中是可以被查詢到的;當實例最終被釋放時,實例創建失敗事件會變為已執行狀態,之后實例在實例列表中無法查詢(實例已經釋放)。
對于已經發生了“創建失敗事件”的實例,可以有兩種選擇: 一個是不進行任何操作,后續在10分鐘內,實例會被自動釋放;一個是可以主動進行釋放,主動釋放后,實例創建失敗事件會被修改為已避免狀態。之后實例的相關事件都可以在歷史事件查詢接口進行查詢。
事件通知的內容格式
實例創建失敗事件的內容包含實例創建失敗的時間點、完成時間、實例id等信息,消息體示例如下:
{"status":"Executing","ver":"1.0","product":"ECS","id":"4AB76E05-B5E2-4A00-A107-B0B6A5091967","resourceId":"acs:ecs:cn-hangzhou:16343********0:instance/i-bp********gzahwqfvx","level":"CRITICAL","instanceName":"","ruleName":"test","userId":"16343********0","name":"Instance:SystemFailure.Delete:Executing","eventTime":"20190611T130915.171+0800","regionId":"cn-hangzhou","content":{"notBefore":"2019-06-11T05:09:14Z","executeStartTime":"2019-06-11T05:09:14Z","publishTime":"2019-06-11T05:09:14Z","eventId":"e-bp1ivh*********c","instanceId":"i-bp1jfp*********x","eventType":"SystemFailure.Delete","eventStatus":"Executing"} }如何訂閱消費
用戶可以在云監控控制臺事件訂閱完成事件的通知,請查看文檔《設置事件通知》
用戶可以通過對實例創建失敗的消息訂閱,在發生實例創建失敗之后,馬上感知到實例創建失敗的發生,可以盡快調整實例的創建參數(實例規格、VSwitch)來避免庫存不足和私網IP不足發生,提高實例創建的成功率。
原文鏈接
本文為云棲社區原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的ECS事件通知之创建失败事件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么技术人一定要懂点“可信计算”?
- 下一篇: 阿里云与A站在一起后,悄悄干了件大事