華為云計(jì)算 云知識 創(chuàng)建彈性伸縮策略CreateScalingPolicy
創(chuàng)建彈性伸縮策略CreateScalingPolicy

 

功能介紹

創(chuàng)建 彈性伸縮 策略。

  • 伸縮策略定義了伸縮組內(nèi)實(shí)例的擴(kuò)張和收縮操作。如果執(zhí)行伸縮策略造成伸縮組期望實(shí)例數(shù)與伸縮組內(nèi)實(shí)例數(shù)不符,彈性伸縮會自動調(diào)整實(shí)例資源,以匹配期望實(shí)例數(shù)。
  • 當(dāng)前伸縮策略支持告警觸發(fā)策略,周期觸發(fā)策略,定時觸發(fā)策略。
  • 在策略執(zhí)行具體動作中,可設(shè)置實(shí)例變化的個數(shù),或根據(jù)當(dāng)前實(shí)例的百分比數(shù)進(jìn)行伸縮。

調(diào)試

您可以在API Explorer中調(diào)試該接口。

URI

POST /autoscaling-api/v1/{project_id}/scaling_policy

表1 參數(shù)說明

參數(shù)

是否必選

參數(shù)類型

描述

project_id

String

項(xiàng)目ID

請求參數(shù)

表2 請求參數(shù)

參數(shù)

是否必選

參數(shù)類型

描述

scaling_policy_name

String

伸縮策略名稱(1-64個字符),只能包含中文、字母、數(shù)字、下劃線或中劃線。

scaling_group_id

String

伸縮組ID,通過查詢彈性伸縮組列表獲取,請參考查詢彈性伸縮組列表。

scaling_policy_type

String

策略類型

  • 告警策略:ALARM(與alarm_id對應(yīng))
  • 定時策略:SCHEDULED(與scheduled_policy對應(yīng))
  • 周期策略:RECURRENCE(與scheduled_policy對應(yīng))

alarm_id

String

告警ID,即告警規(guī)則的ID,當(dāng)scaling_policy_type為ALARM時該項(xiàng)必選,此時scheduled_policy不生效。

創(chuàng)建告警策略成功后,會自動為該告警ID對應(yīng)的告警規(guī)則的alarm_actions字段增加類型為autoscaling的告警觸發(fā)動作。

告警ID通過查詢 云監(jiān)控 告警規(guī)則列表獲取,請參考《云監(jiān)控API參考》的“查詢告警規(guī)則列表”。

scheduled_policy

scheduled_policy object

定時、周期任務(wù)策略,當(dāng)scaling_policy_type為SCHEDULED或RECURRENCE時該項(xiàng)必選,此時alarm_id不生效。詳情請見表 scheduled_policy字段數(shù)據(jù)結(jié)構(gòu)說明。

scaling_policy_action

scaling_policy_action object

策略執(zhí)行具體動作。詳情請見表 scaling_policy_action字段數(shù)據(jù)結(jié)構(gòu)說明。

cool_down_time

Integer

冷卻時間,取值范圍0-86400,默認(rèn)為300,單位是秒。

表3 scheduled_policy字段數(shù)據(jù)結(jié)構(gòu)說明

參數(shù)

是否必選

參數(shù)類型

描述

launch_time

String

觸發(fā)時間,遵循UTC時間。

  • 如果scaling_policy_type為SCHEDULED,則格式為:YYYY-MM-DDThh:mmZ。
  • 如果scaling_policy_type為RECURRENCE,則格式為:hh:mm。

recurrence_type

String

周期觸發(fā)類型,scaling_policy_type為RECURRENCE時該項(xiàng)必選。

  • Daily:每天執(zhí)行一次
  • Weekly:每周指定天執(zhí)行一次。
  • Monthly:每月指定天執(zhí)行一次。

recurrence_value

String

周期觸發(fā)任務(wù)數(shù)值,scaling_policy_type為RECURRENCE時該項(xiàng)必選。

  • 類型為Daily時,該字段為null,表示每天執(zhí)行
  • 類型為Weekly時,該字段取值范圍為1-7,1表示星期日,以此類推,以“,”分割,例如:1,3,5。
  • 類型為Monthly時,該字段取值范圍為1-31,分別表示每月的日期,以“,”分割,例如:1,10,13,28。

start_time

String

周期策略重復(fù)執(zhí)行開始時間,遵循UTC時間,默認(rèn)為當(dāng)前時間。

格式為:YYYY-MM-DDThh:mmZ。

end_time

String

周期策略重復(fù)執(zhí)行結(jié)束時間,遵循UTC時間,scaling_policy_type為RECURRENCE時該項(xiàng)必選。

當(dāng)為周期類型策略時,不得早于當(dāng)前時間和開始時間。

格式為:YYYY-MM-DDThh:mmZ。

表4 scaling_policy_action字段數(shù)據(jù)結(jié)構(gòu)說明

參數(shù)

是否必選

參數(shù)類型

描述

operation

String

操作選項(xiàng),默認(rèn)為ADD。

  • ADD:增加實(shí)例
  • REMOVE/REDUCE:減少實(shí)例
  • SET:設(shè)置實(shí)例數(shù)為

instance_number

Integer

操作實(shí)例個數(shù),默認(rèn)為1。當(dāng)配額為默認(rèn)配額時,取值范圍如下:

  • operation為SET時,取值范圍為:0~300。
  • operation為ADD或REMOVE/REDUCE時,取值范圍為:1~300。
說明:

配置參數(shù)時,instance_number和instance_percentage參數(shù)只能選其中一個進(jìn)行配置。

instance_percentage

Integer

操作實(shí)例百分比,將伸縮組容量增加、減少或設(shè)置為伸縮組當(dāng)前實(shí)例個數(shù)的百分比。操作為ADD或REMOVE/REDUCE時取值范圍為1到20000的整數(shù),操作為SET時取值范圍為0到20000的整數(shù)。

當(dāng)instance_number和instance_percentage參數(shù)均無配置時,則操作實(shí)例個數(shù)為1。

配置參數(shù)時,instance_number和instance_percentage參數(shù)只能選其中一個進(jìn)行配置。

請求示例

創(chuàng)建一個名稱為as-policy-7a75的周期策略,該策略的生效時間為2015-12-14T03:34Z到2015-12-27T03:34Z,每天16:00在ID為5bc3aa02-b83e-454c-aba1-4d2095c68f8b的伸縮組中增加一個實(shí)例。
POST https://{Endpoint}/autoscaling-api/v1/{project_id}/scaling_policy

{
    "scaling_policy_name": "as-policy-7a75",
    "scaling_policy_action": {
        "operation": "ADD",
        "instance_number": 1
    },
    "cool_down_time": 900,
    "scheduled_policy": {
        "launch_time": "16:00",
        "recurrence_type": "Daily",
        "start_time": "2015-12-14T03:34Z",
        "end_time": "2015-12-27T03:34Z"
    },
    "scaling_policy_type": "RECURRENCE",
    "scaling_group_id": "5bc3aa02-b83e-454c-aba1-4d2095c68f8b"
}

響應(yīng)參數(shù)

表5 響應(yīng)參數(shù)

參數(shù)

參數(shù)類型

描述

scaling_policy_id

String

伸縮策略ID

響應(yīng)示例

{
    "scaling_policy_id": "0h327883-324n-4dzd-9c61-68d03ee191dd"
}

返回值

  • 正常

    200

  • 異常

    返回值

    說明

    400 Bad Request

    服務(wù)器未能處理請求。

    401 Unauthorized

    被請求的頁面需要用戶名和密碼。

    403 Forbidden

    對被請求的頁面訪問禁止。

    404 Not Found

    服務(wù)器無法找到被請求的頁面。

    405 Method Not Allowed

    請求中指定的方法不被允許。

    406 Not Acceptable

    服務(wù)器生成的響應(yīng)無法被客戶端所接受。

    407 Proxy Authentication Required

    用戶必須首先使用代理服務(wù)器進(jìn)行驗(yàn)證,這樣請求才會被處理。

    408 Request Timeout

    請求超出了服務(wù)器的等待時間。

    409 Conflict

    由于沖突,請求無法被完成。

    500 Internal Server Error

    請求未完成。服務(wù)異常。

    501 Not Implemented

    請求未完成。服務(wù)器不支持所請求的功能。

    502 Bad Gateway

    請求未完成。服務(wù)器從上游服務(wù)器收到一個無效的響應(yīng)。

    503 Service Unavailable

    請求未完成。系統(tǒng)暫時異常。

    504 Gateway Timeout

    網(wǎng)關(guān)超時。

錯誤碼

請參考錯誤碼。