Skip to Content
负载均衡 ULB ALBupdate_rule_attribute_json

更新应用型负载均衡的转发规则属性 - UpdateRuleAttribute

简介

更新应用型负载均衡监听器的一条转发规则的属性

💡 RuleConditions 或 RuleActions 不传该参数则不做更改,传则以数组为粒度更新规则(数组内未传项则按默认值进行修改)

定义

公共参数

参数名类型描述信息必填
Actionstring对应的 API 指令名称,当前 API 为 UpdateRuleAttributeYes
PublicKeystring用户公钥,可从 控制台 获取Yes
Signaturestring根据公钥及 API 指令生成的用户签名,参见 签名算法Yes

请求参数

参数名类型描述信息必填
Regionstring地域。 参见 地域和可用区列表Yes
ProjectIdstring项目ID。不填写为默认项目,子帐号必须填写。 请参考GetProjectList接口Yes
LoadBalancerIdstring应用型负载均衡实例的IDYes
ListenerIdstring监听器的IDYes
RuleIdstring转发规则的IDYes
RuleConditionsarray[RuleCondition]转发规则匹配条件。数组长度至少为1,目前最多支持一个域名和一个路径类型的 RuleCondition,即数组长度最多为2且不同类型; 默认转发规则不可更改此项; 不传该参数则不做更改,传则该参数为粒度更新规则(数组内未传项则按默认值进行修改)。 具体结构见下方 RuleConditionNo
RuleActionsarray[RuleActionSet]转发动作。 数组长度只能为1; 不传该参数则不做更改,传则以该参数为粒度更新规则(数组内未传项则按默认值进行修改)。具体结构见下方 RuleActionSetNo
Passbool当转发的服务节点为空时,规则是否忽略。默认值true; 默认转发规则不可更改此项No

数据模型

RuleCondition

字段名类型描述信息必填
Typestring匹配条件类型。限定枚举值:Host,PathYes
HostConfigHostConfigSet域名相关配置。Type为Host时必填。具体结构详见 HostConfigSetNo
PathConfigPathConfigSet路径相关配置。Type为Path时必填。具体结构详见 PathConfigSetNo

HostConfigSet

字段名类型描述信息必填
MatchModestring匹配方式。限定枚举值:Regular-正则,Wildcard-泛域名; 默认值:RegularNo
Valuesarray[string]取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件Yes

PathConfigSet

字段名类型描述信息必填
Valuesarray[string]取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件Yes

RuleActionSet

字段名类型描述信息必填
Typestring动作类型。限定枚举值:ForwardYes
ForwardConfigForwardConfigInfo转发服务节点相关配置。 具体结构详见 ForwardConfigInfoNo

ForwardConfigInfo

字段名类型描述信息必填
Targetsarray[ForwardTargetInfo]转发的后端服务节点。限定在监听器的服务节点池里;数组长度可以为0。具体结构详见 ForwardTargetInfoYes

ForwardTargetInfo

字段名类型描述信息必填
Idstring服务节点的标识IDYes
Weightint权重。仅监听器负载均衡算法是加权轮询是有效;取值范围[1-100],默认值为1; 默认规则不能修改此项No

响应字段

字段名类型描述信息必填
RetCodeint返回状态码,为 0 则为成功返回,非 0 为失败Yes
Actionstring操作指令名称Yes
Messagestring返回错误消息,当 RetCode 非 0 时提供详细的描述信息No

示例

请求示例

curl 'https://api.an-link.com' \ --header 'Content-Type: application/json' \ --data '{ "Action": "UpdateRuleAttribute", "Region": "cn-bj2", "ProjectId": "org-XXXXX", "LoadBalancerId": "alb-XXXXX", "ListenerId": "als-XXXXX", "RuleId": "rule-XXXXX", "RuleConditions": [ { "Type": "Host", "HostConfig": { "MatchMode": "Regular", "Values": ["www.change.com"] } }, { "Type": "Path", "PathConfig": { "Values": ["/change"] } } ], "RuleActions": [ { "Type": "Forward", "ForwardConfig": { "Targets": [ { "Id": "ars-XXXXX", "Weight": 5 } ] } } ] }'

响应示例

{ "Action": "UpdateRuleAttributeResponse", "RetCode": 0 }