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

 

功能介紹

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

  • 伸縮策略定義了伸縮組內(nèi)實(shí)例的擴(kuò)張和收縮操作。如果執(zhí)行伸縮策略造成伸縮組期望實(shí)例數(shù)與伸縮組內(nèi)實(shí)例數(shù)不符,彈性伸縮會(huì)自動(dòng)調(diào)整實(shí)例資源,以匹配期望實(shí)例數(shù)。
  • 當(dāng)前伸縮策略支持告警觸發(fā)策略,周期觸發(fā)策略,定時(shí)觸發(fā)策略。
  • 在策略執(zhí)行具體動(dòng)作中,可設(shè)置實(shí)例變化的個(gè)數(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ù)說(shuō)明

參數(shù)

是否必選

參數(shù)類型

描述

project_id

String

項(xiàng)目ID

請(qǐng)求參數(shù)

表2 請(qǐng)求參數(shù)

參數(shù)

是否必選

參數(shù)類型

描述

scaling_policy_name

String

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

scaling_group_id

String

伸縮組ID,通過(guò)查詢彈性伸縮組列表獲取,請(qǐng)參考查詢彈性伸縮組列表

scaling_policy_type

String

策略類型

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

alarm_id

String

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

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

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

scheduled_policy

scheduled_policy object

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

scaling_policy_action

scaling_policy_action object

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

cool_down_time

Integer

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

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

參數(shù)

是否必選

參數(shù)類型

描述

launch_time

String

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

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

recurrence_type

String

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

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

recurrence_value

String

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

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

start_time

String

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

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

end_time

String

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

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

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

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

參數(shù)

是否必選

參數(shù)類型

描述

operation

String

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

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

instance_number

Integer

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

  • operation為SET時(shí),取值范圍為:0~300。
  • operation為ADD或REMOVE/REDUCE時(shí),取值范圍為:1~300。
說(shuō)明:

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

instance_percentage

Integer

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

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

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

請(qǐng)求示例

創(chuàng)建一個(gè)名稱為as-policy-7a75的周期策略,該策略的生效時(shí)間為2015-12-14T03:34Z到2015-12-27T03:34Z,每天16:00在ID為5bc3aa02-b83e-454c-aba1-4d2095c68f8b的伸縮組中增加一個(gè)實(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

  • 異常

    返回值

    說(shuō)明

    400 Bad Request

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

    401 Unauthorized

    被請(qǐng)求的頁(yè)面需要用戶名和密碼。

    403 Forbidden

    對(duì)被請(qǐng)求的頁(yè)面訪問(wèn)禁止。

    404 Not Found

    服務(wù)器無(wú)法找到被請(qǐng)求的頁(yè)面。

    405 Method Not Allowed

    請(qǐng)求中指定的方法不被允許。

    406 Not Acceptable

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

    407 Proxy Authentication Required

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

    408 Request Timeout

    請(qǐng)求超出了服務(wù)器的等待時(shí)間。

    409 Conflict

    由于沖突,請(qǐng)求無(wú)法被完成。

    500 Internal Server Error

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

    501 Not Implemented

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

    502 Bad Gateway

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

    503 Service Unavailable

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

    504 Gateway Timeout

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

錯(cuò)誤碼

請(qǐng)參考錯(cuò)誤碼。