From 85771bd65db9475e2af1f44b293465cf81df1e58 Mon Sep 17 00:00:00 2001 From: ucloud-bot Date: Fri, 4 Sep 2026 10:02:35 +0000 Subject: [PATCH] sdk: rolling update for 0.11.130 --- ucloud/services/uk8s/client.py | 208 ++++---- ucloud/services/uk8s/schemas/apis.py | 206 ++++---- ucloud/services/uk8s/schemas/models.py | 234 ++++----- ucloud/services/ulb/client.py | 654 ++++++++++++------------- ucloud/services/ulb/schemas/apis.py | 294 +++++------ ucloud/services/ulb/schemas/models.py | 282 +++++------ ucloud/version.py | 2 +- 7 files changed, 940 insertions(+), 940 deletions(-) diff --git a/ucloud/services/uk8s/client.py b/ucloud/services/uk8s/client.py index c29c710..5f19c49 100644 --- a/ucloud/services/uk8s/client.py +++ b/ucloud/services/uk8s/client.py @@ -206,6 +206,10 @@ def add_uk8s_uhost_node( - **ShareBandwidthId** (str) - 绑定的共享带宽Id,仅当PayMode为ShareBandwidth时有效 + **AddUK8SUHostNodeParamKubeletConfiguration** + - **ContainerLogMaxFiles** (str) - 全量KubeletConfiguration.XXX定义参考AddUK8SNodeGroup接口: https://uxiao.ucloudadmin.com/#/api-manager/api/detail/UK8S/AddUK8SNodeGroup + + **AddUK8SUHostNodeParamNetworkInterface** - **EIP** (dict) - 见 **AddUK8SUHostNodeParamNetworkInterfaceEIP** 模型定义 @@ -221,10 +225,6 @@ def add_uk8s_uhost_node( - **Priority** (str) - 安全组优先级。取值范围[1, 5] - **AddUK8SUHostNodeParamKubeletConfiguration** - - **ContainerLogMaxFiles** (str) - 全量KubeletConfiguration.XXX定义参考AddUK8SNodeGroup接口: https://uxiao.ucloudadmin.com/#/api-manager/api/detail/UK8S/AddUK8SNodeGroup - - """ # build request d = { @@ -286,15 +286,8 @@ def create_uk8s_cluster_v2( **Request Model** - **CreateUK8SClusterV2ParamMasterSecGroupId** - - **Id** (str) - 安全组 ID。至多可以同时绑定5个安全组。 - - **Name** (str) - 安全组名称。 - - **Priority** (str) - 安全组优先级。取值范围[1, 5] - - - **CreateUK8SClusterV2ParamMaster** - - **SecGroupId** (list) - 见 **CreateUK8SClusterV2ParamMasterSecGroupId** 模型定义 - - **Zone** (str) - Master节点所属可用区,需要设置 Master.0.Zone、 Master.1.Zone、Master.2.Zone 三个 Master 节点的可用区。 三个节点可部署在不同可用区。参见 `可用区列表 `_ + **CreateUK8SClusterV2ParamKubeProxy** + - **Mode** (str) - 集群kube-proxy模式。支持iptables和ipvs,默认为iptables。 **CreateUK8SClusterV2ParamNodesNetworkInterfaceEIP** @@ -341,8 +334,15 @@ def create_uk8s_cluster_v2( - **Zone** (str) - 一组Nodes节点所属可用区,可创建多组Nodes节点,如一组是CPU Nodes节点,另一组是GPU Nodes节点。参见 `可用区列表 `_ - **CreateUK8SClusterV2ParamKubeProxy** - - **Mode** (str) - 集群kube-proxy模式。支持iptables和ipvs,默认为iptables。 + **CreateUK8SClusterV2ParamMasterSecGroupId** + - **Id** (str) - 安全组 ID。至多可以同时绑定5个安全组。 + - **Name** (str) - 安全组名称。 + - **Priority** (str) - 安全组优先级。取值范围[1, 5] + + + **CreateUK8SClusterV2ParamMaster** + - **SecGroupId** (list) - 见 **CreateUK8SClusterV2ParamMasterSecGroupId** 模型定义 + - **Zone** (str) - Master节点所属可用区,需要设置 Master.0.Zone、 Master.1.Zone、Master.2.Zone 三个 Master 节点的可用区。 三个节点可部署在不同可用区。参见 `可用区列表 `_ """ @@ -382,40 +382,22 @@ def create_uk8s_uls_config( **Request Model** - **CreateUK8SULSConfigParamMatchRulePodLabelsLabels** - - **Key** (str) - 按 Pod 标签匹配时,要匹配的标签的 Key。 - - **Value** (str) - 按 Pod 标签匹配时,要匹配的标签的值。 - - **ValueOperator** (str) - 按 Pod 标签匹配时,标签值的匹配操作符。可选值: in, notin。 - - - **CreateUK8SULSConfigParamMatchRulePodLabels** - - **Labels** (list) - 见 **CreateUK8SULSConfigParamMatchRulePodLabelsLabels** 模型定义 - - **Namespace** (str) - 命名空间名称 - - **NamespaceOperator** (str) - 指定/排除命名空间, 可选值: in/notin - - **CreateUK8SULSConfigParamMatchRuleWorkloads** - **Name** (str) - 按工作负载匹配时,工作负载的名称。 - **Namespace** (str) - 按工作负载匹配时,工作负载所在的命名空间。 - **Type** (str) - 按工作负载匹配时,工作负载的类型,例如 deployment, statefulset, daemonset,job, cronjob。 - **CreateUK8SULSConfigParamMatchRule** - - **Container** (str) - 要匹配的容器名称,*表示所有容器,用逗号分隔 - - **ContainerOperator** (str) - 容器名称匹配操作符。支持:in(包含),notin(不包含) - - **PodLabels** (dict) - 见 **CreateUK8SULSConfigParamMatchRulePodLabels** 模型定义 - - **Workloads** (list) - 见 **CreateUK8SULSConfigParamMatchRuleWorkloads** 模型定义 + **CreateUK8SULSConfigParamMatchRulePodLabelsLabels** + - **Key** (str) - 按 Pod 标签匹配时,要匹配的标签的 Key。 + - **Value** (str) - 按 Pod 标签匹配时,要匹配的标签的值。 + - **ValueOperator** (str) - 按 Pod 标签匹配时,标签值的匹配操作符。可选值: in, notin。 **CreateUK8SULSConfigParamExtractRuleExtractRule** - **LogRegexBase64** (str) - Base64 编码的日志提取正则表达式。 - **CreateUK8SULSConfigParamInputDetailMetadata** - - **Container** (str) - 指定具体要采集元数据的容器名。如果留空,则不采集容器的元数据,可选字段:container_name,namespace,pod_name,pod_ip,pod_uid,container_id,image_name。Pod Label 元数据通过指定 InputDetail.Metadata.Labels字段。 - - **Labels** (str) - 定义要采集哪些 Pod 的标签 (Labels)。可选值: * (采集所有标签), "app,version" (仅采集 app 和 version), "" (不采集任何标签)。 - - **CreateUK8SULSConfigParamExtractRule** - **BeginningRegex** (str) - 行首正则表达式。当 logType 为多行模式 (如 multi_line 或 multi_line_full_regex) 时,用于标识一条新日志的开始。 - **BeginningRegexBase64** (str) - Base64 编码的行首正则,优先级高于 BeginningRegex @@ -433,11 +415,29 @@ def create_uk8s_uls_config( - **UnMatchUpload** (str) - 是否上传解析失败的日志。true 表示上传,false 表示丢弃。默认为 false。 + **CreateUK8SULSConfigParamMatchRulePodLabels** + - **Labels** (list) - 见 **CreateUK8SULSConfigParamMatchRulePodLabelsLabels** 模型定义 + - **Namespace** (str) - 命名空间名称 + - **NamespaceOperator** (str) - 指定/排除命名空间, 可选值: in/notin + + + **CreateUK8SULSConfigParamMatchRule** + - **Container** (str) - 要匹配的容器名称,*表示所有容器,用逗号分隔 + - **ContainerOperator** (str) - 容器名称匹配操作符。支持:in(包含),notin(不包含) + - **PodLabels** (dict) - 见 **CreateUK8SULSConfigParamMatchRulePodLabels** 模型定义 + - **Workloads** (list) - 见 **CreateUK8SULSConfigParamMatchRuleWorkloads** 模型定义 + + **CreateUK8SULSConfigParamInputDetailFilePaths** - **File** (str) - 定义采集路径的文件名 - **Path** (str) - 定义采集路径 + **CreateUK8SULSConfigParamInputDetailMetadata** + - **Container** (str) - 指定具体要采集元数据的容器名。如果留空,则不采集容器的元数据,可选字段:container_name,namespace,pod_name,pod_ip,pod_uid,container_id,image_name。Pod Label 元数据通过指定 InputDetail.Metadata.Labels字段。 + - **Labels** (str) - 定义要采集哪些 Pod 的标签 (Labels)。可选值: * (采集所有标签), "app,version" (仅采集 app 和 version), "" (不采集任何标签)。 + + **CreateUK8SULSConfigParamInputDetail** - **FilePaths** (list) - 见 **CreateUK8SULSConfigParamInputDetailFilePaths** 模型定义 - **Metadata** (dict) - 见 **CreateUK8SULSConfigParamInputDetailMetadata** 模型定义 @@ -598,10 +598,17 @@ def describe_uk8s_cluster( **Response Model** - **SecGroupId** - - **Id** (str) - 安全组名称 - - **Name** (str) - 安全组id - - **Priority** (str) - 安全组优先级 + **DiskSet** + - **BackupType** (str) - 备份方案,枚举类型:BASIC_SNAPSHOT,普通快照;DATAARK,方舟。无快照则不返回该字段。 + - **DiskId** (str) - 磁盘长ID + - **DiskType** (str) - LOCAL_NOMAL| CLOUD_NORMAL| LOCAL_SSD| CLOUD_SSD|EXCLUSIVE_LOCAL_DISK + - **Drive** (str) - 磁盘盘符 + - **Encrypted** (str) - Yes: 加密 No: 非加密 + - **IOPS** (int) - 当前主机的IOPS值 + - **IsBoot** (str) - True| False + - **Name** (str) - UDisk名字(仅当磁盘是UDisk时返回) + - **Size** (int) - 磁盘大小,单位: GB + - **Type** (str) - 磁盘类型。系统盘: Boot,数据盘: Data,网络盘:Udisk **IPSet** @@ -617,6 +624,12 @@ def describe_uk8s_cluster( - **VPCId** (str) - IP 所属的 VPC Id + **SecGroupId** + - **Id** (str) - 安全组名称 + - **Name** (str) - 安全组id + - **Priority** (str) - 安全组优先级 + + **Autoscaler** - **Enabled** (int) - 打开/关闭 - **ScaleDownDelayAfterAdd** (str) - 静默时间 @@ -627,19 +640,6 @@ def describe_uk8s_cluster( - **Version** (str) - 伸缩器版本 - **DiskSet** - - **BackupType** (str) - 备份方案,枚举类型:BASIC_SNAPSHOT,普通快照;DATAARK,方舟。无快照则不返回该字段。 - - **DiskId** (str) - 磁盘长ID - - **DiskType** (str) - LOCAL_NOMAL| CLOUD_NORMAL| LOCAL_SSD| CLOUD_SSD|EXCLUSIVE_LOCAL_DISK - - **Drive** (str) - 磁盘盘符 - - **Encrypted** (str) - Yes: 加密 No: 非加密 - - **IOPS** (int) - 当前主机的IOPS值 - - **IsBoot** (str) - True| False - - **Name** (str) - UDisk名字(仅当磁盘是UDisk时返回) - - **Size** (int) - 磁盘大小,单位: GB - - **Type** (str) - 磁盘类型。系统盘: Boot,数据盘: Data,网络盘:Udisk - - **UhostInfo** - **BasicImageName** (str) - 基础镜像名称 - **CPU** (int) - Cpu数量 @@ -662,15 +662,15 @@ def describe_uk8s_cluster( - **Zone** (str) - 所在机房 - **KubeProxy** - - **Mode** (str) - KubeProxy模式,枚举值为[ipvs,iptables] - - **LoopbackClientCert** - **ExpireTime** (int) - 证书到期时间 - **Warn** (bool) - 证书是否进入过期告警状态 + **KubeProxy** + - **Mode** (str) - KubeProxy模式,枚举值为[ipvs,iptables] + + """ # build request d = { @@ -1038,25 +1038,6 @@ def list_uk8s_node_group( **Response Model** - **SecGroupId** - - **Id** (str) - 安全组名称 - - **Name** (str) - 安全组id - - **Priority** (str) - 安全组优先级 - - - **DiskSet** - - **BackupType** (str) - 备份方案,枚举类型:BASIC_SNAPSHOT,普通快照;DATAARK,方舟。无快照则不返回该字段。 - - **DiskId** (str) - 磁盘长ID - - **DiskType** (str) - LOCAL_NOMAL| CLOUD_NORMAL| LOCAL_SSD| CLOUD_SSD|EXCLUSIVE_LOCAL_DISK - - **Drive** (str) - 磁盘盘符 - - **Encrypted** (str) - Yes: 加密 No: 非加密 - - **IOPS** (int) - 当前主机的IOPS值 - - **IsBoot** (str) - True| False - - **Name** (str) - UDisk名字(仅当磁盘是UDisk时返回) - - **Size** (int) - 磁盘大小,单位: GB - - **Type** (str) - 磁盘类型。系统盘: Boot,数据盘: Data,网络盘:Udisk - - **ReservedResource** - **CPU** (str) - CPU - **EphemeralStorage** (str) - 存储 @@ -1064,6 +1045,20 @@ def list_uk8s_node_group( - **Pid** (str) - Pid + **EIP** + - **Bandwidth** (int) - 【若绑定EIP,此参数必填】弹性IP的外网带宽, 单位为Mbps. 共享带宽模式下非必传, 非共享带宽模式必须指定非0Mbps带宽. 各地域非共享带宽的带宽范围如下: 流量计费[1-300],带宽计费[1-800] + - **CouponId** (str) - 当前EIP代金券id。请通过DescribeCoupon接口查询,或登录用户中心查看。 + - **OperatorName** (str) - 【若绑定EIP,此参数必填】弹性IP的线路。枚举值: 国际: International,BGP: Bgp。 各地域允许的线路参数如下: cn-sh1: Bgp cn-sh2: Bgp cn-gd: Bgp cn-bj1: Bgp cn-bj2: Bgp hk: International us-ca: International th-bkk: International kr-seoul:International us-ws:International ge-fra:International sg:International tw-kh:International.其他海外线路均为 International + - **PayMode** (str) - 弹性IP的计费模式. 枚举值: "Traffic", 流量计费; "Bandwidth", 带宽计费; "ShareBandwidth",共享带宽模式. "Free":免费带宽模式,默认为 "Bandwidth" + - **ShareBandwidthId** (str) - 绑定的共享带宽Id,仅当PayMode为ShareBandwidth时有效 + + + **SecGroupId** + - **Id** (str) - 安全组名称 + - **Name** (str) - 安全组id + - **Priority** (str) - 安全组优先级 + + **EvictionCondition** - **ImagefsAvailable** (str) - 镜像文件系统存储相关驱逐条件或宽限时间。 - **MemoryAvailable** (str) - 内存相关驱逐条件或宽限时间。 @@ -1084,18 +1079,23 @@ def list_uk8s_node_group( - **SystemReserved** (dict) - 见 **ReservedResource** 模型定义 - **EIP** - - **Bandwidth** (int) - 【若绑定EIP,此参数必填】弹性IP的外网带宽, 单位为Mbps. 共享带宽模式下非必传, 非共享带宽模式必须指定非0Mbps带宽. 各地域非共享带宽的带宽范围如下: 流量计费[1-300],带宽计费[1-800] - - **CouponId** (str) - 当前EIP代金券id。请通过DescribeCoupon接口查询,或登录用户中心查看。 - - **OperatorName** (str) - 【若绑定EIP,此参数必填】弹性IP的线路。枚举值: 国际: International,BGP: Bgp。 各地域允许的线路参数如下: cn-sh1: Bgp cn-sh2: Bgp cn-gd: Bgp cn-bj1: Bgp cn-bj2: Bgp hk: International us-ca: International th-bkk: International kr-seoul:International us-ws:International ge-fra:International sg:International tw-kh:International.其他海外线路均为 International - - **PayMode** (str) - 弹性IP的计费模式. 枚举值: "Traffic", 流量计费; "Bandwidth", 带宽计费; "ShareBandwidth",共享带宽模式. "Free":免费带宽模式,默认为 "Bandwidth" - - **ShareBandwidthId** (str) - 绑定的共享带宽Id,仅当PayMode为ShareBandwidth时有效 - - **NetworkInterface** - **EIP** (dict) - 见 **EIP** 模型定义 + **DiskSet** + - **BackupType** (str) - 备份方案,枚举类型:BASIC_SNAPSHOT,普通快照;DATAARK,方舟。无快照则不返回该字段。 + - **DiskId** (str) - 磁盘长ID + - **DiskType** (str) - LOCAL_NOMAL| CLOUD_NORMAL| LOCAL_SSD| CLOUD_SSD|EXCLUSIVE_LOCAL_DISK + - **Drive** (str) - 磁盘盘符 + - **Encrypted** (str) - Yes: 加密 No: 非加密 + - **IOPS** (int) - 当前主机的IOPS值 + - **IsBoot** (str) - True| False + - **Name** (str) - UDisk名字(仅当磁盘是UDisk时返回) + - **Size** (int) - 磁盘大小,单位: GB + - **Type** (str) - 磁盘类型。系统盘: Boot,数据盘: Data,网络盘:Udisk + + **NodeGroupSet** - **BootDiskSize** (int) - 系统盘大小 - **BootDiskType** (str) - 系统盘类型 @@ -1171,6 +1171,12 @@ def list_uk8s_uls_config( **Response Model** + **ULSWorkloadMatch** + - **Name** (str) - 工作负载的名称。 + - **Namespace** (str) - 工作负载所在的命名空间。 + - **Type** (str) - 工作负载的类型,例如 deployment, statefulset, daemonset,cronjob,job。 + + **ULSLabels** - **Key** (str) - 要匹配的标签的 Key。 - **Value** (str) - 要匹配的标签的值。 @@ -1183,12 +1189,6 @@ def list_uk8s_uls_config( - **NamespaceOperator** (str) - 命名空间名称的匹配操作符。可选值: in, notin。 - **ULSWorkloadMatch** - - **Name** (str) - 工作负载的名称。 - - **Namespace** (str) - 工作负载所在的命名空间。 - - **Type** (str) - 工作负载的类型,例如 deployment, statefulset, daemonset,cronjob,job。 - - **ULSMatchRule** - **Container** (str) - 要匹配的容器名称,*表示所有容器,用逗号分隔 - **ContainerOperator** (str) - 容器名称匹配操作符。支持:in(包含),notin(不包含) @@ -1314,19 +1314,6 @@ def update_uk8s_uls_config( - **NamespaceOperator** (str) - 按Pod标签匹配时,命名空间名称的匹配操作符。可选值:in、notin。填写该参数时必须同时填写MatchRule.PodLabels.Namespace。PodLabels和Workloads不能同时设置。 - **UpdateUK8SULSConfigParamMatchRuleWorkloads** - - **Name** (str) - 工作负载名称。 - - **Namespace** (str) - 按工作负载匹配时,工作负载所在的命名空间。Workloads和PodLabels不能同时设置。 - - **Type** (str) - 工作负载类型。可选值:deployment、statefulset、daemonset、job、cronjob。 - - - **UpdateUK8SULSConfigParamMatchRule** - - **Container** (str) - 要匹配的容器名称,*表示所有容器,多个名称使用逗号分隔。 - - **ContainerOperator** (str) - 容器名称匹配操作符。可选值:in、notin。填写该参数时必须同时填写MatchRule.Container。 - - **PodLabels** (dict) - 见 **UpdateUK8SULSConfigParamMatchRulePodLabels** 模型定义 - - **Workloads** (list) - 见 **UpdateUK8SULSConfigParamMatchRuleWorkloads** 模型定义 - - **UpdateUK8SULSConfigParamInputDetailFilePaths** - **File** (str) - 要采集的文件名。仅适用于container_file。 - **Path** (str) - 日志采集路径。仅适用于container_file。 @@ -1344,6 +1331,19 @@ def update_uk8s_uls_config( - **Type** (str) - 日志输入类型。可选值:container_file、container_stdout。 + **UpdateUK8SULSConfigParamMatchRuleWorkloads** + - **Name** (str) - 工作负载名称。 + - **Namespace** (str) - 按工作负载匹配时,工作负载所在的命名空间。Workloads和PodLabels不能同时设置。 + - **Type** (str) - 工作负载类型。可选值:deployment、statefulset、daemonset、job、cronjob。 + + + **UpdateUK8SULSConfigParamMatchRule** + - **Container** (str) - 要匹配的容器名称,*表示所有容器,多个名称使用逗号分隔。 + - **ContainerOperator** (str) - 容器名称匹配操作符。可选值:in、notin。填写该参数时必须同时填写MatchRule.Container。 + - **PodLabels** (dict) - 见 **UpdateUK8SULSConfigParamMatchRulePodLabels** 模型定义 + - **Workloads** (list) - 见 **UpdateUK8SULSConfigParamMatchRuleWorkloads** 模型定义 + + **UpdateUK8SULSConfigParamExtractRule** - **BeginningRegex** (str) - 行首正则表达式。multi_line、multi_line_full_regex或multi_line_delimiter模式下,BeginningRegex和BeginningRegexBase64必须至少填写一个。 - **BeginningRegexBase64** (str) - Base64编码的行首正则表达式。填写时优先于BeginningRegex。 diff --git a/ucloud/services/uk8s/schemas/apis.py b/ucloud/services/uk8s/schemas/apis.py index 328b4f9..6395efa 100644 --- a/ucloud/services/uk8s/schemas/apis.py +++ b/ucloud/services/uk8s/schemas/apis.py @@ -150,6 +150,16 @@ class AddUK8SUHostNodeParamNetworkInterfaceEIPSchema(schema.RequestSchema): } +class AddUK8SUHostNodeParamKubeletConfigurationSchema(schema.RequestSchema): + """AddUK8SUHostNodeParamKubeletConfiguration -""" + + fields = { + "ContainerLogMaxFiles": fields.Str( + required=False, dump_to="ContainerLogMaxFiles" + ), + } + + class AddUK8SUHostNodeParamNetworkInterfaceSchema(schema.RequestSchema): """AddUK8SUHostNodeParamNetworkInterface -""" @@ -179,16 +189,6 @@ class AddUK8SUHostNodeParamSecGroupIdSchema(schema.RequestSchema): } -class AddUK8SUHostNodeParamKubeletConfigurationSchema(schema.RequestSchema): - """AddUK8SUHostNodeParamKubeletConfiguration -""" - - fields = { - "ContainerLogMaxFiles": fields.Str( - required=False, dump_to="ContainerLogMaxFiles" - ), - } - - class AddUK8SUHostNodeRequestSchema(schema.RequestSchema): """AddUK8SUHostNode - 为UK8S集群添加一台Node节点,机型类型为云主机""" @@ -266,24 +266,11 @@ class AddUK8SUHostNodeResponseSchema(schema.ResponseSchema): """ -class CreateUK8SClusterV2ParamMasterSecGroupIdSchema(schema.RequestSchema): - """CreateUK8SClusterV2ParamMasterSecGroupId -""" - - fields = { - "Id": fields.Str(required=False, dump_to="Id"), - "Name": fields.Str(required=False, dump_to="Name"), - "Priority": fields.Str(required=False, dump_to="Priority"), - } - - -class CreateUK8SClusterV2ParamMasterSchema(schema.RequestSchema): - """CreateUK8SClusterV2ParamMaster -""" +class CreateUK8SClusterV2ParamKubeProxySchema(schema.RequestSchema): + """CreateUK8SClusterV2ParamKubeProxy -""" fields = { - "SecGroupId": fields.List( - CreateUK8SClusterV2ParamMasterSecGroupIdSchema() - ), - "Zone": fields.Str(required=True, dump_to="Zone"), + "Mode": fields.Str(required=False, dump_to="Mode"), } @@ -364,11 +351,24 @@ class CreateUK8SClusterV2ParamNodesSchema(schema.RequestSchema): } -class CreateUK8SClusterV2ParamKubeProxySchema(schema.RequestSchema): - """CreateUK8SClusterV2ParamKubeProxy -""" +class CreateUK8SClusterV2ParamMasterSecGroupIdSchema(schema.RequestSchema): + """CreateUK8SClusterV2ParamMasterSecGroupId -""" fields = { - "Mode": fields.Str(required=False, dump_to="Mode"), + "Id": fields.Str(required=False, dump_to="Id"), + "Name": fields.Str(required=False, dump_to="Name"), + "Priority": fields.Str(required=False, dump_to="Priority"), + } + + +class CreateUK8SClusterV2ParamMasterSchema(schema.RequestSchema): + """CreateUK8SClusterV2ParamMaster -""" + + fields = { + "SecGroupId": fields.List( + CreateUK8SClusterV2ParamMasterSecGroupIdSchema() + ), + "Zone": fields.Str(required=True, dump_to="Zone"), } @@ -449,32 +449,6 @@ class CreateUK8SClusterV2ResponseSchema(schema.ResponseSchema): """ -class CreateUK8SULSConfigParamMatchRulePodLabelsLabelsSchema( - schema.RequestSchema -): - """CreateUK8SULSConfigParamMatchRulePodLabelsLabels -""" - - fields = { - "Key": fields.Str(required=False, dump_to="Key"), - "Value": fields.Str(required=False, dump_to="Value"), - "ValueOperator": fields.Str(required=False, dump_to="ValueOperator"), - } - - -class CreateUK8SULSConfigParamMatchRulePodLabelsSchema(schema.RequestSchema): - """CreateUK8SULSConfigParamMatchRulePodLabels -""" - - fields = { - "Labels": fields.List( - CreateUK8SULSConfigParamMatchRulePodLabelsLabelsSchema() - ), - "Namespace": fields.Str(required=False, dump_to="Namespace"), - "NamespaceOperator": fields.Str( - required=False, dump_to="NamespaceOperator" - ), - } - - class CreateUK8SULSConfigParamMatchRuleWorkloadsSchema(schema.RequestSchema): """CreateUK8SULSConfigParamMatchRuleWorkloads -""" @@ -485,20 +459,15 @@ class CreateUK8SULSConfigParamMatchRuleWorkloadsSchema(schema.RequestSchema): } -class CreateUK8SULSConfigParamMatchRuleSchema(schema.RequestSchema): - """CreateUK8SULSConfigParamMatchRule -""" +class CreateUK8SULSConfigParamMatchRulePodLabelsLabelsSchema( + schema.RequestSchema +): + """CreateUK8SULSConfigParamMatchRulePodLabelsLabels -""" fields = { - "Container": fields.Str(required=False, dump_to="Container"), - "ContainerOperator": fields.Str( - required=False, dump_to="ContainerOperator" - ), - "PodLabels": CreateUK8SULSConfigParamMatchRulePodLabelsSchema( - required=False, dump_to="PodLabels" - ), - "Workloads": fields.List( - CreateUK8SULSConfigParamMatchRuleWorkloadsSchema() - ), + "Key": fields.Str(required=False, dump_to="Key"), + "Value": fields.Str(required=False, dump_to="Value"), + "ValueOperator": fields.Str(required=False, dump_to="ValueOperator"), } @@ -512,15 +481,6 @@ class CreateUK8SULSConfigParamExtractRuleExtractRuleSchema( } -class CreateUK8SULSConfigParamInputDetailMetadataSchema(schema.RequestSchema): - """CreateUK8SULSConfigParamInputDetailMetadata -""" - - fields = { - "Container": fields.Str(required=False, dump_to="Container"), - "Labels": fields.Str(required=False, dump_to="Labels"), - } - - class CreateUK8SULSConfigParamExtractRuleSchema(schema.RequestSchema): """CreateUK8SULSConfigParamExtractRule -""" @@ -548,6 +508,37 @@ class CreateUK8SULSConfigParamExtractRuleSchema(schema.RequestSchema): } +class CreateUK8SULSConfigParamMatchRulePodLabelsSchema(schema.RequestSchema): + """CreateUK8SULSConfigParamMatchRulePodLabels -""" + + fields = { + "Labels": fields.List( + CreateUK8SULSConfigParamMatchRulePodLabelsLabelsSchema() + ), + "Namespace": fields.Str(required=False, dump_to="Namespace"), + "NamespaceOperator": fields.Str( + required=False, dump_to="NamespaceOperator" + ), + } + + +class CreateUK8SULSConfigParamMatchRuleSchema(schema.RequestSchema): + """CreateUK8SULSConfigParamMatchRule -""" + + fields = { + "Container": fields.Str(required=False, dump_to="Container"), + "ContainerOperator": fields.Str( + required=False, dump_to="ContainerOperator" + ), + "PodLabels": CreateUK8SULSConfigParamMatchRulePodLabelsSchema( + required=False, dump_to="PodLabels" + ), + "Workloads": fields.List( + CreateUK8SULSConfigParamMatchRuleWorkloadsSchema() + ), + } + + class CreateUK8SULSConfigParamInputDetailFilePathsSchema(schema.RequestSchema): """CreateUK8SULSConfigParamInputDetailFilePaths -""" @@ -557,6 +548,15 @@ class CreateUK8SULSConfigParamInputDetailFilePathsSchema(schema.RequestSchema): } +class CreateUK8SULSConfigParamInputDetailMetadataSchema(schema.RequestSchema): + """CreateUK8SULSConfigParamInputDetailMetadata -""" + + fields = { + "Container": fields.Str(required=False, dump_to="Container"), + "Labels": fields.Str(required=False, dump_to="Labels"), + } + + class CreateUK8SULSConfigParamInputDetailSchema(schema.RequestSchema): """CreateUK8SULSConfigParamInputDetail -""" @@ -1120,33 +1120,6 @@ class UpdateUK8SULSConfigParamMatchRulePodLabelsSchema(schema.RequestSchema): } -class UpdateUK8SULSConfigParamMatchRuleWorkloadsSchema(schema.RequestSchema): - """UpdateUK8SULSConfigParamMatchRuleWorkloads -""" - - fields = { - "Name": fields.Str(required=False, dump_to="Name"), - "Namespace": fields.Str(required=False, dump_to="Namespace"), - "Type": fields.Str(required=False, dump_to="Type"), - } - - -class UpdateUK8SULSConfigParamMatchRuleSchema(schema.RequestSchema): - """UpdateUK8SULSConfigParamMatchRule -""" - - fields = { - "Container": fields.Str(required=False, dump_to="Container"), - "ContainerOperator": fields.Str( - required=False, dump_to="ContainerOperator" - ), - "PodLabels": UpdateUK8SULSConfigParamMatchRulePodLabelsSchema( - required=False, dump_to="PodLabels" - ), - "Workloads": fields.List( - UpdateUK8SULSConfigParamMatchRuleWorkloadsSchema() - ), - } - - class UpdateUK8SULSConfigParamInputDetailFilePathsSchema(schema.RequestSchema): """UpdateUK8SULSConfigParamInputDetailFilePaths -""" @@ -1180,6 +1153,33 @@ class UpdateUK8SULSConfigParamInputDetailSchema(schema.RequestSchema): } +class UpdateUK8SULSConfigParamMatchRuleWorkloadsSchema(schema.RequestSchema): + """UpdateUK8SULSConfigParamMatchRuleWorkloads -""" + + fields = { + "Name": fields.Str(required=False, dump_to="Name"), + "Namespace": fields.Str(required=False, dump_to="Namespace"), + "Type": fields.Str(required=False, dump_to="Type"), + } + + +class UpdateUK8SULSConfigParamMatchRuleSchema(schema.RequestSchema): + """UpdateUK8SULSConfigParamMatchRule -""" + + fields = { + "Container": fields.Str(required=False, dump_to="Container"), + "ContainerOperator": fields.Str( + required=False, dump_to="ContainerOperator" + ), + "PodLabels": UpdateUK8SULSConfigParamMatchRulePodLabelsSchema( + required=False, dump_to="PodLabels" + ), + "Workloads": fields.List( + UpdateUK8SULSConfigParamMatchRuleWorkloadsSchema() + ), + } + + class UpdateUK8SULSConfigParamExtractRuleSchema(schema.RequestSchema): """UpdateUK8SULSConfigParamExtractRule -""" diff --git a/ucloud/services/uk8s/schemas/models.py b/ucloud/services/uk8s/schemas/models.py index 65ad144..6e20855 100644 --- a/ucloud/services/uk8s/schemas/models.py +++ b/ucloud/services/uk8s/schemas/models.py @@ -3,20 +3,22 @@ from ucloud.core.typesystem import schema, fields -class DiskSetSchema(schema.ResponseSchema): - """DiskSet - 节点磁盘信息""" +class IPSetSchema(schema.ResponseSchema): + """IPSet - 节点的IP信息""" fields = { - "BackupType": fields.Str(required=False, load_from="BackupType"), - "DiskId": fields.Str(required=False, load_from="DiskId"), - "DiskType": fields.Str(required=False, load_from="DiskType"), - "Drive": fields.Str(required=False, load_from="Drive"), - "Encrypted": fields.Str(required=False, load_from="Encrypted"), - "IOPS": fields.Int(required=False, load_from="IOPS"), - "IsBoot": fields.Str(required=False, load_from="IsBoot"), - "Name": fields.Str(required=False, load_from="Name"), - "Size": fields.Int(required=False, load_from="Size"), + "Bandwidth": fields.Int(required=False, load_from="Bandwidth"), + "Default": fields.Str(required=False, load_from="Default"), + "IP": fields.Str(required=False, load_from="IP"), + "IPId": fields.Str(required=False, load_from="IPId"), + "IPMode": fields.Str(required=False, load_from="IPMode"), + "Mac": fields.Str(required=False, load_from="Mac"), + "NetworkInterfaceId": fields.Str( + required=False, load_from="NetworkInterfaceId" + ), + "SubnetId": fields.Str(required=False, load_from="SubnetId"), "Type": fields.Str(required=False, load_from="Type"), + "VPCId": fields.Str(required=False, load_from="VPCId"), } @@ -30,22 +32,20 @@ class SecGroupIdSchema(schema.ResponseSchema): } -class IPSetSchema(schema.ResponseSchema): - """IPSet - 节点的IP信息""" +class DiskSetSchema(schema.ResponseSchema): + """DiskSet - 节点磁盘信息""" fields = { - "Bandwidth": fields.Int(required=False, load_from="Bandwidth"), - "Default": fields.Str(required=False, load_from="Default"), - "IP": fields.Str(required=False, load_from="IP"), - "IPId": fields.Str(required=False, load_from="IPId"), - "IPMode": fields.Str(required=False, load_from="IPMode"), - "Mac": fields.Str(required=False, load_from="Mac"), - "NetworkInterfaceId": fields.Str( - required=False, load_from="NetworkInterfaceId" - ), - "SubnetId": fields.Str(required=False, load_from="SubnetId"), + "BackupType": fields.Str(required=False, load_from="BackupType"), + "DiskId": fields.Str(required=False, load_from="DiskId"), + "DiskType": fields.Str(required=False, load_from="DiskType"), + "Drive": fields.Str(required=False, load_from="Drive"), + "Encrypted": fields.Str(required=False, load_from="Encrypted"), + "IOPS": fields.Int(required=False, load_from="IOPS"), + "IsBoot": fields.Str(required=False, load_from="IsBoot"), + "Name": fields.Str(required=False, load_from="Name"), + "Size": fields.Int(required=False, load_from="Size"), "Type": fields.Str(required=False, load_from="Type"), - "VPCId": fields.Str(required=False, load_from="VPCId"), } @@ -75,6 +75,23 @@ class UhostInfoSchema(schema.ResponseSchema): } +class KubeProxySchema(schema.ResponseSchema): + """KubeProxy - KubeProxy信息""" + + fields = { + "Mode": fields.Str(required=False, load_from="Mode"), + } + + +class LoopbackClientCertSchema(schema.ResponseSchema): + """LoopbackClientCert - API Server 回环客户端证书""" + + fields = { + "ExpireTime": fields.Int(required=False, load_from="ExpireTime"), + "Warn": fields.Bool(required=False, load_from="Warn"), + } + + class AutoscalerSchema(schema.ResponseSchema): """Autoscaler -""" @@ -97,23 +114,6 @@ class AutoscalerSchema(schema.ResponseSchema): } -class LoopbackClientCertSchema(schema.ResponseSchema): - """LoopbackClientCert - API Server 回环客户端证书""" - - fields = { - "ExpireTime": fields.Int(required=False, load_from="ExpireTime"), - "Warn": fields.Bool(required=False, load_from="Warn"), - } - - -class KubeProxySchema(schema.ResponseSchema): - """KubeProxy - KubeProxy信息""" - - fields = { - "Mode": fields.Str(required=False, load_from="Mode"), - } - - class ImageInfoSchema(schema.ResponseSchema): """ImageInfo - UK8S 可用镜像信息""" @@ -267,25 +267,16 @@ class ClusterSetSchema(schema.ResponseSchema): } -class EIPSchema(schema.ResponseSchema): - """EIP - 节点EIP""" +class ReservedResourceSchema(schema.ResponseSchema): + """ReservedResource - 预留资源""" fields = { - "Bandwidth": fields.Int(required=False, load_from="Bandwidth"), - "CouponId": fields.Str(required=False, load_from="CouponId"), - "OperatorName": fields.Str(required=False, load_from="OperatorName"), - "PayMode": fields.Str(required=False, load_from="PayMode"), - "ShareBandwidthId": fields.Str( - required=False, load_from="ShareBandwidthId" + "CPU": fields.Str(required=False, load_from="CPU"), + "EphemeralStorage": fields.Str( + required=False, load_from="EphemeralStorage" ), - } - - -class NetworkInterfaceSchema(schema.ResponseSchema): - """NetworkInterface - 网络接口""" - - fields = { - "EIP": EIPSchema(), + "Memory": fields.Str(required=False, load_from="Memory"), + "Pid": fields.Str(required=False, load_from="Pid"), } @@ -308,16 +299,25 @@ class EvictionConditionSchema(schema.ResponseSchema): } -class ReservedResourceSchema(schema.ResponseSchema): - """ReservedResource - 预留资源""" +class EIPSchema(schema.ResponseSchema): + """EIP - 节点EIP""" fields = { - "CPU": fields.Str(required=False, load_from="CPU"), - "EphemeralStorage": fields.Str( - required=False, load_from="EphemeralStorage" + "Bandwidth": fields.Int(required=False, load_from="Bandwidth"), + "CouponId": fields.Str(required=False, load_from="CouponId"), + "OperatorName": fields.Str(required=False, load_from="OperatorName"), + "PayMode": fields.Str(required=False, load_from="PayMode"), + "ShareBandwidthId": fields.Str( + required=False, load_from="ShareBandwidthId" ), - "Memory": fields.Str(required=False, load_from="Memory"), - "Pid": fields.Str(required=False, load_from="Pid"), + } + + +class NetworkInterfaceSchema(schema.ResponseSchema): + """NetworkInterface - 网络接口""" + + fields = { + "EIP": EIPSchema(), } @@ -402,51 +402,6 @@ class NodeGroupSetSchema(schema.ResponseSchema): } -class ULSLabelsSchema(schema.ResponseSchema): - """ULSLabels - ULSLabels""" - - fields = { - "Key": fields.Str(required=False, load_from="Key"), - "Value": fields.Str(required=False, load_from="Value"), - "ValueOperator": fields.Str(required=False, load_from="ValueOperator"), - } - - -class ULSPodLabelsMatchSchema(schema.ResponseSchema): - """ULSPodLabelsMatch - ULSPodLabelsMatch""" - - fields = { - "Labels": fields.List(ULSLabelsSchema()), - "Namespace": fields.Str(required=False, load_from="Namespace"), - "NamespaceOperator": fields.Str( - required=False, load_from="NamespaceOperator" - ), - } - - -class ULSWorkloadMatchSchema(schema.ResponseSchema): - """ULSWorkloadMatch - ULSWorkloadMatch""" - - fields = { - "Name": fields.Str(required=False, load_from="Name"), - "Namespace": fields.Str(required=False, load_from="Namespace"), - "Type": fields.Str(required=False, load_from="Type"), - } - - -class ULSMatchRuleSchema(schema.ResponseSchema): - """ULSMatchRule - ULSMatchRule""" - - fields = { - "Container": fields.Str(required=True, load_from="Container"), - "ContainerOperator": fields.Str( - required=True, load_from="ContainerOperator" - ), - "PodLabels": ULSPodLabelsMatchSchema(), - "Workloads": fields.List(ULSWorkloadMatchSchema()), - } - - class ULSExtractRuleSchema(schema.ResponseSchema): """ULSExtractRule - 定义日志的提取、解析和格式化规则。""" @@ -476,21 +431,21 @@ class ULSExtractRuleSchema(schema.ResponseSchema): } -class ULSFilePathsSchema(schema.ResponseSchema): - """ULSFilePaths - ULS采集文件路径""" +class ULSInputMetadataSchema(schema.ResponseSchema): + """ULSInputMetadata - ULSInputMetadata""" fields = { - "File": fields.Str(required=False, load_from="File"), - "Path": fields.Str(required=False, load_from="Path"), + "Container": fields.Str(required=False, load_from="Container"), + "Labels": fields.Str(required=False, load_from="Labels"), } -class ULSInputMetadataSchema(schema.ResponseSchema): - """ULSInputMetadata - ULSInputMetadata""" +class ULSFilePathsSchema(schema.ResponseSchema): + """ULSFilePaths - ULS采集文件路径""" fields = { - "Container": fields.Str(required=False, load_from="Container"), - "Labels": fields.Str(required=False, load_from="Labels"), + "File": fields.Str(required=False, load_from="File"), + "Path": fields.Str(required=False, load_from="Path"), } @@ -505,6 +460,51 @@ class ULSInputDetailSchema(schema.ResponseSchema): } +class ULSLabelsSchema(schema.ResponseSchema): + """ULSLabels - ULSLabels""" + + fields = { + "Key": fields.Str(required=False, load_from="Key"), + "Value": fields.Str(required=False, load_from="Value"), + "ValueOperator": fields.Str(required=False, load_from="ValueOperator"), + } + + +class ULSPodLabelsMatchSchema(schema.ResponseSchema): + """ULSPodLabelsMatch - ULSPodLabelsMatch""" + + fields = { + "Labels": fields.List(ULSLabelsSchema()), + "Namespace": fields.Str(required=False, load_from="Namespace"), + "NamespaceOperator": fields.Str( + required=False, load_from="NamespaceOperator" + ), + } + + +class ULSWorkloadMatchSchema(schema.ResponseSchema): + """ULSWorkloadMatch - ULSWorkloadMatch""" + + fields = { + "Name": fields.Str(required=False, load_from="Name"), + "Namespace": fields.Str(required=False, load_from="Namespace"), + "Type": fields.Str(required=False, load_from="Type"), + } + + +class ULSMatchRuleSchema(schema.ResponseSchema): + """ULSMatchRule - ULSMatchRule""" + + fields = { + "Container": fields.Str(required=True, load_from="Container"), + "ContainerOperator": fields.Str( + required=True, load_from="ContainerOperator" + ), + "PodLabels": ULSPodLabelsMatchSchema(), + "Workloads": fields.List(ULSWorkloadMatchSchema()), + } + + class ULSLogConfigSchema(schema.ResponseSchema): """ULSLogConfig - ULSLogConfig""" diff --git a/ucloud/services/ulb/client.py b/ucloud/services/ulb/client.py index 169a8ec..e0c236a 100644 --- a/ucloud/services/ulb/client.py +++ b/ucloud/services/ulb/client.py @@ -242,6 +242,12 @@ def create_listener( **Request Model** + **CreateListenerParamStickinessConfig** + - **CookieName** (str) - (应用型专用)自定义Cookie。当StickinessType取值"UserDefined"时有效;限定字符长度:[0-255] + - **Enabled** (bool) - 是否开启会话保持功能。应用型负载均衡实例基于Cookie实现;默认值为:false + - **Type** (str) - (应用型专用)Cookie处理方式。限定枚举值:"ServerInsert" / "UserDefined";默认值为:“ServerInsert” + + **CreateListenerParamHealthCheckConfig** - **Domain** (str) - (应用型专用)HTTP/GRPC检查域名 - **DownCounts** (int) - (应用型专用)判定失败的连续次数 @@ -257,12 +263,6 @@ def create_listener( - **UpCounts** (int) - (应用型专用)判定成功的连续次数 - **CreateListenerParamStickinessConfig** - - **CookieName** (str) - (应用型专用)自定义Cookie。当StickinessType取值"UserDefined"时有效;限定字符长度:[0-255] - - **Enabled** (bool) - 是否开启会话保持功能。应用型负载均衡实例基于Cookie实现;默认值为:false - - **Type** (str) - (应用型专用)Cookie处理方式。限定枚举值:"ServerInsert" / "UserDefined";默认值为:“ServerInsert” - - """ # build request d = { @@ -306,16 +306,16 @@ def create_load_balancer( **Request Model** - **CreateLoadBalancerParamSecGroups** - - **Priority** (int) - 安全组优先级 - - **SecGroupId** (str) - 安全组id - - **CreateLoadBalancerParamLabelInfos** - **Key** (str) - 标签键 - **Value** (str) - 标签值 + **CreateLoadBalancerParamSecGroups** + - **Priority** (int) - 安全组优先级 + - **SecGroupId** (str) - 安全组id + + """ # build request d = { @@ -386,17 +386,17 @@ def create_rule(self, req: typing.Optional[dict] = None, **kwargs) -> dict: **Request Model** - **CreateRuleParamRuleActionsForwardConfigTargets** - - **Id** (str) - 转发的后端服务节点的标识ID。限定在监听器的服务节点池里;数组长度可以是0;转发服务节点配置的数组长度不为0时,Id必填 - - **Weight** (int) - 转发的后端服务节点的权重。仅监听器负载均衡算法是加权轮询是有效 + **CreateRuleParamRuleActionsBackendConnectionConfig** + - **EnablePersistentConnection** (bool) - 开启长连接 - **CreateRuleParamRuleActionsForwardConfig** - - **Targets** (list) - 见 **CreateRuleParamRuleActionsForwardConfigTargets** 模型定义 + **CreateRuleParamRuleActionsFixedResponseConfig** + - **Content** (str) - 返回的固定内容。最大支持存储 1 KB,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。 + - **HttpCode** (int) - 返回的 HTTP 响应码,仅支持 2xx、4xx、5xx 数字,x 为任意数字。 - **CreateRuleParamRuleActionsProxyBufferingConfig** - - **CloseProxyBuffering** (bool) - 关闭缓存 + **CreateRuleParamRuleConditionsPathConfig** + - **Values** (list) - 取值。暂时只支持数组长度为1;取值需符合相关条件;路径匹配时必填 **CreateRuleParamRuleConditionsHostConfig** @@ -404,36 +404,36 @@ def create_rule(self, req: typing.Optional[dict] = None, **kwargs) -> dict: - **Values** (list) - 取值。暂时只支持数组长度为1;取值需符合相关匹配方式的条件;域名匹配时必填 - **CreateRuleParamRuleActionsInsertHeaderConfig** - - **Key** (str) - 插入的 header 字段名称,长度为 1~40 个字符,支持大小写字母 a~z、数字、下划线(_)和短划线(-)。头字段名称不能重复用于InsertHeader中。header 字段不能使用以下(此处判断大小写不敏感)x-real-ip、x-forwarded-for、x-forwarded-proto、x-forwarded-srcport、ucloud-alb-trace、connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority - - **Value** (str) - 插入的 header 字段内容。ValueType 取值为 SystemDefined 时取值如下:ClientSrcPort:客户端端口。ClientSrcIp:客户端 IP 地址。Protocol:客户端请求的协议(HTTP 或 HTTPS)。RuleID:客户端请求命中的转发规则ID。ALBID:ALB ID。ALBPort:ALB 端口。ValueType 取值为 UserDefined 时:可以自定义头字段内容,限制长度为 1~128 个字符,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。ValueType 取值为 ReferenceHeader 时:可以引用请求头字段中的某一个字段,限制长度限制为 1~128 个字符,支持小写字母 a~z、数字、短划线(-)和下划线(_)。 - - **ValueType** (str) - 头字段内容类型。取值:UserDefined:用户指定。ReferenceHeader:引用用户请求头中的某一个字段。SystemDefined:系统定义。 + **CreateRuleParamRuleActionsForwardConfigTargets** + - **Id** (str) - 转发的后端服务节点的标识ID。限定在监听器的服务节点池里;数组长度可以是0;转发服务节点配置的数组长度不为0时,Id必填 + - **Weight** (int) - 转发的后端服务节点的权重。仅监听器负载均衡算法是加权轮询是有效 - **CreateRuleParamRuleActionsRemoveHeaderConfig** - - **Key** (str) - 删除的 header 字段名称,目前只能删除以下几个默认配置的字段X-Real-IP、X-Forwarded-For、X-Forwarded-Proto、X-Forwarded-SrcPort + **CreateRuleParamRuleActionsCorsConfig** + - **AllowCredentials** (str) - 是否允许携带凭证信息。取值:on:是。off:否。 + - **AllowHeaders** (list) - 允许跨域的 Header 列表。支持配置为*或配置一个或多个 value 值。单个 value 值只允许包含大小写字母、数字,不能以下划线(_)和短划线(-)开头或结尾,最大长度限制为 32 个字符。最多支持20个值 + - **AllowMethods** (list) - 选择跨域访问时允许的 HTTP 方法。取值:GET。POST。PUT。DELETE。HEAD。OPTIONS。PATCH。 + - **AllowOrigin** (list) - 允许的访问来源列表。支持只配置一个元素*,或配置一个或多个值。单个值必须以http://或者https://开头,后边加一个正确的域名或一级泛域名。(例:http://*.test.abc.example.com)单个值可以不加端口,也可以指定端口,端口范围:1~65535。最多支持5个值 + - **ExposeHeaders** (list) - 允许暴露的 Header 列表。支持配置为*或配置一个或多个 value 值。单个 value 值只允许包含大小写字母、数字,不能以下划线(_)和短划线(-)开头或结尾,最大长度限制为 32 个字符。最多支持20个值 + - **MaxAge** (int) - 预检请求在浏览器的最大缓存时间,单位:秒。取值范围:-1~172800。 - **CreateRuleParamRuleActionsBackendConnectionConfig** - - **EnablePersistentConnection** (bool) - 开启长连接 + **CreateRuleParamRuleActionsInsertHeaderConfig** + - **Key** (str) - 插入的 header 字段名称,长度为 1~40 个字符,支持大小写字母 a~z、数字、下划线(_)和短划线(-)。头字段名称不能重复用于InsertHeader中。header 字段不能使用以下(此处判断大小写不敏感)x-real-ip、x-forwarded-for、x-forwarded-proto、x-forwarded-srcport、ucloud-alb-trace、connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority + - **Value** (str) - 插入的 header 字段内容。ValueType 取值为 SystemDefined 时取值如下:ClientSrcPort:客户端端口。ClientSrcIp:客户端 IP 地址。Protocol:客户端请求的协议(HTTP 或 HTTPS)。RuleID:客户端请求命中的转发规则ID。ALBID:ALB ID。ALBPort:ALB 端口。ValueType 取值为 UserDefined 时:可以自定义头字段内容,限制长度为 1~128 个字符,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。ValueType 取值为 ReferenceHeader 时:可以引用请求头字段中的某一个字段,限制长度限制为 1~128 个字符,支持小写字母 a~z、数字、短划线(-)和下划线(_)。 + - **ValueType** (str) - 头字段内容类型。取值:UserDefined:用户指定。ReferenceHeader:引用用户请求头中的某一个字段。SystemDefined:系统定义。 - **CreateRuleParamRuleActionsFixedResponseConfig** - - **Content** (str) - 返回的固定内容。最大支持存储 1 KB,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。 - - **HttpCode** (int) - 返回的 HTTP 响应码,仅支持 2xx、4xx、5xx 数字,x 为任意数字。 + **CreateRuleParamRuleActionsProxyBufferingConfig** + - **CloseProxyBuffering** (bool) - 关闭缓存 - **CreateRuleParamRuleConditionsPathConfig** - - **Values** (list) - 取值。暂时只支持数组长度为1;取值需符合相关条件;路径匹配时必填 + **CreateRuleParamRuleActionsRemoveHeaderConfig** + - **Key** (str) - 删除的 header 字段名称,目前只能删除以下几个默认配置的字段X-Real-IP、X-Forwarded-For、X-Forwarded-Proto、X-Forwarded-SrcPort - **CreateRuleParamRuleActionsCorsConfig** - - **AllowCredentials** (str) - 是否允许携带凭证信息。取值:on:是。off:否。 - - **AllowHeaders** (list) - 允许跨域的 Header 列表。支持配置为*或配置一个或多个 value 值。单个 value 值只允许包含大小写字母、数字,不能以下划线(_)和短划线(-)开头或结尾,最大长度限制为 32 个字符。最多支持20个值 - - **AllowMethods** (list) - 选择跨域访问时允许的 HTTP 方法。取值:GET。POST。PUT。DELETE。HEAD。OPTIONS。PATCH。 - - **AllowOrigin** (list) - 允许的访问来源列表。支持只配置一个元素*,或配置一个或多个值。单个值必须以http://或者https://开头,后边加一个正确的域名或一级泛域名。(例:http://*.test.abc.example.com)单个值可以不加端口,也可以指定端口,端口范围:1~65535。最多支持5个值 - - **ExposeHeaders** (list) - 允许暴露的 Header 列表。支持配置为*或配置一个或多个 value 值。单个 value 值只允许包含大小写字母、数字,不能以下划线(_)和短划线(-)开头或结尾,最大长度限制为 32 个字符。最多支持20个值 - - **MaxAge** (int) - 预检请求在浏览器的最大缓存时间,单位:秒。取值范围:-1~172800。 + **CreateRuleParamRuleActionsForwardConfig** + - **Targets** (list) - 见 **CreateRuleParamRuleActionsForwardConfigTargets** 模型定义 **CreateRuleParamRuleActions** @@ -879,11 +879,38 @@ def describe_listeners( **Response Model** + **RemoveHeaderConfigSet** + - **Key** (str) - 删除的 header 字段名称,目前只能删除以下几个默认配置的字段: X-Real-IP、X-Forwarded-For、X-Forwarded-Proto、X-Forwarded-SrcPort + + **ForwardTargetSet** - **Id** (str) - 服务节点的标识ID - **Weight** (int) - 权重。仅监听器负载均衡算法是加权轮询是有效;取值范围[1-100],默认值为1 + **ForwardConfigSet** + - **Targets** (list) - 见 **ForwardTargetSet** 模型定义 + + + **PathConfigSet** + - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 + + + **HealthCheckConfigSet** + - **Domain** (str) - (应用型专用)HTTP检查域名。 当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查域名 + - **DownCounts** (int) - (应用型专用)判定失败的连续次数 + - **Enabled** (bool) - 是否开启健康检查功能。 默认值为:true + - **HTTPVersion** (str) - (应用型专用)检查协议 + - **Interval** (int) - (应用型专用)间隔时间,秒,必须大于TimeOut + - **Method** (str) - (应用型专用)HTTP检查方法。当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查方法 + - **Path** (str) - (应用型专用)HTTP检查路径。当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查路径 + - **Port** (int) - (应用型专用)端口 + - **ResponseCode** (str) - (应用型专用)检查预期状态码。HTTP时为2xx,3xx格式(逗号分隔),GRPC时为数字码(逗号分隔)。 + - **TimeOut** (int) - (应用型专用)超时时间,秒,必须小于Interval + - **Type** (str) - 健康检查方式。应用型限定取值: Port -> 端口检查;HTTP -> HTTP检查;GRPC -> GRPC检测; 默认值:Port + - **UpCounts** (int) - (应用型专用)判定成功的连续次数 + + **Target** - **Enabled** (bool) - 服务节点是否启用 - **Id** (str) - 服务节点的标识ID。为ALB/NLB中使用,与资源自身ID无关,可用于UpdateTargetsAttribute/RemoveTargets @@ -899,19 +926,14 @@ def describe_listeners( - **Weight** (int) - 服务节点的权重。仅在加权轮询算法时有效 - **HostConfigSet** - - **MatchMode** (str) - 匹配方式。限定枚举值:Regular-正则,Wildcard-泛域名; 默认值:Regular - - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 - - - **PathConfigSet** - - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 + **BackendConnectionConfig** + - **EnablePersistentConnection** (bool) - 是否开启长连接 - **RuleCondition** - - **HostConfig** (dict) - 见 **HostConfigSet** 模型定义 - - **PathConfig** (dict) - 见 **PathConfigSet** 模型定义 - - **Type** (str) - 匹配条件类型。限定枚举值:Host,Path + **InsertHeaderConfigSet** + - **Key** (str) - 插入的 header 字段名称,长度为 1~40 个字符,支持大小写字母 a~z、数字、下划线(_)和短划线(-)。头字段名称不能重复用于InsertHeader中。header 字段不能使用以下(此处判断大小写不敏感)x-real-ip、x-forwarded-for、x-forwarded-proto、x-forwarded-srcport、ucloud-alb-trace、connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority + - **Value** (str) - 插入的 header 字段内容。ValueType 取值为 SystemDefined 时取值如下:ClientSrcPort:客户端端口。ClientSrcIp:客户端 IP 地址。Protocol:客户端请求的协议(HTTP 或 HTTPS)。RuleID:客户端请求命中的转发规则ID。ALBID:ALB ID。ALBPort:ALB 端口。ValueType 取值为 UserDefined 时:可以自定义头字段内容,限制长度为 1~128 个字符,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。ValueType 取值为 ReferenceHeader 时:可以引用请求头字段中的某一个字段,限制长度限制为 1~128 个字符,支持小写字母 a~z、数字、短划线(-)和下划线(_)。 + - **ValueType** (str) - 头字段内容类型。取值:UserDefined:用户指定。ReferenceHeader:引用用户请求头中的某一个字段。SystemDefined:系统定义。 **CorsConfigSet** @@ -923,33 +945,15 @@ def describe_listeners( - **MaxAge** (int) - 预检请求在浏览器的最大缓存时间,单位:秒。取值范围:-1~172800。 - **InsertHeaderConfigSet** - - **Key** (str) - 插入的 header 字段名称,长度为 1~40 个字符,支持大小写字母 a~z、数字、下划线(_)和短划线(-)。头字段名称不能重复用于InsertHeader中。header 字段不能使用以下(此处判断大小写不敏感)x-real-ip、x-forwarded-for、x-forwarded-proto、x-forwarded-srcport、ucloud-alb-trace、connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority - - **Value** (str) - 插入的 header 字段内容。ValueType 取值为 SystemDefined 时取值如下:ClientSrcPort:客户端端口。ClientSrcIp:客户端 IP 地址。Protocol:客户端请求的协议(HTTP 或 HTTPS)。RuleID:客户端请求命中的转发规则ID。ALBID:ALB ID。ALBPort:ALB 端口。ValueType 取值为 UserDefined 时:可以自定义头字段内容,限制长度为 1~128 个字符,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。ValueType 取值为 ReferenceHeader 时:可以引用请求头字段中的某一个字段,限制长度限制为 1~128 个字符,支持小写字母 a~z、数字、短划线(-)和下划线(_)。 - - **ValueType** (str) - 头字段内容类型。取值:UserDefined:用户指定。ReferenceHeader:引用用户请求头中的某一个字段。SystemDefined:系统定义。 - - - **RemoveHeaderConfigSet** - - **Key** (str) - 删除的 header 字段名称,目前只能删除以下几个默认配置的字段: X-Real-IP、X-Forwarded-For、X-Forwarded-Proto、X-Forwarded-SrcPort - - **FixedResponseConfigSet** - **Content** (str) - 返回的固定内容。最大支持存储 1 KB,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。 - **HttpCode** (int) - 返回的 HTTP 响应码,仅支持 2xx、4xx、5xx 数字,x 为任意数字。 - **ForwardConfigSet** - - **Targets** (list) - 见 **ForwardTargetSet** 模型定义 - - **ProxyBufferingConfig** - **CloseProxyBuffering** (bool) - 关闭缓存 - **BackendConnectionConfig** - - **EnablePersistentConnection** (bool) - 是否开启长连接 - - **RuleAction** - **BackendConnectionConfig** (dict) - 见 **BackendConnectionConfig** 模型定义 - **CorsConfig** (dict) - 见 **CorsConfigSet** 模型定义 @@ -962,6 +966,23 @@ def describe_listeners( - **Type** (str) - 动作类型。限定枚举值:Forward、"InsertHeader"、"Cors"、"FixedResponse"、"RemoveHeader" + **StickinessConfigSet** + - **CookieName** (str) - (应用型专用)自定义Cookie。当StickinessType取值"UserDefined"时有效 + - **Enabled** (bool) - 是否开启会话保持功能。应用型负载均衡实例基于Cookie实现 + - **Type** (str) - (应用型专用)Cookie处理方式。限定枚举值: ServerInsert -> 自动生成KEY;UserDefined -> 用户自定义KEY + + + **HostConfigSet** + - **MatchMode** (str) - 匹配方式。限定枚举值:Regular-正则,Wildcard-泛域名; 默认值:Regular + - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 + + + **RuleCondition** + - **HostConfig** (dict) - 见 **HostConfigSet** 模型定义 + - **PathConfig** (dict) - 见 **PathConfigSet** 模型定义 + - **Type** (str) - 匹配条件类型。限定枚举值:Host,Path + + **Rule** - **IsDefault** (bool) - 是否为默认转发规则 - **Pass** (bool) - 当转发的服务节点为空时,规则是否忽略 @@ -970,27 +991,6 @@ def describe_listeners( - **RuleId** (str) - 转发规则的ID - **HealthCheckConfigSet** - - **Domain** (str) - (应用型专用)HTTP检查域名。 当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查域名 - - **DownCounts** (int) - (应用型专用)判定失败的连续次数 - - **Enabled** (bool) - 是否开启健康检查功能。 默认值为:true - - **HTTPVersion** (str) - (应用型专用)检查协议 - - **Interval** (int) - (应用型专用)间隔时间,秒,必须大于TimeOut - - **Method** (str) - (应用型专用)HTTP检查方法。当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查方法 - - **Path** (str) - (应用型专用)HTTP检查路径。当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查路径 - - **Port** (int) - (应用型专用)端口 - - **ResponseCode** (str) - (应用型专用)检查预期状态码。HTTP时为2xx,3xx格式(逗号分隔),GRPC时为数字码(逗号分隔)。 - - **TimeOut** (int) - (应用型专用)超时时间,秒,必须小于Interval - - **Type** (str) - 健康检查方式。应用型限定取值: Port -> 端口检查;HTTP -> HTTP检查;GRPC -> GRPC检测; 默认值:Port - - **UpCounts** (int) - (应用型专用)判定成功的连续次数 - - - **StickinessConfigSet** - - **CookieName** (str) - (应用型专用)自定义Cookie。当StickinessType取值"UserDefined"时有效 - - **Enabled** (bool) - 是否开启会话保持功能。应用型负载均衡实例基于Cookie实现 - - **Type** (str) - (应用型专用)Cookie处理方式。限定枚举值: ServerInsert -> 自动生成KEY;UserDefined -> 用户自定义KEY - - **Certificate** - **IsDefault** (bool) - 是否为默认证书 - **SSLId** (str) - 证书ID @@ -1054,60 +1054,22 @@ def describe_load_balancers( **Response Model** - **FirewallSet** - - **FirewallId** (str) - 防火墙ID - - **FirewallName** (str) - 防火墙名称 - - - **HealthCheckConfigSet** - - **Domain** (str) - (应用型专用)HTTP检查域名。 当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查域名 - - **DownCounts** (int) - (应用型专用)判定失败的连续次数 - - **Enabled** (bool) - 是否开启健康检查功能。 默认值为:true - - **HTTPVersion** (str) - (应用型专用)检查协议 - - **Interval** (int) - (应用型专用)间隔时间,秒,必须大于TimeOut - - **Method** (str) - (应用型专用)HTTP检查方法。当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查方法 - - **Path** (str) - (应用型专用)HTTP检查路径。当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查路径 - - **Port** (int) - (应用型专用)端口 - - **ResponseCode** (str) - (应用型专用)检查预期状态码。HTTP时为2xx,3xx格式(逗号分隔),GRPC时为数字码(逗号分隔)。 - - **TimeOut** (int) - (应用型专用)超时时间,秒,必须小于Interval - - **Type** (str) - 健康检查方式。应用型限定取值: Port -> 端口检查;HTTP -> HTTP检查;GRPC -> GRPC检测; 默认值:Port - - **UpCounts** (int) - (应用型专用)判定成功的连续次数 - - - **Certificate** - - **IsDefault** (bool) - 是否为默认证书 - - **SSLId** (str) - 证书ID - - - **StickinessConfigSet** - - **CookieName** (str) - (应用型专用)自定义Cookie。当StickinessType取值"UserDefined"时有效 - - **Enabled** (bool) - 是否开启会话保持功能。应用型负载均衡实例基于Cookie实现 - - **Type** (str) - (应用型专用)Cookie处理方式。限定枚举值: ServerInsert -> 自动生成KEY;UserDefined -> 用户自定义KEY - - - **HostConfigSet** - - **MatchMode** (str) - 匹配方式。限定枚举值:Regular-正则,Wildcard-泛域名; 默认值:Regular - - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 - - - **PathConfigSet** - - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 + **FixedResponseConfigSet** + - **Content** (str) - 返回的固定内容。最大支持存储 1 KB,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。 + - **HttpCode** (int) - 返回的 HTTP 响应码,仅支持 2xx、4xx、5xx 数字,x 为任意数字。 - **RuleCondition** - - **HostConfig** (dict) - 见 **HostConfigSet** 模型定义 - - **PathConfig** (dict) - 见 **PathConfigSet** 模型定义 - - **Type** (str) - 匹配条件类型。限定枚举值:Host,Path + **ForwardTargetSet** + - **Id** (str) - 服务节点的标识ID + - **Weight** (int) - 权重。仅监听器负载均衡算法是加权轮询是有效;取值范围[1-100],默认值为1 - **InsertHeaderConfigSet** - - **Key** (str) - 插入的 header 字段名称,长度为 1~40 个字符,支持大小写字母 a~z、数字、下划线(_)和短划线(-)。头字段名称不能重复用于InsertHeader中。header 字段不能使用以下(此处判断大小写不敏感)x-real-ip、x-forwarded-for、x-forwarded-proto、x-forwarded-srcport、ucloud-alb-trace、connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority - - **Value** (str) - 插入的 header 字段内容。ValueType 取值为 SystemDefined 时取值如下:ClientSrcPort:客户端端口。ClientSrcIp:客户端 IP 地址。Protocol:客户端请求的协议(HTTP 或 HTTPS)。RuleID:客户端请求命中的转发规则ID。ALBID:ALB ID。ALBPort:ALB 端口。ValueType 取值为 UserDefined 时:可以自定义头字段内容,限制长度为 1~128 个字符,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。ValueType 取值为 ReferenceHeader 时:可以引用请求头字段中的某一个字段,限制长度限制为 1~128 个字符,支持小写字母 a~z、数字、短划线(-)和下划线(_)。 - - **ValueType** (str) - 头字段内容类型。取值:UserDefined:用户指定。ReferenceHeader:引用用户请求头中的某一个字段。SystemDefined:系统定义。 + **ForwardConfigSet** + - **Targets** (list) - 见 **ForwardTargetSet** 模型定义 - **RemoveHeaderConfigSet** - - **Key** (str) - 删除的 header 字段名称,目前只能删除以下几个默认配置的字段: X-Real-IP、X-Forwarded-For、X-Forwarded-Proto、X-Forwarded-SrcPort + **BackendConnectionConfig** + - **EnablePersistentConnection** (bool) - 是否开启长连接 **CorsConfigSet** @@ -1119,28 +1081,20 @@ def describe_load_balancers( - **MaxAge** (int) - 预检请求在浏览器的最大缓存时间,单位:秒。取值范围:-1~172800。 - **ForwardTargetSet** - - **Id** (str) - 服务节点的标识ID - - **Weight** (int) - 权重。仅监听器负载均衡算法是加权轮询是有效;取值范围[1-100],默认值为1 + **RemoveHeaderConfigSet** + - **Key** (str) - 删除的 header 字段名称,目前只能删除以下几个默认配置的字段: X-Real-IP、X-Forwarded-For、X-Forwarded-Proto、X-Forwarded-SrcPort - **ForwardConfigSet** - - **Targets** (list) - 见 **ForwardTargetSet** 模型定义 + **InsertHeaderConfigSet** + - **Key** (str) - 插入的 header 字段名称,长度为 1~40 个字符,支持大小写字母 a~z、数字、下划线(_)和短划线(-)。头字段名称不能重复用于InsertHeader中。header 字段不能使用以下(此处判断大小写不敏感)x-real-ip、x-forwarded-for、x-forwarded-proto、x-forwarded-srcport、ucloud-alb-trace、connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority + - **Value** (str) - 插入的 header 字段内容。ValueType 取值为 SystemDefined 时取值如下:ClientSrcPort:客户端端口。ClientSrcIp:客户端 IP 地址。Protocol:客户端请求的协议(HTTP 或 HTTPS)。RuleID:客户端请求命中的转发规则ID。ALBID:ALB ID。ALBPort:ALB 端口。ValueType 取值为 UserDefined 时:可以自定义头字段内容,限制长度为 1~128 个字符,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。ValueType 取值为 ReferenceHeader 时:可以引用请求头字段中的某一个字段,限制长度限制为 1~128 个字符,支持小写字母 a~z、数字、短划线(-)和下划线(_)。 + - **ValueType** (str) - 头字段内容类型。取值:UserDefined:用户指定。ReferenceHeader:引用用户请求头中的某一个字段。SystemDefined:系统定义。 **ProxyBufferingConfig** - **CloseProxyBuffering** (bool) - 关闭缓存 - **BackendConnectionConfig** - - **EnablePersistentConnection** (bool) - 是否开启长连接 - - - **FixedResponseConfigSet** - - **Content** (str) - 返回的固定内容。最大支持存储 1 KB,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。 - - **HttpCode** (int) - 返回的 HTTP 响应码,仅支持 2xx、4xx、5xx 数字,x 为任意数字。 - - **RuleAction** - **BackendConnectionConfig** (dict) - 见 **BackendConnectionConfig** 模型定义 - **CorsConfig** (dict) - 见 **CorsConfigSet** 模型定义 @@ -1153,14 +1107,55 @@ def describe_load_balancers( - **Type** (str) - 动作类型。限定枚举值:Forward、"InsertHeader"、"Cors"、"FixedResponse"、"RemoveHeader" - **Rule** - - **IsDefault** (bool) - 是否为默认转发规则 + **HostConfigSet** + - **MatchMode** (str) - 匹配方式。限定枚举值:Regular-正则,Wildcard-泛域名; 默认值:Regular + - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 + + + **PathConfigSet** + - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 + + + **RuleCondition** + - **HostConfig** (dict) - 见 **HostConfigSet** 模型定义 + - **PathConfig** (dict) - 见 **PathConfigSet** 模型定义 + - **Type** (str) - 匹配条件类型。限定枚举值:Host,Path + + + **Rule** + - **IsDefault** (bool) - 是否为默认转发规则 - **Pass** (bool) - 当转发的服务节点为空时,规则是否忽略 - **RuleActions** (list) - 见 **RuleAction** 模型定义 - **RuleConditions** (list) - 见 **RuleCondition** 模型定义 - **RuleId** (str) - 转发规则的ID + **StickinessConfigSet** + - **CookieName** (str) - (应用型专用)自定义Cookie。当StickinessType取值"UserDefined"时有效 + - **Enabled** (bool) - 是否开启会话保持功能。应用型负载均衡实例基于Cookie实现 + - **Type** (str) - (应用型专用)Cookie处理方式。限定枚举值: ServerInsert -> 自动生成KEY;UserDefined -> 用户自定义KEY + + + **Certificate** + - **IsDefault** (bool) - 是否为默认证书 + - **SSLId** (str) - 证书ID + + + **HealthCheckConfigSet** + - **Domain** (str) - (应用型专用)HTTP检查域名。 当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查域名 + - **DownCounts** (int) - (应用型专用)判定失败的连续次数 + - **Enabled** (bool) - 是否开启健康检查功能。 默认值为:true + - **HTTPVersion** (str) - (应用型专用)检查协议 + - **Interval** (int) - (应用型专用)间隔时间,秒,必须大于TimeOut + - **Method** (str) - (应用型专用)HTTP检查方法。当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查方法 + - **Path** (str) - (应用型专用)HTTP检查路径。当Type为HTTP/GRPC时,此字段有意义,代表HTTP检查路径 + - **Port** (int) - (应用型专用)端口 + - **ResponseCode** (str) - (应用型专用)检查预期状态码。HTTP时为2xx,3xx格式(逗号分隔),GRPC时为数字码(逗号分隔)。 + - **TimeOut** (int) - (应用型专用)超时时间,秒,必须小于Interval + - **Type** (str) - 健康检查方式。应用型限定取值: Port -> 端口检查;HTTP -> HTTP检查;GRPC -> GRPC检测; 默认值:Port + - **UpCounts** (int) - (应用型专用)判定成功的连续次数 + + **Target** - **Enabled** (bool) - 服务节点是否启用 - **Id** (str) - 服务节点的标识ID。为ALB/NLB中使用,与资源自身ID无关,可用于UpdateTargetsAttribute/RemoveTargets @@ -1198,6 +1193,16 @@ def describe_load_balancers( - **Targets** (list) - 见 **Target** 模型定义 + **IPInfo** + - **AddressType** (str) - 网络模式。 限定枚举值:Internet -> 互联网,Intranet -> 内联网 + - **Bandwidth** (int) - 带宽值。单位M + - **BandwidthType** (int) - 带宽类型。限定枚举值:1 -> 共享带宽,0 -> 普通带宽类型 + - **IP** (str) - IP地址 + - **IPVersion** (str) - IP协议版本 + - **Id** (str) - 唯一标识ID + - **OperatorName** (str) - 外网IP的运营商信息。枚举值为:Telecom -> 电信,Unicom -> 联通,International -> 国际IP,Bgp -> BGP,Duplet -> 双线(电信+联通双线路),BGPPro -> 精品BGP,China-mobile -> 中国移动,Anycast -> AnycastEIP + + **AccessLogConfigSet** - **Enabled** (bool) - (应用型专用)是否开启访问日志记录功能 - **US3BucketName** (str) - (应用型专用)用于存储访问日志的bucket @@ -1211,14 +1216,9 @@ def describe_load_balancers( - **VPCId** (str) - 安全组所属vpc id - **IPInfo** - - **AddressType** (str) - 网络模式。 限定枚举值:Internet -> 互联网,Intranet -> 内联网 - - **Bandwidth** (int) - 带宽值。单位M - - **BandwidthType** (int) - 带宽类型。限定枚举值:1 -> 共享带宽,0 -> 普通带宽类型 - - **IP** (str) - IP地址 - - **IPVersion** (str) - IP协议版本 - - **Id** (str) - 唯一标识ID - - **OperatorName** (str) - 外网IP的运营商信息。枚举值为:Telecom -> 电信,Unicom -> 联通,International -> 国际IP,Bgp -> BGP,Duplet -> 双线(电信+联通双线路),BGPPro -> 精品BGP,China-mobile -> 中国移动,Anycast -> AnycastEIP + **FirewallSet** + - **FirewallId** (str) - 防火墙ID + - **FirewallName** (str) - 防火墙名称 **LoadBalancer** @@ -1274,21 +1274,6 @@ def describe_rules( **Response Model** - **HostConfigSet** - - **MatchMode** (str) - 匹配方式。限定枚举值:Regular-正则,Wildcard-泛域名; 默认值:Regular - - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 - - - **PathConfigSet** - - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 - - - **RuleCondition** - - **HostConfig** (dict) - 见 **HostConfigSet** 模型定义 - - **PathConfig** (dict) - 见 **PathConfigSet** 模型定义 - - **Type** (str) - 匹配条件类型。限定枚举值:Host,Path - - **RemoveHeaderConfigSet** - **Key** (str) - 删除的 header 字段名称,目前只能删除以下几个默认配置的字段: X-Real-IP、X-Forwarded-For、X-Forwarded-Proto、X-Forwarded-SrcPort @@ -1297,15 +1282,6 @@ def describe_rules( - **EnablePersistentConnection** (bool) - 是否开启长连接 - **ForwardTargetSet** - - **Id** (str) - 服务节点的标识ID - - **Weight** (int) - 权重。仅监听器负载均衡算法是加权轮询是有效;取值范围[1-100],默认值为1 - - - **ForwardConfigSet** - - **Targets** (list) - 见 **ForwardTargetSet** 模型定义 - - **InsertHeaderConfigSet** - **Key** (str) - 插入的 header 字段名称,长度为 1~40 个字符,支持大小写字母 a~z、数字、下划线(_)和短划线(-)。头字段名称不能重复用于InsertHeader中。header 字段不能使用以下(此处判断大小写不敏感)x-real-ip、x-forwarded-for、x-forwarded-proto、x-forwarded-srcport、ucloud-alb-trace、connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority - **Value** (str) - 插入的 header 字段内容。ValueType 取值为 SystemDefined 时取值如下:ClientSrcPort:客户端端口。ClientSrcIp:客户端 IP 地址。Protocol:客户端请求的协议(HTTP 或 HTTPS)。RuleID:客户端请求命中的转发规则ID。ALBID:ALB ID。ALBPort:ALB 端口。ValueType 取值为 UserDefined 时:可以自定义头字段内容,限制长度为 1~128 个字符,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。ValueType 取值为 ReferenceHeader 时:可以引用请求头字段中的某一个字段,限制长度限制为 1~128 个字符,支持小写字母 a~z、数字、短划线(-)和下划线(_)。 @@ -1330,6 +1306,15 @@ def describe_rules( - **HttpCode** (int) - 返回的 HTTP 响应码,仅支持 2xx、4xx、5xx 数字,x 为任意数字。 + **ForwardTargetSet** + - **Id** (str) - 服务节点的标识ID + - **Weight** (int) - 权重。仅监听器负载均衡算法是加权轮询是有效;取值范围[1-100],默认值为1 + + + **ForwardConfigSet** + - **Targets** (list) - 见 **ForwardTargetSet** 模型定义 + + **RuleAction** - **BackendConnectionConfig** (dict) - 见 **BackendConnectionConfig** 模型定义 - **CorsConfig** (dict) - 见 **CorsConfigSet** 模型定义 @@ -1342,6 +1327,21 @@ def describe_rules( - **Type** (str) - 动作类型。限定枚举值:Forward、"InsertHeader"、"Cors"、"FixedResponse"、"RemoveHeader" + **HostConfigSet** + - **MatchMode** (str) - 匹配方式。限定枚举值:Regular-正则,Wildcard-泛域名; 默认值:Regular + - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 + + + **PathConfigSet** + - **Values** (list) - 取值。暂时只支持数组长度为1; 取值需符合相关匹配方式的条件 + + + **RuleCondition** + - **HostConfig** (dict) - 见 **HostConfigSet** 模型定义 + - **PathConfig** (dict) - 见 **PathConfigSet** 模型定义 + - **Type** (str) - 匹配条件类型。限定枚举值:Host,Path + + **Rule** - **IsDefault** (bool) - 是否为默认转发规则 - **Pass** (bool) - 当转发的服务节点为空时,规则是否忽略 @@ -1620,26 +1620,47 @@ def describe_ulb(self, req: typing.Optional[dict] = None, **kwargs) -> dict: **Response Model** - **SSLBindedTargetSet** - - **ULBId** (str) - VServer 所属的ULB实例的资源ID - - **ULBName** (str) - ULB实例的名称 - - **VServerId** (str) - SSL证书绑定到的VServer的资源ID - - **VServerName** (str) - 对应的VServer的名字 + **FirewallSet** + - **FirewallId** (str) - 防火墙ID + - **FirewallName** (str) - 防火墙名称 - **ULBSSLSet** - - **BindedTargetSet** (list) - 见 **SSLBindedTargetSet** 模型定义 - - **CreateTime** (int) - SSL证书的创建时间 - - **Domains** (str) - USSL证书平台的域名,只有当SSLSource为1时才出现 - - **HashValue** (str) - SSL证书的HASH值 - - **NotAfter** (int) - 证书过期时间,只有当SSLSource为1时才出现 - - **NotBefore** (int) - 证书颁发时间,只有当SSLSource为1时才出现 - - **SSLContent** (str) - SSL证书的内容 - - **SSLId** (str) - SSL证书的Id - - **SSLName** (str) - SSL证书的名字 - - **SSLSource** (int) - SSL证书来源,SSL证书来源,0代表证书来自于ULB平台,1代表证书来自于USSL平台 - - **SSLType** (str) - SSL证书类型,暂时只有 Pem 一种类型 - - **USSLId** (str) - USSL证书平台的编号,只有当SSLSource为1时才出现 + **ULBIPSet** + - **Bandwidth** (int) - 弹性IP的带宽值(暂未对外开放) + - **BandwidthType** (int) - 弹性IP的带宽类型,枚举值:1 表示是共享带宽,0 普通带宽类型(暂未对外开放) + - **EIP** (str) - 弹性IP地址 + - **EIPId** (str) - 弹性IP的ID + - **OperatorName** (str) - 弹性IP的运营商信息,枚举值为: Bgp:BGP IP International:国际IP + + + **LoggerSet** + - **BucketName** (str) - ulb日志上传的bucket + - **TokenID** (str) - 上传到bucket使用的token的tokenid + - **TokenName** (str) - bucket的token名称 + + + **PolicyBackendSet** + - **BackendId** (str) - 所添加的后端资源在ULB中的对象ID,(为ULB系统中使用,与资源自身ID无关 + - **ObjectId** (str) - 后端资源的对象ID + - **Port** (int) - 所添加的后端资源服务端口 + - **PrivateIP** (str) - 后端资源的内网IP + - **ResourceName** (str) - 后端资源的实例名称 + - **ResourceType** (str) - 所添加的后端资源的类型,枚举值:UHost -> 云主机;UPM -> 物理云主机; UDHost -> 私有专区主机;UDocker -> 容器;UHybrid->混合云主机;CUBE->Cube;UNI -> 虚拟网卡 + - **SubResourceId** (str) - 如果资源绑定了弹性网卡,则展示弹性网卡的资源ID + - **SubResourceName** (str) - 如果资源绑定了弹性网卡,则展示弹性网卡的资源名称 + - **SubResourceType** (str) - "UNI"或者为空 + + + **ULBPolicySet** + - **BackendSet** (list) - 见 **PolicyBackendSet** 模型定义 + - **DomainMatchMode** (str) - 内容转发规则中域名的匹配方式。枚举值:Regular,正则;Wildcard,泛域名 + - **Match** (str) - 内容转发匹配字段;默认内容转发类型下为空。 + - **PolicyId** (str) - 内容转发Id,默认内容转发类型下为空。 + - **PolicyPriority** (int) - 内容转发优先级,范围[1,9999],数字越大优先级越高。默认内容转发规则下为0。 + - **PolicyType** (str) - 内容类型,枚举值:Custom -> 客户自定义;Default -> 默认内容转发 + - **TotalCount** (int) - 默认内容转发类型下返回当前rs总数 + - **Type** (str) - 内容转发匹配字段的类型,枚举值:Domain -> 域名;Path -> 路径; 默认内容转发类型下为空 + - **VServerId** (str) - 所属VServerId **ULBBackendSet** @@ -1660,30 +1681,26 @@ def describe_ulb(self, req: typing.Optional[dict] = None, **kwargs) -> dict: - **Weight** (int) - 后端RS权重(在加权轮询算法下有效) - **PolicyBackendSet** - - **BackendId** (str) - 所添加的后端资源在ULB中的对象ID,(为ULB系统中使用,与资源自身ID无关 - - **ObjectId** (str) - 后端资源的对象ID - - **Port** (int) - 所添加的后端资源服务端口 - - **PrivateIP** (str) - 后端资源的内网IP - - **ResourceName** (str) - 后端资源的实例名称 - - **ResourceType** (str) - 所添加的后端资源的类型,枚举值:UHost -> 云主机;UPM -> 物理云主机; UDHost -> 私有专区主机;UDocker -> 容器;UHybrid->混合云主机;CUBE->Cube;UNI -> 虚拟网卡 - - **SubResourceId** (str) - 如果资源绑定了弹性网卡,则展示弹性网卡的资源ID - - **SubResourceName** (str) - 如果资源绑定了弹性网卡,则展示弹性网卡的资源名称 - - **SubResourceType** (str) - "UNI"或者为空 - - - **ULBIPSet** - - **Bandwidth** (int) - 弹性IP的带宽值(暂未对外开放) - - **BandwidthType** (int) - 弹性IP的带宽类型,枚举值:1 表示是共享带宽,0 普通带宽类型(暂未对外开放) - - **EIP** (str) - 弹性IP地址 - - **EIPId** (str) - 弹性IP的ID - - **OperatorName** (str) - 弹性IP的运营商信息,枚举值为: Bgp:BGP IP International:国际IP + **SSLBindedTargetSet** + - **ULBId** (str) - VServer 所属的ULB实例的资源ID + - **ULBName** (str) - ULB实例的名称 + - **VServerId** (str) - SSL证书绑定到的VServer的资源ID + - **VServerName** (str) - 对应的VServer的名字 - **LoggerSet** - - **BucketName** (str) - ulb日志上传的bucket - - **TokenID** (str) - 上传到bucket使用的token的tokenid - - **TokenName** (str) - bucket的token名称 + **ULBSSLSet** + - **BindedTargetSet** (list) - 见 **SSLBindedTargetSet** 模型定义 + - **CreateTime** (int) - SSL证书的创建时间 + - **Domains** (str) - USSL证书平台的域名,只有当SSLSource为1时才出现 + - **HashValue** (str) - SSL证书的HASH值 + - **NotAfter** (int) - 证书过期时间,只有当SSLSource为1时才出现 + - **NotBefore** (int) - 证书颁发时间,只有当SSLSource为1时才出现 + - **SSLContent** (str) - SSL证书的内容 + - **SSLId** (str) - SSL证书的Id + - **SSLName** (str) - SSL证书的名字 + - **SSLSource** (int) - SSL证书来源,SSL证书来源,0代表证书来自于ULB平台,1代表证书来自于USSL平台 + - **SSLType** (str) - SSL证书类型,暂时只有 Pem 一种类型 + - **USSLId** (str) - USSL证书平台的编号,只有当SSLSource为1时才出现 **BindSecurityPolicy** @@ -1694,18 +1711,6 @@ def describe_ulb(self, req: typing.Optional[dict] = None, **kwargs) -> dict: - **TLSVersion** (str) - TLS最低版本 - **ULBPolicySet** - - **BackendSet** (list) - 见 **PolicyBackendSet** 模型定义 - - **DomainMatchMode** (str) - 内容转发规则中域名的匹配方式。枚举值:Regular,正则;Wildcard,泛域名 - - **Match** (str) - 内容转发匹配字段;默认内容转发类型下为空。 - - **PolicyId** (str) - 内容转发Id,默认内容转发类型下为空。 - - **PolicyPriority** (int) - 内容转发优先级,范围[1,9999],数字越大优先级越高。默认内容转发规则下为0。 - - **PolicyType** (str) - 内容类型,枚举值:Custom -> 客户自定义;Default -> 默认内容转发 - - **TotalCount** (int) - 默认内容转发类型下返回当前rs总数 - - **Type** (str) - 内容转发匹配字段的类型,枚举值:Domain -> 域名;Path -> 路径; 默认内容转发类型下为空 - - **VServerId** (str) - 所属VServerId - - **ULBVServerSet** - **BackendSet** (list) - 见 **ULBBackendSet** 模型定义 - **ClientTimeout** (int) - 空闲连接的回收时间,单位:秒。 @@ -1732,11 +1737,6 @@ def describe_ulb(self, req: typing.Optional[dict] = None, **kwargs) -> dict: - **VServerName** (str) - VServer实例的名字 - **FirewallSet** - - **FirewallId** (str) - 防火墙ID - - **FirewallName** (str) - 防火墙名称 - - **ULBSet** - **Bandwidth** (int) - 带宽 - **BandwidthType** (int) - 带宽类型,枚举值为: 0,非共享带宽; 1,共享带宽 @@ -1795,6 +1795,14 @@ def describe_ulb_simple( **Response Model** + **ULBIPSet** + - **Bandwidth** (int) - 弹性IP的带宽值(暂未对外开放) + - **BandwidthType** (int) - 弹性IP的带宽类型,枚举值:1 表示是共享带宽,0 普通带宽类型(暂未对外开放) + - **EIP** (str) - 弹性IP地址 + - **EIPId** (str) - 弹性IP的ID + - **OperatorName** (str) - 弹性IP的运营商信息,枚举值为: Bgp:BGP IP International:国际IP + + **LoggerSet** - **BucketName** (str) - ulb日志上传的bucket - **TokenID** (str) - 上传到bucket使用的token的tokenid @@ -1806,14 +1814,6 @@ def describe_ulb_simple( - **FirewallName** (str) - 防火墙名称 - **ULBIPSet** - - **Bandwidth** (int) - 弹性IP的带宽值(暂未对外开放) - - **BandwidthType** (int) - 弹性IP的带宽类型,枚举值:1 表示是共享带宽,0 普通带宽类型(暂未对外开放) - - **EIP** (str) - 弹性IP地址 - - **EIPId** (str) - 弹性IP的ID - - **OperatorName** (str) - 弹性IP的运营商信息,枚举值为: Bgp:BGP IP International:国际IP - - **ULBSimpleSet** - **Bandwidth** (int) - 带宽 - **BandwidthType** (int) - 带宽类型,枚举值为: 0,非共享带宽; 1,共享带宽 @@ -1871,16 +1871,22 @@ def describe_vserver( **Response Model** - **PolicyBackendSet** - - **BackendId** (str) - 所添加的后端资源在ULB中的对象ID,(为ULB系统中使用,与资源自身ID无关 - - **ObjectId** (str) - 后端资源的对象ID - - **Port** (int) - 所添加的后端资源服务端口 - - **PrivateIP** (str) - 后端资源的内网IP - - **ResourceName** (str) - 后端资源的实例名称 - - **ResourceType** (str) - 所添加的后端资源的类型,枚举值:UHost -> 云主机;UPM -> 物理云主机; UDHost -> 私有专区主机;UDocker -> 容器;UHybrid->混合云主机;CUBE->Cube;UNI -> 虚拟网卡 - - **SubResourceId** (str) - 如果资源绑定了弹性网卡,则展示弹性网卡的资源ID - - **SubResourceName** (str) - 如果资源绑定了弹性网卡,则展示弹性网卡的资源名称 - - **SubResourceType** (str) - "UNI"或者为空 + **ULBBackendSet** + - **BackendId** (str) - 后端资源实例的Id + - **Enabled** (int) - 后端提供服务的实例启用与否,枚举值:0 禁用 1 启用 + - **IsBackup** (int) - 是否为backup,只有当vserver的Backup属性为1时才会有此字段,说明:0:主rs1:备rs + - **Port** (int) - 后端提供服务的端口 + - **PrivateIP** (str) - 后端提供服务的内网IP + - **ResourceId** (str) - 资源实例的资源Id + - **ResourceName** (str) - 资源实例的资源名称 + - **ResourceType** (str) - 资源实例的类型 + - **Status** (int) - 后端提供服务的实例运行状态,枚举值:0健康检查健康状态 1 健康检查异常 + - **SubResourceId** (str) - 资源绑定的虚拟网卡实例的资源Id + - **SubResourceName** (str) - 资源绑定的虚拟网卡实例的资源名称 + - **SubResourceType** (str) - 资源绑定的虚拟网卡实例的类型 + - **SubnetId** (str) - 后端提供服务的资源所在的子网的ID + - **VPCId** (str) - 后端服务器所在的VPC + - **Weight** (int) - 后端RS权重(在加权轮询算法下有效) **SSLBindedTargetSet** @@ -1890,18 +1896,6 @@ def describe_vserver( - **VServerName** (str) - 对应的VServer的名字 - **ULBPolicySet** - - **BackendSet** (list) - 见 **PolicyBackendSet** 模型定义 - - **DomainMatchMode** (str) - 内容转发规则中域名的匹配方式。枚举值:Regular,正则;Wildcard,泛域名 - - **Match** (str) - 内容转发匹配字段;默认内容转发类型下为空。 - - **PolicyId** (str) - 内容转发Id,默认内容转发类型下为空。 - - **PolicyPriority** (int) - 内容转发优先级,范围[1,9999],数字越大优先级越高。默认内容转发规则下为0。 - - **PolicyType** (str) - 内容类型,枚举值:Custom -> 客户自定义;Default -> 默认内容转发 - - **TotalCount** (int) - 默认内容转发类型下返回当前rs总数 - - **Type** (str) - 内容转发匹配字段的类型,枚举值:Domain -> 域名;Path -> 路径; 默认内容转发类型下为空 - - **VServerId** (str) - 所属VServerId - - **ULBSSLSet** - **BindedTargetSet** (list) - 见 **SSLBindedTargetSet** 模型定义 - **CreateTime** (int) - SSL证书的创建时间 @@ -1925,22 +1919,28 @@ def describe_vserver( - **TLSVersion** (str) - TLS最低版本 - **ULBBackendSet** - - **BackendId** (str) - 后端资源实例的Id - - **Enabled** (int) - 后端提供服务的实例启用与否,枚举值:0 禁用 1 启用 - - **IsBackup** (int) - 是否为backup,只有当vserver的Backup属性为1时才会有此字段,说明:0:主rs1:备rs - - **Port** (int) - 后端提供服务的端口 - - **PrivateIP** (str) - 后端提供服务的内网IP - - **ResourceId** (str) - 资源实例的资源Id - - **ResourceName** (str) - 资源实例的资源名称 - - **ResourceType** (str) - 资源实例的类型 - - **Status** (int) - 后端提供服务的实例运行状态,枚举值:0健康检查健康状态 1 健康检查异常 - - **SubResourceId** (str) - 资源绑定的虚拟网卡实例的资源Id - - **SubResourceName** (str) - 资源绑定的虚拟网卡实例的资源名称 - - **SubResourceType** (str) - 资源绑定的虚拟网卡实例的类型 - - **SubnetId** (str) - 后端提供服务的资源所在的子网的ID - - **VPCId** (str) - 后端服务器所在的VPC - - **Weight** (int) - 后端RS权重(在加权轮询算法下有效) + **PolicyBackendSet** + - **BackendId** (str) - 所添加的后端资源在ULB中的对象ID,(为ULB系统中使用,与资源自身ID无关 + - **ObjectId** (str) - 后端资源的对象ID + - **Port** (int) - 所添加的后端资源服务端口 + - **PrivateIP** (str) - 后端资源的内网IP + - **ResourceName** (str) - 后端资源的实例名称 + - **ResourceType** (str) - 所添加的后端资源的类型,枚举值:UHost -> 云主机;UPM -> 物理云主机; UDHost -> 私有专区主机;UDocker -> 容器;UHybrid->混合云主机;CUBE->Cube;UNI -> 虚拟网卡 + - **SubResourceId** (str) - 如果资源绑定了弹性网卡,则展示弹性网卡的资源ID + - **SubResourceName** (str) - 如果资源绑定了弹性网卡,则展示弹性网卡的资源名称 + - **SubResourceType** (str) - "UNI"或者为空 + + + **ULBPolicySet** + - **BackendSet** (list) - 见 **PolicyBackendSet** 模型定义 + - **DomainMatchMode** (str) - 内容转发规则中域名的匹配方式。枚举值:Regular,正则;Wildcard,泛域名 + - **Match** (str) - 内容转发匹配字段;默认内容转发类型下为空。 + - **PolicyId** (str) - 内容转发Id,默认内容转发类型下为空。 + - **PolicyPriority** (int) - 内容转发优先级,范围[1,9999],数字越大优先级越高。默认内容转发规则下为0。 + - **PolicyType** (str) - 内容类型,枚举值:Custom -> 客户自定义;Default -> 默认内容转发 + - **TotalCount** (int) - 默认内容转发类型下返回当前rs总数 + - **Type** (str) - 内容转发匹配字段的类型,枚举值:Domain -> 域名;Path -> 路径; 默认内容转发类型下为空 + - **VServerId** (str) - 所属VServerId **ULBVServerSet** @@ -2195,12 +2195,6 @@ def update_listener_attribute( **Request Model** - **UpdateListenerAttributeParamStickinessConfig** - - **CookieName** (str) - (应用型专用)自定义Cookie。当StickinessType取值"UserDefined"时有效;限定字符长度:[0-255] - - **Enabled** (bool) - 是否开启会话保持功能。应用型负载均衡实例基于Cookie实现,网络型负载均衡则基于源IP,保证在对应的空闲超时时间内,同一个源IP送到同一个服务节点。默认值为:false - - **Type** (str) - (应用型专用)Cookie处理方式。限定枚举值:"ServerInsert" / "UserDefined",不传值则不修改 - - **UpdateListenerAttributeParamHealthCheckConfig** - **Domain** (str) - (应用型专用)HTTP/GRPC检查域名 - **DownCounts** (int) - (应用型专用)判定失败的连续次数 @@ -2216,6 +2210,12 @@ def update_listener_attribute( - **UpCounts** (int) - (应用型专用)判定成功的连续次数 + **UpdateListenerAttributeParamStickinessConfig** + - **CookieName** (str) - (应用型专用)自定义Cookie。当StickinessType取值"UserDefined"时有效;限定字符长度:[0-255] + - **Enabled** (bool) - 是否开启会话保持功能。应用型负载均衡实例基于Cookie实现,网络型负载均衡则基于源IP,保证在对应的空闲超时时间内,同一个源IP送到同一个服务节点。默认值为:false + - **Type** (str) - (应用型专用)Cookie处理方式。限定枚举值:"ServerInsert" / "UserDefined",不传值则不修改 + + """ # build request d = { @@ -2320,36 +2320,6 @@ def update_rule_attribute( **Request Model** - **UpdateRuleAttributeParamRuleActionsForwardConfigTargets** - - **Id** (str) - 转发的后端服务节点的标识ID。限定在监听器的服务节点池里;数组长度可以是0;转发服务节点配置的数组长度不为0时,Id必填 - - **Weight** (int) - 转发的后端服务节点的权重。仅监听器负载均衡算法是加权轮询是有效 - - - **UpdateRuleAttributeParamRuleConditionsHostConfig** - - **MatchMode** (str) - 匹配方式。限定枚举值:"Regular"/"Wildcard",默认值:"Regular" - - **Values** (list) - 取值。暂时只支持数组长度为1;取值需符合相关匹配方式的条件;修改域名匹配时必填 - - - **UpdateRuleAttributeParamRuleConditionsPathConfig** - - **Values** (list) - 取值。暂时只支持数组长度为1;取值需符合相关条件;修改路径匹配时必填 - - - **UpdateRuleAttributeParamRuleConditions** - - **HostConfig** (dict) - 见 **UpdateRuleAttributeParamRuleConditionsHostConfig** 模型定义 - - **PathConfig** (dict) - 见 **UpdateRuleAttributeParamRuleConditionsPathConfig** 模型定义 - - **Type** (str) - 匹配条件类型。限定枚举值:"Host"/"Path";RuleConditions数组长度不为0时必填 - - - **UpdateRuleAttributeParamRuleActionsInsertHeaderConfig** - - **Key** (str) - 插入的 header 字段名称,长度为 1~40 个字符,支持大小写字母 a~z、数字、下划线(_)和短划线(-)。头字段名称不能重复用于InsertHeader中。header 字段不能使用以下(此处判断大小写不敏感)x-real-ip、x-forwarded-for、x-forwarded-proto、x-forwarded-srcport、ucloud-alb-trace、connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority - - **Value** (str) - 插入的 header 字段内容。ValueType 取值为 SystemDefined 时取值如下:ClientSrcPort:客户端端口。ClientSrcIp:客户端 IP 地址。Protocol:客户端请求的协议(HTTP 或 HTTPS)。RuleID:客户端请求命中的转发规则ID。ALBID:ALB ID。ALBPort:ALB 端口。ValueType 取值为 UserDefined 时:可以自定义头字段内容,限制长度为 1~128 个字符,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。ValueType 取值为 ReferenceHeader 时:可以引用请求头字段中的某一个字段,限制长度限制为 1~128 个字符,支持小写字母 a~z、数字、短划线(-)和下划线(_)。 - - **ValueType** (str) - 头字段内容类型。取值:UserDefined:用户指定。ReferenceHeader:引用用户请求头中的某一个字段。SystemDefined:系统定义。 - - - **UpdateRuleAttributeParamRuleActionsProxyBufferingConfig** - - **CloseProxyBuffering** (bool) - 关闭缓存 - - **UpdateRuleAttributeParamRuleActionsBackendConnectionConfig** - **EnablePersistentConnection** (bool) - 开启长连接 @@ -2359,8 +2329,13 @@ def update_rule_attribute( - **HttpCode** (int) - 返回的 HTTP 响应码,仅支持 2xx、4xx、5xx 数字,x 为任意数字。 - **UpdateRuleAttributeParamRuleActionsRemoveHeaderConfig** - - **Key** (str) - 删除的 header 字段名称,目前只能删除以下几个默认配置的字段X-Real-IP、X-Forwarded-For、X-Forwarded-Proto、X-Forwarded-SrcPort + **UpdateRuleAttributeParamRuleActionsForwardConfigTargets** + - **Id** (str) - 转发的后端服务节点的标识ID。限定在监听器的服务节点池里;数组长度可以是0;转发服务节点配置的数组长度不为0时,Id必填 + - **Weight** (int) - 转发的后端服务节点的权重。仅监听器负载均衡算法是加权轮询是有效 + + + **UpdateRuleAttributeParamRuleActionsForwardConfig** + - **Targets** (list) - 见 **UpdateRuleAttributeParamRuleActionsForwardConfigTargets** 模型定义 **UpdateRuleAttributeParamRuleActionsCorsConfig** @@ -2372,8 +2347,18 @@ def update_rule_attribute( - **MaxAge** (int) - 预检请求在浏览器的最大缓存时间,单位:秒。取值范围:-1~172800。 - **UpdateRuleAttributeParamRuleActionsForwardConfig** - - **Targets** (list) - 见 **UpdateRuleAttributeParamRuleActionsForwardConfigTargets** 模型定义 + **UpdateRuleAttributeParamRuleActionsRemoveHeaderConfig** + - **Key** (str) - 删除的 header 字段名称,目前只能删除以下几个默认配置的字段X-Real-IP、X-Forwarded-For、X-Forwarded-Proto、X-Forwarded-SrcPort + + + **UpdateRuleAttributeParamRuleActionsInsertHeaderConfig** + - **Key** (str) - 插入的 header 字段名称,长度为 1~40 个字符,支持大小写字母 a~z、数字、下划线(_)和短划线(-)。头字段名称不能重复用于InsertHeader中。header 字段不能使用以下(此处判断大小写不敏感)x-real-ip、x-forwarded-for、x-forwarded-proto、x-forwarded-srcport、ucloud-alb-trace、connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority + - **Value** (str) - 插入的 header 字段内容。ValueType 取值为 SystemDefined 时取值如下:ClientSrcPort:客户端端口。ClientSrcIp:客户端 IP 地址。Protocol:客户端请求的协议(HTTP 或 HTTPS)。RuleID:客户端请求命中的转发规则ID。ALBID:ALB ID。ALBPort:ALB 端口。ValueType 取值为 UserDefined 时:可以自定义头字段内容,限制长度为 1~128 个字符,只支持 ASCII 码值ch >= 32 && ch < 127范围内、不包括 $ 的可打印字符。ValueType 取值为 ReferenceHeader 时:可以引用请求头字段中的某一个字段,限制长度限制为 1~128 个字符,支持小写字母 a~z、数字、短划线(-)和下划线(_)。 + - **ValueType** (str) - 头字段内容类型。取值:UserDefined:用户指定。ReferenceHeader:引用用户请求头中的某一个字段。SystemDefined:系统定义。 + + + **UpdateRuleAttributeParamRuleActionsProxyBufferingConfig** + - **CloseProxyBuffering** (bool) - 关闭缓存 **UpdateRuleAttributeParamRuleActions** @@ -2388,6 +2373,21 @@ def update_rule_attribute( - **Type** (str) - 动作类型。限定枚举值:"Forward";RuleActions数组长度不为0时必填 + **UpdateRuleAttributeParamRuleConditionsHostConfig** + - **MatchMode** (str) - 匹配方式。限定枚举值:"Regular"/"Wildcard",默认值:"Regular" + - **Values** (list) - 取值。暂时只支持数组长度为1;取值需符合相关匹配方式的条件;修改域名匹配时必填 + + + **UpdateRuleAttributeParamRuleConditionsPathConfig** + - **Values** (list) - 取值。暂时只支持数组长度为1;取值需符合相关条件;修改路径匹配时必填 + + + **UpdateRuleAttributeParamRuleConditions** + - **HostConfig** (dict) - 见 **UpdateRuleAttributeParamRuleConditionsHostConfig** 模型定义 + - **PathConfig** (dict) - 见 **UpdateRuleAttributeParamRuleConditionsPathConfig** 模型定义 + - **Type** (str) - 匹配条件类型。限定枚举值:"Host"/"Path";RuleConditions数组长度不为0时必填 + + """ # build request d = { diff --git a/ucloud/services/ulb/schemas/apis.py b/ucloud/services/ulb/schemas/apis.py index 29f592e..b26a3d1 100644 --- a/ucloud/services/ulb/schemas/apis.py +++ b/ucloud/services/ulb/schemas/apis.py @@ -174,6 +174,16 @@ class BindSSLResponseSchema(schema.ResponseSchema): """ +class CreateListenerParamStickinessConfigSchema(schema.RequestSchema): + """CreateListenerParamStickinessConfig -""" + + fields = { + "CookieName": fields.Str(required=False, dump_to="CookieName"), + "Enabled": fields.Bool(required=False, dump_to="Enabled"), + "Type": fields.Str(required=False, dump_to="Type"), + } + + class CreateListenerParamHealthCheckConfigSchema(schema.RequestSchema): """CreateListenerParamHealthCheckConfig -""" @@ -193,16 +203,6 @@ class CreateListenerParamHealthCheckConfigSchema(schema.RequestSchema): } -class CreateListenerParamStickinessConfigSchema(schema.RequestSchema): - """CreateListenerParamStickinessConfig -""" - - fields = { - "CookieName": fields.Str(required=False, dump_to="CookieName"), - "Enabled": fields.Bool(required=False, dump_to="Enabled"), - "Type": fields.Str(required=False, dump_to="Type"), - } - - class CreateListenerRequestSchema(schema.RequestSchema): """CreateListener - 创建一个应用型负载均衡的监听器""" @@ -255,21 +255,21 @@ class CreateListenerResponseSchema(schema.ResponseSchema): """ -class CreateLoadBalancerParamSecGroupsSchema(schema.RequestSchema): - """CreateLoadBalancerParamSecGroups -""" +class CreateLoadBalancerParamLabelInfosSchema(schema.RequestSchema): + """CreateLoadBalancerParamLabelInfos -""" fields = { - "Priority": fields.Int(required=False, dump_to="Priority"), - "SecGroupId": fields.Str(required=False, dump_to="SecGroupId"), + "Key": fields.Str(required=False, dump_to="Key"), + "Value": fields.Str(required=False, dump_to="Value"), } -class CreateLoadBalancerParamLabelInfosSchema(schema.RequestSchema): - """CreateLoadBalancerParamLabelInfos -""" +class CreateLoadBalancerParamSecGroupsSchema(schema.RequestSchema): + """CreateLoadBalancerParamSecGroups -""" fields = { - "Key": fields.Str(required=False, dump_to="Key"), - "Value": fields.Str(required=False, dump_to="Value"), + "Priority": fields.Int(required=False, dump_to="Priority"), + "SecGroupId": fields.Str(required=False, dump_to="SecGroupId"), } @@ -344,36 +344,32 @@ class CreatePolicyResponseSchema(schema.ResponseSchema): """ -class CreateRuleParamRuleActionsForwardConfigTargetsSchema( +class CreateRuleParamRuleActionsBackendConnectionConfigSchema( schema.RequestSchema ): - """CreateRuleParamRuleActionsForwardConfigTargets -""" + """CreateRuleParamRuleActionsBackendConnectionConfig -""" fields = { - "Id": fields.Str(required=False, dump_to="Id"), - "Weight": fields.Int(required=False, dump_to="Weight"), + "EnablePersistentConnection": fields.Bool( + required=False, dump_to="EnablePersistentConnection" + ), } -class CreateRuleParamRuleActionsForwardConfigSchema(schema.RequestSchema): - """CreateRuleParamRuleActionsForwardConfig -""" +class CreateRuleParamRuleActionsFixedResponseConfigSchema(schema.RequestSchema): + """CreateRuleParamRuleActionsFixedResponseConfig -""" fields = { - "Targets": fields.List( - CreateRuleParamRuleActionsForwardConfigTargetsSchema() - ), + "Content": fields.Str(required=False, dump_to="Content"), + "HttpCode": fields.Int(required=False, dump_to="HttpCode"), } -class CreateRuleParamRuleActionsProxyBufferingConfigSchema( - schema.RequestSchema -): - """CreateRuleParamRuleActionsProxyBufferingConfig -""" +class CreateRuleParamRuleConditionsPathConfigSchema(schema.RequestSchema): + """CreateRuleParamRuleConditionsPathConfig -""" fields = { - "CloseProxyBuffering": fields.Bool( - required=False, dump_to="CloseProxyBuffering" - ), + "Values": fields.List(fields.Str()), } @@ -386,65 +382,69 @@ class CreateRuleParamRuleConditionsHostConfigSchema(schema.RequestSchema): } -class CreateRuleParamRuleActionsInsertHeaderConfigSchema(schema.RequestSchema): - """CreateRuleParamRuleActionsInsertHeaderConfig -""" +class CreateRuleParamRuleActionsForwardConfigTargetsSchema( + schema.RequestSchema +): + """CreateRuleParamRuleActionsForwardConfigTargets -""" fields = { - "Key": fields.Str(required=False, dump_to="Key"), - "Value": fields.Str(required=False, dump_to="Value"), - "ValueType": fields.Str(required=False, dump_to="ValueType"), + "Id": fields.Str(required=False, dump_to="Id"), + "Weight": fields.Int(required=False, dump_to="Weight"), } -class CreateRuleParamRuleActionsRemoveHeaderConfigSchema(schema.RequestSchema): - """CreateRuleParamRuleActionsRemoveHeaderConfig -""" +class CreateRuleParamRuleActionsCorsConfigSchema(schema.RequestSchema): + """CreateRuleParamRuleActionsCorsConfig -""" fields = { - "Key": fields.Str(required=False, dump_to="Key"), + "AllowCredentials": fields.Str( + required=False, dump_to="AllowCredentials" + ), + "AllowHeaders": fields.List(fields.Str()), + "AllowMethods": fields.List(fields.Str()), + "AllowOrigin": fields.List(fields.Str()), + "ExposeHeaders": fields.List(fields.Str()), + "MaxAge": fields.Int(required=False, dump_to="MaxAge"), } -class CreateRuleParamRuleActionsBackendConnectionConfigSchema( - schema.RequestSchema -): - """CreateRuleParamRuleActionsBackendConnectionConfig -""" +class CreateRuleParamRuleActionsInsertHeaderConfigSchema(schema.RequestSchema): + """CreateRuleParamRuleActionsInsertHeaderConfig -""" fields = { - "EnablePersistentConnection": fields.Bool( - required=False, dump_to="EnablePersistentConnection" - ), + "Key": fields.Str(required=False, dump_to="Key"), + "Value": fields.Str(required=False, dump_to="Value"), + "ValueType": fields.Str(required=False, dump_to="ValueType"), } -class CreateRuleParamRuleActionsFixedResponseConfigSchema(schema.RequestSchema): - """CreateRuleParamRuleActionsFixedResponseConfig -""" +class CreateRuleParamRuleActionsProxyBufferingConfigSchema( + schema.RequestSchema +): + """CreateRuleParamRuleActionsProxyBufferingConfig -""" fields = { - "Content": fields.Str(required=False, dump_to="Content"), - "HttpCode": fields.Int(required=False, dump_to="HttpCode"), + "CloseProxyBuffering": fields.Bool( + required=False, dump_to="CloseProxyBuffering" + ), } -class CreateRuleParamRuleConditionsPathConfigSchema(schema.RequestSchema): - """CreateRuleParamRuleConditionsPathConfig -""" +class CreateRuleParamRuleActionsRemoveHeaderConfigSchema(schema.RequestSchema): + """CreateRuleParamRuleActionsRemoveHeaderConfig -""" fields = { - "Values": fields.List(fields.Str()), + "Key": fields.Str(required=False, dump_to="Key"), } -class CreateRuleParamRuleActionsCorsConfigSchema(schema.RequestSchema): - """CreateRuleParamRuleActionsCorsConfig -""" +class CreateRuleParamRuleActionsForwardConfigSchema(schema.RequestSchema): + """CreateRuleParamRuleActionsForwardConfig -""" fields = { - "AllowCredentials": fields.Str( - required=False, dump_to="AllowCredentials" + "Targets": fields.List( + CreateRuleParamRuleActionsForwardConfigTargetsSchema() ), - "AllowHeaders": fields.List(fields.Str()), - "AllowMethods": fields.List(fields.Str()), - "AllowOrigin": fields.List(fields.Str()), - "ExposeHeaders": fields.List(fields.Str()), - "MaxAge": fields.Int(required=False, dump_to="MaxAge"), } @@ -1410,16 +1410,6 @@ class UpdateBackendBatchResponseSchema(schema.ResponseSchema): """ -class UpdateListenerAttributeParamStickinessConfigSchema(schema.RequestSchema): - """UpdateListenerAttributeParamStickinessConfig -""" - - fields = { - "CookieName": fields.Str(required=False, dump_to="CookieName"), - "Enabled": fields.Bool(required=False, dump_to="Enabled"), - "Type": fields.Str(required=False, dump_to="Type"), - } - - class UpdateListenerAttributeParamHealthCheckConfigSchema(schema.RequestSchema): """UpdateListenerAttributeParamHealthCheckConfig -""" @@ -1439,6 +1429,16 @@ class UpdateListenerAttributeParamHealthCheckConfigSchema(schema.RequestSchema): } +class UpdateListenerAttributeParamStickinessConfigSchema(schema.RequestSchema): + """UpdateListenerAttributeParamStickinessConfig -""" + + fields = { + "CookieName": fields.Str(required=False, dump_to="CookieName"), + "Enabled": fields.Bool(required=False, dump_to="Enabled"), + "Type": fields.Str(required=False, dump_to="Type"), + } + + class UpdateListenerAttributeRequestSchema(schema.RequestSchema): """UpdateListenerAttribute - 更新一个应用型负载均衡监听器的属性""" @@ -1563,96 +1563,64 @@ class UpdatePolicyResponseSchema(schema.ResponseSchema): """ -class UpdateRuleAttributeParamRuleActionsForwardConfigTargetsSchema( - schema.RequestSchema -): - """UpdateRuleAttributeParamRuleActionsForwardConfigTargets -""" - - fields = { - "Id": fields.Str(required=False, dump_to="Id"), - "Weight": fields.Int(required=False, dump_to="Weight"), - } - - -class UpdateRuleAttributeParamRuleConditionsHostConfigSchema( - schema.RequestSchema -): - """UpdateRuleAttributeParamRuleConditionsHostConfig -""" - - fields = { - "MatchMode": fields.Str(required=False, dump_to="MatchMode"), - "Values": fields.List(fields.Str()), - } - - -class UpdateRuleAttributeParamRuleConditionsPathConfigSchema( +class UpdateRuleAttributeParamRuleActionsBackendConnectionConfigSchema( schema.RequestSchema ): - """UpdateRuleAttributeParamRuleConditionsPathConfig -""" - - fields = { - "Values": fields.List(fields.Str()), - } - - -class UpdateRuleAttributeParamRuleConditionsSchema(schema.RequestSchema): - """UpdateRuleAttributeParamRuleConditions -""" + """UpdateRuleAttributeParamRuleActionsBackendConnectionConfig -""" fields = { - "HostConfig": UpdateRuleAttributeParamRuleConditionsHostConfigSchema( - required=False, dump_to="HostConfig" - ), - "PathConfig": UpdateRuleAttributeParamRuleConditionsPathConfigSchema( - required=False, dump_to="PathConfig" + "EnablePersistentConnection": fields.Bool( + required=False, dump_to="EnablePersistentConnection" ), - "Type": fields.Str(required=False, dump_to="Type"), } -class UpdateRuleAttributeParamRuleActionsInsertHeaderConfigSchema( +class UpdateRuleAttributeParamRuleActionsFixedResponseConfigSchema( schema.RequestSchema ): - """UpdateRuleAttributeParamRuleActionsInsertHeaderConfig -""" + """UpdateRuleAttributeParamRuleActionsFixedResponseConfig -""" fields = { - "Key": fields.Str(required=False, dump_to="Key"), - "Value": fields.Str(required=False, dump_to="Value"), - "ValueType": fields.Str(required=False, dump_to="ValueType"), + "Content": fields.Str(required=False, dump_to="Content"), + "HttpCode": fields.Int(required=False, dump_to="HttpCode"), } -class UpdateRuleAttributeParamRuleActionsProxyBufferingConfigSchema( +class UpdateRuleAttributeParamRuleActionsForwardConfigTargetsSchema( schema.RequestSchema ): - """UpdateRuleAttributeParamRuleActionsProxyBufferingConfig -""" + """UpdateRuleAttributeParamRuleActionsForwardConfigTargets -""" fields = { - "CloseProxyBuffering": fields.Bool( - required=False, dump_to="CloseProxyBuffering" - ), + "Id": fields.Str(required=False, dump_to="Id"), + "Weight": fields.Int(required=False, dump_to="Weight"), } -class UpdateRuleAttributeParamRuleActionsBackendConnectionConfigSchema( +class UpdateRuleAttributeParamRuleActionsForwardConfigSchema( schema.RequestSchema ): - """UpdateRuleAttributeParamRuleActionsBackendConnectionConfig -""" + """UpdateRuleAttributeParamRuleActionsForwardConfig -""" fields = { - "EnablePersistentConnection": fields.Bool( - required=False, dump_to="EnablePersistentConnection" + "Targets": fields.List( + UpdateRuleAttributeParamRuleActionsForwardConfigTargetsSchema() ), } -class UpdateRuleAttributeParamRuleActionsFixedResponseConfigSchema( - schema.RequestSchema -): - """UpdateRuleAttributeParamRuleActionsFixedResponseConfig -""" +class UpdateRuleAttributeParamRuleActionsCorsConfigSchema(schema.RequestSchema): + """UpdateRuleAttributeParamRuleActionsCorsConfig -""" fields = { - "Content": fields.Str(required=False, dump_to="Content"), - "HttpCode": fields.Int(required=False, dump_to="HttpCode"), + "AllowCredentials": fields.Str( + required=False, dump_to="AllowCredentials" + ), + "AllowHeaders": fields.List(fields.Str()), + "AllowMethods": fields.List(fields.Str()), + "AllowOrigin": fields.List(fields.Str()), + "ExposeHeaders": fields.List(fields.Str()), + "MaxAge": fields.Int(required=False, dump_to="MaxAge"), } @@ -1666,29 +1634,26 @@ class UpdateRuleAttributeParamRuleActionsRemoveHeaderConfigSchema( } -class UpdateRuleAttributeParamRuleActionsCorsConfigSchema(schema.RequestSchema): - """UpdateRuleAttributeParamRuleActionsCorsConfig -""" +class UpdateRuleAttributeParamRuleActionsInsertHeaderConfigSchema( + schema.RequestSchema +): + """UpdateRuleAttributeParamRuleActionsInsertHeaderConfig -""" fields = { - "AllowCredentials": fields.Str( - required=False, dump_to="AllowCredentials" - ), - "AllowHeaders": fields.List(fields.Str()), - "AllowMethods": fields.List(fields.Str()), - "AllowOrigin": fields.List(fields.Str()), - "ExposeHeaders": fields.List(fields.Str()), - "MaxAge": fields.Int(required=False, dump_to="MaxAge"), + "Key": fields.Str(required=False, dump_to="Key"), + "Value": fields.Str(required=False, dump_to="Value"), + "ValueType": fields.Str(required=False, dump_to="ValueType"), } -class UpdateRuleAttributeParamRuleActionsForwardConfigSchema( +class UpdateRuleAttributeParamRuleActionsProxyBufferingConfigSchema( schema.RequestSchema ): - """UpdateRuleAttributeParamRuleActionsForwardConfig -""" + """UpdateRuleAttributeParamRuleActionsProxyBufferingConfig -""" fields = { - "Targets": fields.List( - UpdateRuleAttributeParamRuleActionsForwardConfigTargetsSchema() + "CloseProxyBuffering": fields.Bool( + required=False, dump_to="CloseProxyBuffering" ), } @@ -1723,6 +1688,41 @@ class UpdateRuleAttributeParamRuleActionsSchema(schema.RequestSchema): } +class UpdateRuleAttributeParamRuleConditionsHostConfigSchema( + schema.RequestSchema +): + """UpdateRuleAttributeParamRuleConditionsHostConfig -""" + + fields = { + "MatchMode": fields.Str(required=False, dump_to="MatchMode"), + "Values": fields.List(fields.Str()), + } + + +class UpdateRuleAttributeParamRuleConditionsPathConfigSchema( + schema.RequestSchema +): + """UpdateRuleAttributeParamRuleConditionsPathConfig -""" + + fields = { + "Values": fields.List(fields.Str()), + } + + +class UpdateRuleAttributeParamRuleConditionsSchema(schema.RequestSchema): + """UpdateRuleAttributeParamRuleConditions -""" + + fields = { + "HostConfig": UpdateRuleAttributeParamRuleConditionsHostConfigSchema( + required=False, dump_to="HostConfig" + ), + "PathConfig": UpdateRuleAttributeParamRuleConditionsPathConfigSchema( + required=False, dump_to="PathConfig" + ), + "Type": fields.Str(required=False, dump_to="Type"), + } + + class UpdateRuleAttributeRequestSchema(schema.RequestSchema): """UpdateRuleAttribute - 更新应用型负载均衡监听器的一条转发规则的属性""" diff --git a/ucloud/services/ulb/schemas/models.py b/ucloud/services/ulb/schemas/models.py index 370b349..dd4662d 100644 --- a/ucloud/services/ulb/schemas/models.py +++ b/ucloud/services/ulb/schemas/models.py @@ -30,69 +30,40 @@ class BackendSetSchema(schema.ResponseSchema): } -class HostConfigSetSchema(schema.ResponseSchema): - """HostConfigSet - 域名相关配置""" - - fields = { - "MatchMode": fields.Str(required=False, load_from="MatchMode"), - "Values": fields.List(fields.Str()), - } - - -class HealthCheckConfigSetSchema(schema.ResponseSchema): - """HealthCheckConfigSet - 健康检查相关配置""" +class FixedResponseConfigSetSchema(schema.ResponseSchema): + """FixedResponseConfigSet - 静态返回相关配置""" fields = { - "Domain": fields.Str(required=False, load_from="Domain"), - "DownCounts": fields.Int(required=False, load_from="DownCounts"), - "Enabled": fields.Bool(required=False, load_from="Enabled"), - "HTTPVersion": fields.Str(required=False, load_from="HTTPVersion"), - "Interval": fields.Int(required=False, load_from="Interval"), - "Method": fields.Str(required=False, load_from="Method"), - "Path": fields.Str(required=False, load_from="Path"), - "Port": fields.Int(required=False, load_from="Port"), - "ResponseCode": fields.Str(required=False, load_from="ResponseCode"), - "TimeOut": fields.Int(required=False, load_from="TimeOut"), - "Type": fields.Str(required=False, load_from="Type"), - "UpCounts": fields.Int(required=False, load_from="UpCounts"), + "Content": fields.Str(required=False, load_from="Content"), + "HttpCode": fields.Int(required=True, load_from="HttpCode"), } -class StickinessConfigSetSchema(schema.ResponseSchema): - """StickinessConfigSet - 会话保持相关配置""" +class RemoveHeaderConfigSetSchema(schema.ResponseSchema): + """RemoveHeaderConfigSet - 删除 header 相关配置""" fields = { - "CookieName": fields.Str(required=False, load_from="CookieName"), - "Enabled": fields.Bool(required=False, load_from="Enabled"), - "Type": fields.Str(required=False, load_from="Type"), + "Key": fields.Str(required=True, load_from="Key"), } -class CertificateSchema(schema.ResponseSchema): - """Certificate - (应用型专用)服务器证书信息""" +class ProxyBufferingConfigSchema(schema.ResponseSchema): + """ProxyBufferingConfig - 缓存配置""" fields = { - "IsDefault": fields.Bool(required=False, load_from="IsDefault"), - "SSLId": fields.Str(required=False, load_from="SSLId"), + "CloseProxyBuffering": fields.Bool( + required=False, load_from="CloseProxyBuffering" + ), } -class TargetSchema(schema.ResponseSchema): - """Target - 服务节点信息""" +class InsertHeaderConfigSetSchema(schema.ResponseSchema): + """InsertHeaderConfigSet - 插入 header 相关配置""" fields = { - "Enabled": fields.Bool(required=False, load_from="Enabled"), - "Id": fields.Str(required=False, load_from="Id"), - "IsBackup": fields.Bool(required=False, load_from="IsBackup"), - "Port": fields.Int(required=False, load_from="Port"), - "ResourceIP": fields.Str(required=False, load_from="ResourceIP"), - "ResourceId": fields.Str(required=False, load_from="ResourceId"), - "ResourceName": fields.Str(required=False, load_from="ResourceName"), - "ResourceType": fields.Str(required=False, load_from="ResourceType"), - "State": fields.Str(required=False, load_from="State"), - "SubnetId": fields.Str(required=False, load_from="SubnetId"), - "VPCId": fields.Str(required=False, load_from="VPCId"), - "Weight": fields.Int(required=False, load_from="Weight"), + "Key": fields.Str(required=True, load_from="Key"), + "Value": fields.Str(required=True, load_from="Value"), + "ValueType": fields.Str(required=True, load_from="ValueType"), } @@ -121,25 +92,6 @@ class CorsConfigSetSchema(schema.ResponseSchema): } -class FixedResponseConfigSetSchema(schema.ResponseSchema): - """FixedResponseConfigSet - 静态返回相关配置""" - - fields = { - "Content": fields.Str(required=False, load_from="Content"), - "HttpCode": fields.Int(required=True, load_from="HttpCode"), - } - - -class ProxyBufferingConfigSchema(schema.ResponseSchema): - """ProxyBufferingConfig - 缓存配置""" - - fields = { - "CloseProxyBuffering": fields.Bool( - required=False, load_from="CloseProxyBuffering" - ), - } - - class ForwardTargetSetSchema(schema.ResponseSchema): """ForwardTargetSet - 转发的后端服务节点""" @@ -157,24 +109,6 @@ class ForwardConfigSetSchema(schema.ResponseSchema): } -class InsertHeaderConfigSetSchema(schema.ResponseSchema): - """InsertHeaderConfigSet - 插入 header 相关配置""" - - fields = { - "Key": fields.Str(required=True, load_from="Key"), - "Value": fields.Str(required=True, load_from="Value"), - "ValueType": fields.Str(required=True, load_from="ValueType"), - } - - -class RemoveHeaderConfigSetSchema(schema.ResponseSchema): - """RemoveHeaderConfigSet - 删除 header 相关配置""" - - fields = { - "Key": fields.Str(required=True, load_from="Key"), - } - - class RuleActionSchema(schema.ResponseSchema): """RuleAction - 转发动作""" @@ -191,6 +125,15 @@ class RuleActionSchema(schema.ResponseSchema): } +class HostConfigSetSchema(schema.ResponseSchema): + """HostConfigSet - 域名相关配置""" + + fields = { + "MatchMode": fields.Str(required=False, load_from="MatchMode"), + "Values": fields.List(fields.Str()), + } + + class PathConfigSetSchema(schema.ResponseSchema): """PathConfigSet - 路径相关配置""" @@ -221,6 +164,63 @@ class RuleSchema(schema.ResponseSchema): } +class CertificateSchema(schema.ResponseSchema): + """Certificate - (应用型专用)服务器证书信息""" + + fields = { + "IsDefault": fields.Bool(required=False, load_from="IsDefault"), + "SSLId": fields.Str(required=False, load_from="SSLId"), + } + + +class TargetSchema(schema.ResponseSchema): + """Target - 服务节点信息""" + + fields = { + "Enabled": fields.Bool(required=False, load_from="Enabled"), + "Id": fields.Str(required=False, load_from="Id"), + "IsBackup": fields.Bool(required=False, load_from="IsBackup"), + "Port": fields.Int(required=False, load_from="Port"), + "ResourceIP": fields.Str(required=False, load_from="ResourceIP"), + "ResourceId": fields.Str(required=False, load_from="ResourceId"), + "ResourceName": fields.Str(required=False, load_from="ResourceName"), + "ResourceType": fields.Str(required=False, load_from="ResourceType"), + "State": fields.Str(required=False, load_from="State"), + "SubnetId": fields.Str(required=False, load_from="SubnetId"), + "VPCId": fields.Str(required=False, load_from="VPCId"), + "Weight": fields.Int(required=False, load_from="Weight"), + } + + +class HealthCheckConfigSetSchema(schema.ResponseSchema): + """HealthCheckConfigSet - 健康检查相关配置""" + + fields = { + "Domain": fields.Str(required=False, load_from="Domain"), + "DownCounts": fields.Int(required=False, load_from="DownCounts"), + "Enabled": fields.Bool(required=False, load_from="Enabled"), + "HTTPVersion": fields.Str(required=False, load_from="HTTPVersion"), + "Interval": fields.Int(required=False, load_from="Interval"), + "Method": fields.Str(required=False, load_from="Method"), + "Path": fields.Str(required=False, load_from="Path"), + "Port": fields.Int(required=False, load_from="Port"), + "ResponseCode": fields.Str(required=False, load_from="ResponseCode"), + "TimeOut": fields.Int(required=False, load_from="TimeOut"), + "Type": fields.Str(required=False, load_from="Type"), + "UpCounts": fields.Int(required=False, load_from="UpCounts"), + } + + +class StickinessConfigSetSchema(schema.ResponseSchema): + """StickinessConfigSet - 会话保持相关配置""" + + fields = { + "CookieName": fields.Str(required=False, load_from="CookieName"), + "Enabled": fields.Bool(required=False, load_from="Enabled"), + "Type": fields.Str(required=False, load_from="Type"), + } + + class ListenerSchema(schema.ResponseSchema): """Listener - 负载均衡监听器信息""" @@ -257,17 +257,6 @@ class ListenerSchema(schema.ResponseSchema): } -class SecGroupInfoSchema(schema.ResponseSchema): - """SecGroupInfo - 安全组详细信息""" - - fields = { - "Name": fields.Str(required=False, load_from="Name"), - "Priority": fields.Int(required=False, load_from="Priority"), - "SecgroupId": fields.Str(required=False, load_from="SecgroupId"), - "VPCId": fields.Str(required=False, load_from="VPCId"), - } - - class AccessLogConfigSetSchema(schema.ResponseSchema): """AccessLogConfigSet - (应用型专用)访问日志相关配置""" @@ -292,6 +281,17 @@ class IPInfoSchema(schema.ResponseSchema): } +class SecGroupInfoSchema(schema.ResponseSchema): + """SecGroupInfo - 安全组详细信息""" + + fields = { + "Name": fields.Str(required=False, load_from="Name"), + "Priority": fields.Int(required=False, load_from="Priority"), + "SecgroupId": fields.Str(required=False, load_from="SecgroupId"), + "VPCId": fields.Str(required=False, load_from="VPCId"), + } + + class FirewallSetSchema(schema.ResponseSchema): """FirewallSet - ulb防火墙信息""" @@ -468,31 +468,34 @@ class TLSAndCiphersSchema(schema.ResponseSchema): } -class ULBIPSetSchema(schema.ResponseSchema): - """ULBIPSet - DescribeULB""" +class BindSecurityPolicySchema(schema.ResponseSchema): + """BindSecurityPolicy - VServer绑定的安全策略组信息""" fields = { - "Bandwidth": fields.Int(required=False, load_from="Bandwidth"), - "BandwidthType": fields.Int(required=False, load_from="BandwidthType"), - "EIP": fields.Str(required=False, load_from="EIP"), - "EIPId": fields.Str(required=False, load_from="EIPId"), - "OperatorName": fields.Str(required=False, load_from="OperatorName"), + "SSLCiphers": fields.List(fields.Str()), + "SecurityPolicyId": fields.Str( + required=False, load_from="SecurityPolicyId" + ), + "SecurityPolicyName": fields.Str( + required=False, load_from="SecurityPolicyName" + ), + "SecurityPolicyType": fields.Int( + required=False, load_from="SecurityPolicyType" + ), + "TLSVersion": fields.Str(required=False, load_from="TLSVersion"), } -class ULBBackendSetSchema(schema.ResponseSchema): - """ULBBackendSet - DescribeULB""" +class PolicyBackendSetSchema(schema.ResponseSchema): + """PolicyBackendSet - 内容转发下rs详细信息""" fields = { "BackendId": fields.Str(required=False, load_from="BackendId"), - "Enabled": fields.Int(required=False, load_from="Enabled"), - "IsBackup": fields.Int(required=False, load_from="IsBackup"), + "ObjectId": fields.Str(required=False, load_from="ObjectId"), "Port": fields.Int(required=False, load_from="Port"), "PrivateIP": fields.Str(required=False, load_from="PrivateIP"), - "ResourceId": fields.Str(required=False, load_from="ResourceId"), "ResourceName": fields.Str(required=False, load_from="ResourceName"), "ResourceType": fields.Str(required=False, load_from="ResourceType"), - "Status": fields.Int(required=False, load_from="Status"), "SubResourceId": fields.Str(required=False, load_from="SubResourceId"), "SubResourceName": fields.Str( required=False, load_from="SubResourceName" @@ -500,22 +503,44 @@ class ULBBackendSetSchema(schema.ResponseSchema): "SubResourceType": fields.Str( required=False, load_from="SubResourceType" ), - "SubnetId": fields.Str(required=False, load_from="SubnetId"), - "VPCId": fields.Str(required=False, load_from="VPCId"), - "Weight": fields.Int(required=False, load_from="Weight"), } -class PolicyBackendSetSchema(schema.ResponseSchema): - """PolicyBackendSet - 内容转发下rs详细信息""" +class LoggerSetSchema(schema.ResponseSchema): + """LoggerSet - ulb日志信息""" + + fields = { + "BucketName": fields.Str(required=False, load_from="BucketName"), + "TokenID": fields.Str(required=False, load_from="TokenID"), + "TokenName": fields.Str(required=False, load_from="TokenName"), + } + + +class ULBIPSetSchema(schema.ResponseSchema): + """ULBIPSet - DescribeULB""" + + fields = { + "Bandwidth": fields.Int(required=False, load_from="Bandwidth"), + "BandwidthType": fields.Int(required=False, load_from="BandwidthType"), + "EIP": fields.Str(required=False, load_from="EIP"), + "EIPId": fields.Str(required=False, load_from="EIPId"), + "OperatorName": fields.Str(required=False, load_from="OperatorName"), + } + + +class ULBBackendSetSchema(schema.ResponseSchema): + """ULBBackendSet - DescribeULB""" fields = { "BackendId": fields.Str(required=False, load_from="BackendId"), - "ObjectId": fields.Str(required=False, load_from="ObjectId"), + "Enabled": fields.Int(required=False, load_from="Enabled"), + "IsBackup": fields.Int(required=False, load_from="IsBackup"), "Port": fields.Int(required=False, load_from="Port"), "PrivateIP": fields.Str(required=False, load_from="PrivateIP"), + "ResourceId": fields.Str(required=False, load_from="ResourceId"), "ResourceName": fields.Str(required=False, load_from="ResourceName"), "ResourceType": fields.Str(required=False, load_from="ResourceType"), + "Status": fields.Int(required=False, load_from="Status"), "SubResourceId": fields.Str(required=False, load_from="SubResourceId"), "SubResourceName": fields.Str( required=False, load_from="SubResourceName" @@ -523,6 +548,9 @@ class PolicyBackendSetSchema(schema.ResponseSchema): "SubResourceType": fields.Str( required=False, load_from="SubResourceType" ), + "SubnetId": fields.Str(required=False, load_from="SubnetId"), + "VPCId": fields.Str(required=False, load_from="VPCId"), + "Weight": fields.Int(required=False, load_from="Weight"), } @@ -546,24 +574,6 @@ class ULBPolicySetSchema(schema.ResponseSchema): } -class BindSecurityPolicySchema(schema.ResponseSchema): - """BindSecurityPolicy - VServer绑定的安全策略组信息""" - - fields = { - "SSLCiphers": fields.List(fields.Str()), - "SecurityPolicyId": fields.Str( - required=False, load_from="SecurityPolicyId" - ), - "SecurityPolicyName": fields.Str( - required=False, load_from="SecurityPolicyName" - ), - "SecurityPolicyType": fields.Int( - required=False, load_from="SecurityPolicyType" - ), - "TLSVersion": fields.Str(required=False, load_from="TLSVersion"), - } - - class ULBVServerSetSchema(schema.ResponseSchema): """ULBVServerSet - DescribeULB""" @@ -600,16 +610,6 @@ class ULBVServerSetSchema(schema.ResponseSchema): } -class LoggerSetSchema(schema.ResponseSchema): - """LoggerSet - ulb日志信息""" - - fields = { - "BucketName": fields.Str(required=False, load_from="BucketName"), - "TokenID": fields.Str(required=False, load_from="TokenID"), - "TokenName": fields.Str(required=False, load_from="TokenName"), - } - - class ULBSetSchema(schema.ResponseSchema): """ULBSet - DescribeULB""" diff --git a/ucloud/version.py b/ucloud/version.py index 03fcd42..fb1b666 100644 --- a/ucloud/version.py +++ b/ucloud/version.py @@ -1 +1 @@ -version = "0.11.129" +version = "0.11.130"