ECS事件通知之建立失敗事件

ECS提供了批量實例建立接口(https://help.aliyun.com/document_detail/63440.html ),能夠一次調用建立最多100臺實例。批量建立接口能夠完成批量實例的建立、啓動、IP分配等流程,能夠快速完成實例資源的擴容。html

在實例的建立過程當中(實際後臺異步建立),庫存和VSwitch中私網IP的可用數量是動態變化的,在建立過程當中有可能資源不知足建立需求,致使實例的建立過程失敗,實例建立失敗後會有兩種結果:運維

1.實例會被自動釋放,某些典型的錯誤,例如庫存不足,會觸發實例的自動釋放,實例釋放後會從實例列表中消失,用戶很難感知實例的建立失敗以及緣由。異步

2.實例會保持建立中狀態,而且能夠操做實例的釋放(包年包月實例要經過工單申請),這種是對自動運維很是不友好的邏輯,實例的生命週期並無閉環。url

實例建立失敗事件

實例建立失敗事件會對上面兩種流程自動化運維,首先會進行實例的自動化釋放(實例在這種狀態下是被評估爲沒法建立成功的),開始釋放流程後ECS會發出實例建立失敗事件,此時實例在實例列表中是能夠被查詢到的;當實例最終被釋放時,實例建立失敗事件會變爲已執行狀態,以後實例在實例列表中沒法查詢(實例已經釋放)。code

對於已經發生了「建立失敗事件」的實例,能夠有兩種選擇: 一個是不進行任何操做,後續在10分鐘內,實例會被自動釋放;一個是能夠主動進行釋放,主動釋放後,實例建立失敗事件會被修改成已避免狀態。以後實例的相關事件均可以在歷史事件查詢接口進行查詢。htm

事件通知的內容格式

實例建立失敗事件的內容包含實例建立失敗的時間點、完成時間、實例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不足發生,提升實例建立的成功率。事件



本文做者:龍轔

閱讀原文資源

本文爲雲棲社區原創內容,未經容許不得轉載。

相關文章
相關標籤/搜索