创建HRA策略 - CreateV2Hra
功能介绍
本接口用于在已部署且支持HRA策略的服务上创建HRA策略,适用于需要根据业务负载或特定时间自动调整服务实例个数的场景。调用此接口前,确保服务已成功部署并获取了有效的服务ID,并提供详细的hra策略参数,如hra时间、实例个数范围、条件触发器等。创建成功后,系统将根据设定的策略自动调整服务实例个数,确保服务在指定时间内的性能和可用性。如果提供的服务ID无效、参数配置错误或系统资源不足,将返回相应的异常信息,提示用户检查输入数据的有效性或联系技术支持。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
授权信息
账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限。
- 如果使用角色与策略授权,具体权限要求请参见权限和授权项。
- 如果使用身份策略授权,需具备如下身份策略权限。
授权项
访问级别
资源类型(*为必须)
条件键
别名
依赖的授权项
modelarts:service:createHra
Read
service *
-
-
-
URI
POST /v2/{project_id}/services/{service_id}/deployments/{deployment_id}/hra
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| project_id | 是 | String | 参数解释: 用户项目ID。获取方法请参见获取项目ID和名称。 约束限制: 不涉及。 取值范围: 账号的项目ID。 默认取值: 不涉及。 |
| service_id | 是 | String | 参数解释: 服务ID,在创建服务时即可在返回体中获取,也可通过查询服务列表获取当前用户拥有的服务,其中service_id字段即为服务ID。 约束限制: 不涉及。 取值范围: 服务ID。 默认取值: 不涉及。 |
| deployment_id | 是 | String | 参数解释: 部署ID,在创建部署时即可在返回体中获取,也可通过查询服务部署列表获取当前用户拥有的部署,其中deployment_id字段即为部署ID。 约束限制: 不涉及。 取值范围: 部署ID。 默认取值: 不涉及。 |
请求参数
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| X-Auth-Token | 是 | String | 参数解释: 用户Token。通过调用IAM服务获取用户Token接口获取响应消息头中X-Subject-Token的值。 约束限制: 不涉及。 取值范围: 不涉及。 默认取值: 不涉及。 |
| Content-Type | 是 | String | 参数解释: 消息体的类型(格式)。 约束限制: 不涉及。 取值范围: 默认取值: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| workspace_id | 是 | String | 参数解释: 工作空间ID。未创建工作空间时默认值为“0”,存在创建并使用的工作空间,以实际取值为准。 取值范围: 不涉及。 |
| hra_rules | 是 | Array of HraRuleCreateRequest objects | 参数解释: HRA规则列表。 约束限制: 不涉及。 |
| disable | 否 | Boolean | 参数解释: 用户控制的启用/禁用开关。 取值范围: true表示禁用,false表示启用 约束限制: 不涉及。 默认取值: 不涉及。 |
| min_replicas | 否 | Integer | 参数解释: 最小副本数,由于当前版本不会进行实质扩缩,因此该配置值无效。 取值范围: 1~128。 |
| max_replicas | 否 | Integer | 参数解释: 最大副本数,由于当前版本不会进行实质扩缩,因此该配置值无效。 取值范围: 1~128。 |
| scale_window | 否 | Integer | 参数解释: 扩缩容时间窗,由于当前版本不会进行实质扩缩,因此该配置值无效。 取值范围: 不涉及。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| scaler_type | 否 | String | 参数解释: 扩缩容类型。 取值范围: 约束限制: 不涉及。 默认取值: 不涉及。 |
| slo_info | 是 | Array of SloInfo objects | 参数解释: SLO配置参数信息。 取值范围: 不涉及。 |
| metrics | 是 | Array of Metrics objects | 参数解释: 指标信息。 取值范围: 不涉及。 |
| role_replica | 否 | Array of RoleReplica objects | 参数解释: 角色扩缩策略(不会进行实质扩缩,因此该配置值无效)。 取值范围: 1~128。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| slo_objectives | 是 | Array of SloObjectives objects | 参数解释: 仿真期望指标。 取值范围: 不涉及。 |
| predict_window_seconds | 否 | Integer | 参数解释: 预测时间窗口。 约束限制: 60~600。 取值范围: 不涉及。 默认取值: 60。 |
| 参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
| metric_ttft | 否 | Integer | 参数解释: TTFT指标,单位毫秒。 取值范围: 0~10000。 约束限制: 不涉及。 默认取值: 100。 |
| metric_tpot | 否 | Integer | 参数解释: TPOT指标,单位毫秒。 取值范围: 0~1000。 约束限制: 不涉及。 默认取值: 50。 |
| percental | 否 | Integer | 参数解释: SLO满足百分比。 取值范围: 0~100。 |
响应参数
状态码:200
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: hra策略ID。 取值范围: 不涉及。 |
| workspace_id | String | 参数解释: 工作空间ID。未创建工作空间时默认值为“0”,存在创建并使用的工作空间,以实际取值为准。 取值范围: 不涉及。 |
| hra_rules | Array of HraRuleResponse objects | 参数解释: HRA规则列表。 |
| disable | Boolean | 参数解释: 用户控制的启用/禁用开关。 取值范围: true表示禁用,false表示启用 约束限制: 不涉及。 默认取值: 不涉及。 |
| policy_status | String | 参数解释: 策略状态。 取值范围: 约束限制: 不涉及。 默认取值: 不涉及。 |
| min_replicas | Integer | 参数解释: 最小副本数,由于当前版本不会进行实质扩缩,因此该配置值无效。 取值范围: 1~128。 |
| max_replicas | Integer | 参数解释: 最大副本数,由于当前版本不会进行实质扩缩,因此该配置值无效。 取值范围: 1~128。 |
| scale_window | Integer | 参数解释: 扩缩容时间窗,由于当前版本不会进行实质扩缩,因此该配置值无效。 取值范围: 不涉及。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| id | String | 参数解释: 规则ID,在创建HRA策略时即可在返回体中获取,也可通过查询推理单元配比检测信息获取当前用户拥有的HRA策略,其中id字段即为规则ID。 约束限制: 不涉及。 取值范围: 规则ID。 默认取值: 不涉及。 |
| name | String | 参数解释: 规则名称。 取值范围: 不涉及。 |
| disable | Boolean | 参数解释: 规则是否禁用。 取值范围: 约束限制: 不涉及。 默认取值: 不涉及。 |
| scaler_type | String | 参数解释: 扩缩容类型。 取值范围: 约束限制: 不涉及。 默认取值: 不涉及。 |
| rule_status | String | 参数解释: HRA规则状态。 取值范围: 约束限制: 不涉及。 默认取值: 不涉及。 |
| slo_info | Array of SloInfo objects | 参数解释: SLO配置参数信息。 取值范围: 不涉及。 |
| metrics | Array of Metrics objects | 参数解释: 指标信息。 取值范围: 不涉及。 |
| role_replica | Array of RoleReplica objects | 参数解释: 角色扩缩策略(不会进行实质扩缩,因此该配置值无效)。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| slo_objectives | Array of SloObjectives objects | 参数解释: 仿真期望指标。 取值范围: 不涉及。 |
| predict_window_seconds | Integer | 参数解释: 预测时间窗口。 约束限制: 60~600。 取值范围: 不涉及。 默认取值: 60。 |
| 参数 | 参数类型 | 描述 |
|---|---|---|
| metric_ttft | Integer | 参数解释: TTFT指标,单位毫秒。 取值范围: 0~10000。 约束限制: 不涉及。 默认取值: 100。 |
| metric_tpot | Integer | 参数解释: TPOT指标,单位毫秒。 取值范围: 0~1000。 约束限制: 不涉及。 默认取值: 50。 |
| percental | Integer | 参数解释: SLO满足百分比。 取值范围: 0~100。 |
请求示例
用户创建规则,当该服务不存在规则时使用。
{{request_url}}/v2/{project_id}/services/{service_id}/deployments/{deployment_id}/hra
{
"workspace_id" : "0",
"disable" : false,
"hra_rules" : [ {
"scaler_type" : "SIMULATOR_ALGO",
"slo_info" : [ {
"slo_objectives" : [ {
"metric_ttft" : 100,
"metric_tpot" : 50,
"percental" : 90
} ],
"predict_window_seconds" : 60
} ],
"metrics" : [ {
"endpoint" : "localhost",
"path" : "/metrics",
"port" : 9876,
"scheme" : "http",
"metrics_source" : "CONTAINER"
} ],
"role_replica" : [ {
"max_replicas" : 3,
"min_replicas" : 1,
"name" : "prefill"
}, {
"max_replicas" : 3,
"min_replicas" : 1,
"name" : "decode"
} ]
} ],
"min_replicas" : 1,
"max_replicas" : 128,
"scale_window" : 0
} 响应示例
状态码:200
创建hra策略返回体。
{
"disable" : false,
"hra_rules" : [ {
"disable" : false,
"id" : "7a88d578-7373-4508-a47a-8e2dd3939ea4",
"metrics" : [ {
"endpoint" : "localhost",
"metrics_source" : "CONTAINER",
"path" : "/metrics",
"port" : "9876",
"scheme" : "http"
} ],
"name" : "rule-wzwq",
"role_replica" : [ {
"max_replicas" : 3,
"min_replicas" : 1,
"name" : "prefill"
}, {
"max_replicas" : 3,
"min_replicas" : 1,
"name" : "decode"
} ],
"rule_status" : "CREATING",
"scaler_type" : "SIMULATOR_ALGO",
"slo_info" : [ {
"predict_window_seconds" : 60,
"slo_objectives" : [ {
"metric_tpot" : 50,
"metric_ttft" : 100,
"percental" : 90
} ]
} ]
} ],
"id" : "1a71d5a4-abc4-44b4-a145-3b59aa1a8951",
"max_replicas" : 128,
"min_replicas" : 1,
"policy_status" : "INACTIVE",
"scale_window" : 0,
"workspace_id" : "0"
} 状态码
| 状态码 | 描述 |
|---|---|
| 200 | 创建hra策略返回体。 |
错误码
请参见错误码。