华为云用户手册

  • 请求消息 表2 请求参数 参数 是否必选 参数类型 描述 rule 是 Object 转发规则对象。详见表3。 表3 rule字段说明 参数 是否必选 参数类型 描述 tenant_id 否 String 转发规则所在的项目ID。 获取方法详见获取项目ID。 需要和token中的project_id一致。 支持的最大字符长度:255 project_id 否 String 此参数和tenant_id参数含义一样,均指转发规则所在的项目ID。 获取方法详见获取项目ID。 需要和token中的project_id一致。 admin_state_up 否 Boolean 转发规则的管理状态; 该字段为预留字段,暂未启用。默认为true。 type 是 String 转发规则的匹配类型。 取值范围: HOST_NAME:匹配请求中的 域名 ; PATH:匹配请求中的路径; 同一个转发策略下转发规则的type不能重复。 compare_type 是 String 转发匹配方式: type为HOST_NAME时,取值范围: EQUAL_TO:精确匹配; type为PATH时,取值范围: REGEX:正则匹配; STARTS_WITH:前缀匹配; EQUAL_TO:精确匹配。 invert 否 Boolean 是否反向匹配; 取值范围:true/false。默认值:false; 该字段为预留字段,暂未启用。 key 否 String 匹配内容的键值。默认为null。 该字段为预留字段,暂未启用。 支持的最大字符长度:255 value 是 String 匹配内容的值。不能包含空格。 支持的最大字符长度:128 当type为HOST_NAME时,取值范围:String (100),字符串只能包含英文字母、数字、“-”或“.”,且必须以字母或数字开头。 当type为PATH时,取值范围:String (128)。当转发规则的compare_type为STARTS_WITH、EQUAL_TO时,字符串只能包含英文字母、数字、_~';@^-%#&$.*+?,=!:| \/()[]{},且必须以"/"开头。
  • 响应示例 响应样例 { "certificate": "-----BEGIN CERTIFICATE----- \nMIIC4TCCAcmgAwIBAgICEREwDQYJKoZIhvcNAQELBQAwFzEVMBMGA1UEAxMMTXlD \nb21wYW55IENBMB4XDTE4MDcwMjEzMjU0N1oXDTQ1MTExNzEzMjU0N1owFDESMBAG \nA1UEAwwJbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA \n0FQGzi3ucTX+DNud1p/b4XVM6I3rY7+Cfge5GMLDIUXIHXCfCgp19Z3807yNpLF5 \nU0NqPQZKUrZz3rQeLN9mYiUTJZPutYlFDDbB8CtlgV+eyU9yYJslWx/Bm5kWNPh9 \n7B9Yu9pbp2u6zDA99IC4ekKD93KuzxlnLmSle4Y3dbYwk0LpMDL6lfCHKt/W7jaS \nIAzlsxD+QM6l7QjhWJ+kUx+UkboOISjTe7E9XmDLJR7u8LRAQylYKy4zgnv1tn/K \ny09cxLKAFtgoZWQD2FAZJf9F7k1kYNwqITz3CPlLZUUn7yw3nkOOtLMI28IEv0Wy \nYd7CMJQkS1NPJBKNOGfR/wIDAQABozowODAhBgNVHREEGjAYggpkb21haW4uY29t \nhwQKuUvJhwR/AAABMBMGA1UdJQQMMAoGCCsGAQUFBwMBMA0G CS qGSIb3DQEBCwUA \nA4IBAQA8lMQJxaTey7EjXtRLSVlEAMftAQPG6jijNQuvIBQYUDauDT4W2XUZ5wAn \njiOyQ83va672K1G9s8n6xlH+xwwdSNnozaKzC87vwSeZKIOdl9I5I98TGKI6OoDa \nezmzCwQYtHBMVQ4c7Ml8554Ft1mWSt4dMAK2rzNYjvPRLYlzp1HMnI6hkjPk4PCZ \nwKnha0dlScati9CCt3UzXSNJOSLalKdHErH08Iqd+1BchScxCfk0xNITn1HZZGmI \n+vbmunok3A2lucI14rnsrcbkGYqxGikySN6B2cRLBDK4Y3wChiW6NVYtVqcx5/mZ \niYsGDVN+9QBd0eYUHce+77s96i3I \n-----END CERTIFICATE-----", "create_time": "2017-02-25 09:35:27", "expire_time": "2045-11-17 13:25:47", "description": "description for certificate", "domain": "www.elb.com", "id": "23ef9aad4ecb463580476d324a6c71af", "tenant_id": "a31d2bdcf7604c0faaddb058e1e08819", "admin_state_up": true, "name": "https_certificate", "private_key": "-----BEGIN PRIVATE KEY----- \nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQVAbOLe5xNf4M \n253Wn9vhdUzojetjv4J+B7kYwsMhRcgdcJ8KCnX1nfzTvI2ksXlTQ2o9BkpStnPe \ntB4s32ZiJRMlk+61iUUMNsHwK2WBX57JT3JgmyVbH8GbmRY0+H3sH1i72luna7rM \nMD30gLh6QoP3cq7PGWcuZKV7hjd1tjCTQukwMvqV8Icq39buNpIgDOWzEP5AzqXt \nCOFYn6RTH5SRug4hKNN7sT1eYMslHu7wtEBDKVgrLjOCe/W2f8rLT1zEsoAW2Chl \nZAPYUBkl/0XuTWRg3CohPPcI+UtlRSfvLDeeQ460swjbwgS/RbJh3sIwlCRLU08k \nEo04Z9H/AgMBAAECggEAEIeaQqHCWZk/HyYN0Am/GJSGFa2tD60SXY2fUieh8/Hl \nfvCArftGgMaYWPSNCJRMXB7tPwpQu19esjz4Z/cR2Je4fTLPrffGUsHFgZjv5OQB \nZVe4a5Hj1OcgJYhwCqPs2d9i2wToYNBbcfgh8lSETq8YaXngBO6vES9LMhHkNKKr \nciu9YkInNEHu6uRJ5g/eGGX3KQynTvVIhnOVGAJvjTXcoU6fm7gYdHAD6jk9lc9M \nEGpfYI6AdHIwFZcT/RNAxhP82lg2gUJSgAu66FfDjMwQXKbafKdP3zq4Up8a7Ale \nkrguPtfV1vWklg+bUFhgGaiAEYTpAUN9t2DVIiijgQKBgQDnYMMsaF0r557CM1CT \nXUqgCZo8MKeV2jf2drlxRRwRl33SksQbzAQ/qrLdT7GP3sCGqvkxWY2FPdFYf8kx \nGcCeZPcIeZYCQAM41pjtsaM8tVbLWVR8UtGBuQoPSph7JNF3Tm/JH/fbwjpjP7dt \nJ7n8EzkRUNE6aIMHOFEeych/PQKBgQDmf1bMogx63rTcwQ0PEZ9Vt7mTgKYK4aLr \niWgTWHXPZxUQaYhpjXo6+lMI6DpExiDgBAkMzJGIvS7yQiYWU+wthAr9urbWYdGZ \nlS6VjoTkF6r7VZoILXX0fbuXh6lm8K8IQRfBpJff56p9phMwaBpDNDrfpHB5utBU \nxs40yIdp6wKBgQC69Cp/xUwTX7GdxQzEJctYiKnBHKcspAg38zJf3bGSXU/jR4eB \n1lVQhELGI9CbKSdzKM71GyEImix/T7FnJSHIWlho1qVo6AQyduNWnAQD15pr8KAd \nXGXAZZ1FQcb3KYa+2fflERmazdOTwjYZ0tGqZnXkEeMdSLkmqlCRigWhGQKBgDak \n/735uP20KKqhNehZpC2dJei7OiIgRhCS/dKASUXHSW4fptBnUxACYocdDxtY4Vha \nfI7FPMdvGl8ioYbvlHFh+X0Xs9r1S8yeWnHoXMb6eXWmYKMJrAoveLa+2cFm1Agf \n7nLhA4R4lqm9IpV6SKegDUkR4fxp9pPyodZPqBLLAoGBAJkD4wHW54Pwd4Ctfk9o \njHjWB7pQlUYpTZO9dm+4fpCMn9Okf43AE2yAOaAP94GdzdDJkxfciXKcsYr9IIuk \nfaoXgjKR7p1zERiWZuFF63SB4aiyX1H7IX0MwHDZQO38a5gZaOm/BUlGKMWXzuEd \n3fy+1rCUwzOp9LSjtJYf4ege \n-----END PRIVATE KEY-----", "type": "server", "update_time": "2017-02-25 09:35:27" }
  • 响应消息 表2 响应参数 参数 参数类型 描述 id String SSL证书ID。 tenant_id String SSL证书所在的项目ID。 支持的最大字符长度:255 admin_state_up Boolean SSL证书的管理状态; 该字段为预留字段,暂未启用。取值范围:true/false。 true表示开启。 false表示关闭。 name String SSL证书名称。 支持的最大字符长度:255 description String 证书描述SSL证书描述。 支持的最大字符长度:255 type String SSL证书的类型。 取值范围: server:服务端证书; client:客户端证书; domain String 服务端证书所签域名。 支持的最大字符长度:100 private_key String PEM格式的服务端私有密钥。 certificate String PEM格式的服务端公有密钥或者用于认证客户端证书的CA证书,由type字段区分。 expire_time String SSL证书的过期时间。 格式为UTC时间:YYYY-MM-DDTHH:MM:SS create_time String SSL证书的创建时间。 格式为UTC时间:YYYY-MM-DDTHH:MM:SS update_time String SSL证书的更新时间。 格式为UTC时间:YYYY-MM-DDTHH:MM:SS
  • 修订记录 版本日期 变更说明 2023-05-12 第十五次正式发布。 负载均衡器新增参数protection_status、protection_reason。 监听器新增参数protection_status、protection_reason、gzip_enable。 转发策略新增redirect_pools_extend_config字段。 转发策略新增转发到的后端主机组的配置字段redirect_pools_extend_config。 后端服务器组新增参数protection_status、protection_reason。 更新后端服务器请求参数新增请求参数protocol_port。 新增quota类型condition_per_policy、listeners_per_pool、ipgroup_bindings、ipgroup_max_length。 2022-06-16 第十四次正式发布。 更新如下: 创建负载均衡器新增参数charge_mode。 创建负载均衡器、查询负载均衡器列表、查询负载均衡器详情、更新负载均衡器删除参数min_l4_flavor_id。 创建监听器、查询监听器列表、查询监听器详情、更新监听器、新增参数sni_match_algo。 2021-12-02 第十三次正式发布。 更新如下: 新增l7_qps_usage相关监控指标说明:监控指标说明。 2021-10-15 第十二次正式发布。 更新如下: 新增v3接口:API(独享型)。 2021-08-16 第十一次正式发布。 更新如下: 每个接口新增API Explore调试链接。如:调试。 2021-08-16 第十次正式发布。 更新如下: 原“API(共享型_企业项目)”修改为“API(共享型)”。 原“API(共享型)”修改为“API(共享型OpenStack API)”,并放入“历史API”中。 2020-07-15 第九次正式发布。 本次变更说明如下: 废弃“删除负载均衡器”和“删除监听器”2个API中的级联删除(cascade)功能,对应具体章节如下。 删除负载均衡器 删除监听器 删除负载均衡器 删除监听器 如果您想要删除负载均衡器或监听器,请参考对应API的“接口约束”。先删除关联资源,再删除负载均衡器或监听器。 2020-05-30 第八次正式发布。 本次变更说明如下: “增强型”负载均衡更名为“共享型”负载均衡。 2019-05-30 第七次正式发布。 本次变更说明如下: 监控指标说明增加七层后端返回码。 API(共享型OpenStack API)章节,新增参数project_id。 2018-12-30 第六次正式发布。 本次变更说明如下: 增加级联删除参数。 2018-11-30 第五次正式发布。 本次变更说明如下: 多项目管理,增加企业ID。 增加增强型错误码。 七层ELB透传公网IP到后端,监听器章节增加参数。 转发规则增加value参数。 转发规则和后端云服务器章节增加会话保持参数。 监控指标说明增加参数。 2018-10-30 第四次正式发布。 本次变更说明如下: 统一接口格式。 统一“tenant_id”和“project_id”字段描述。 增强型SSL证书接口变动。 2018-07-30 第三次正式发布。 修改SSL证书管理 修改健康检查 2018-05-30 第二次正式发布。 新增“UDP”特性描述。 2018-04-30 第一次正式发布。
  • 请求示例 请求样例1 创建私网负载均衡器 POST https://{Endpoint}/v2/1867112d054b427e808cc6096d8193a1/elb/loadbalancers { "loadbalancer": { "name": "loadbalancer1", "description": "simple lb", "tenant_id": "1867112d054b427e808cc6096d8193a1", "vip_subnet_id": "58077bdb-d470-424b-8c45-2e3c65060a5b", "vip_address": "10.0.0.4", "admin_state_up": true, "enterprise_project_id": "0aad99bc-f5f6-4f78-8404-c598d76b0ed2" } }
  • 响应示例 响应样例1 { "loadbalancer": { "description": "", "admin_state_up": true, "tenant_id": "1867112d054b427e808cc6096d8193a1", "project_id": "1867112d054b427e808cc6096d8193a1", "provisioning_status": "ACTIVE", "vip_subnet_id": "58077bdb-d470-424b-8c45-2e3c65060a5b", "listeners": [], "vip_address": "10.0.0.4", "vip_port_id": "519f6af5-74aa-4347-9dba-84c440192877", "provider": "vlb", "pools": [], "tags": [], "id": "b0657373-0c68-41d1-980f-1a44d9e3ff01", "operating_status": "ONLINE", "name": "loadbalancer1", "created_at": "2018-07-25T01:54:13", "updated_at": "2018-07-25T01:54:14", "enterprise_project_id": "0aad99bc-f5f6-4f78-8404-c598d76b0ed2" } }
  • 响应消息 表4 响应参数 参数 参数类型 描述 loadbalancer Loadbalancer object 负载均衡器对象。详见表5。 表5 loadbalancer字段说明 参数 参数类型 描述 id String 负载均衡器ID。 project_id String 负载均衡器所在项目的ID。 tenant_id String 负载均衡器所在项目的ID。 支持的最大字符长度:255 name String 负载均衡器名称。 支持的最大字符长度:255 description String 负载均衡器的描述信息。 支持的最大字符长度:255 vip_subnet_id String 负载均衡器所在的子网IPv4子网ID。 vip_port_id String 负载均衡器内网IP对应的端口ID。 provider String 负载均衡器的生产者名称。 vip_address String 负载均衡器的内网IP。 支持的最大字符长度:64 listeners Array of Listeners objects 负载均衡器关联监听器ID的列表。详见表6 pools Array of Pools objects 负载均衡器关联后端服务器组ID的列表。详见表7 operating_status String 负载均衡器的操作状态。取值范围:可以为ONLINE和FROZEN。 provisioning_status String 该字段为预留字段,暂未启用。 负载均衡器的配置状态。取值范围:可以为ACTIVE。 admin_state_up Boolean 负载均衡器的管理状态。 该字段为预留字段,暂未启用。取值范围:true/false。 true表示开启。 false表示关闭。 tags Array 负载均衡器的标签列表。 created_at String 负载均衡器的创建时间。 格式为UTC时间:YYYY-MM-DDTHH:MM:SS 支持的最大字符长度:19 updated_at String 负载均衡器的更新时间。 格式为UTC时间:YYYY-MM-DDTHH:MM:SS 支持的最大字符长度:19 enterprise_project_id String 企业项目ID。创建负载均衡器时,给负载均衡器绑定企业项目ID。 取值范围:带“-”连字符的UUID格式,或者是字符串“0”。“0”表示默认企业项目。 说明: 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理用户指南》。 表6 listeners字段说明 参数 参数类型 描述 id String 关联的监听器id 表7 pools字段说明 参数 参数类型 描述 id String 关联的后端服务器组id
  • 请求消息 表2 请求参数 参数 是否必选 参数类型 描述 loadbalancer 是 Loadbalancer object 负载均衡器对象。详见表3。 表3 loadbalancer字段说明 参数 是否必选 参数类型 描述 name 否 String 负载均衡器名称。 支持的最大字符长度:255 description 否 String 负载均衡器的描述信息。 支持的最大字符长度:255 tenant_id 否 String 负载均衡器所在的项目ID。 支持的最大字符长度:255 获取方法详见获取项目ID。 需要和token中的project_id一致。 vip_subnet_id 是 String 负载均衡器所在的子网IPv4子网ID。可通过查询子网列表获取(字段是neutron_subnet_id)。vip_address将从该子网中产生。 只支持指定IPv4子网。暂不支持IPv6。 provider 否 String 负载均衡器的生产者。 取值范围:vlb。 vip_address 否 String 负载均衡器的内网IP。 该IP必须为vip_subnet_id字段指定的子网网段中的IP。若不指定,自动从vip_subnet_id字段指定的子网网段中生成一个IP地址。 支持的最大字符长度:64 包周期实例不支持指定IP地址,会自动从子网分配。 admin_state_up 否 Boolean 负载均衡器的管理状态。 该字段为预留字段,暂未启用。默认为true。 enterprise_project_id 否 String 企业项目ID。创建负载均衡器时,给负载均衡器绑定企业项目ID。 取值范围:带“-”连字符的UUID格式,或者是字符串“0”。“0”表示默认企业项目。 默认值:"0"。 说明: 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理用户指南》。
  • 健康检查 权限 对应API接口 授权项 IAM 项目(Project) 企业项目(Enterprise Project) 创建healthmonitor POST /v2/{project_id}/elb/healthmonitors elb:healthmonitors:create √ √ 查询healthmonitor GET /v2/{project_id}/elb/healthmonitors/{healthmonitor_id} elb:healthmonitors:get √ √ 查询healthmonitor列表 GET /v2/{project_id}/elb/healthmonitors elb:healthmonitors:list √ √ 更新healthmonitor PUT /v2/{project_id}/elb/healthmonitors/{healthmonitor_id} elb:healthmonitors:put √ √ 删除healthmonitor DELETE /v2/{project_id}/elb/healthmonitors/{healthmonitor_id} elb:healthmonitors:delete √ √ 父主题: V2API授权项列表
  • 请求示例 请求样例1 更新后端云服务器组的名称、描述和负载均衡算法 PUT https://{Endpoint}/v2/1a3e005cf9ce40308c900bcb08e5320c/elb/pools/12ff63af-4127-4074-a251-bcb2ecc53ebe { "pool": { "name": "pool2", "description": "pool two", "lb_algorithm": "LEAST_CONNECTIONS" } }
  • 响应示例 响应样例1 { "pool": { "lb_algorithm": "LEAST_CONNECTIONS", "protocol": "HTTP", "description": "pool two", "admin_state_up": false, "tenant_id": "1a3e005cf9ce40308c900bcb08e5320c", "project_id": "1a3e005cf9ce40308c900bcb08e5320c", "session_persistence": { "cookie_name": null, "type": "HTTP_COOKIE", "persistence_timeout": 1440 }, "healthmonitor_id": null, "listeners": [ { "id": "39de4d56-d663-46e5-85a1-5b9d5fa17829" } ], "members": [], "id": "12ff63af-4127-4074-a251-bcb2ecc53ebe", "name": "pool2" } }
  • 响应消息 表5 响应参数 参数 参数类型 描述 pool Pool object 后端云服务器组对象。详见表6 pool字段说明 表6 pool字段说明 参数 参数类型 描述 id String 后端云服务器组 ID。 tenant_id String 后端云服务器组所属的项目 ID。 支持的最大字符长度:255 project_id String 此参数和tenant_id参数含义一样,均指后端云服务器组所属的项目 ID。 name String 后端云服务器组名称。 支持的最大字符长度:255 description String 后端云服务器组的描述信息。 支持的最大字符长度:255 protocol String 后端云服务器组的后端协议。 取值范围:TCP、UDP和HTTP。 当指定listener_id创建后端云服务器组时,后端云服务器组的protocol和它关联的监听器的protocol有如下关系: 监听器的protocol为UDP时,后端云服务器组的protocol必须为UDP; 监听器的protocol为TCP时,后端云服务器组的protocol必须为TCP; 监听器的protocol为HTTP或TERMINATED_HTTPS时,后端云服务器组的protocol必须为HTTP。 lb_algorithm String 后端云服务器组的负载均衡算法。 取值范围: ROUND_ROBIN:加权轮询算法。 LEAST_CONNECTIONS:加权最少连接算法。 SOURCE_IP:源IP算法。当该字段的取值为SOURCE_IP时,后端云服务器组绑定的后端云服务器的weight字段无效。 members Array of Members objects 后端云服务器组关联的后端云服务器ID的列表。详见表7 healthmonitor_id String 后端云服务器组关联的健康检查的ID。 admin_state_up Boolean 后端云服务器组的管理状态。 该字段为预留字段,暂未启用。取值范围:true/false。 true表示开启。 false表示关闭。 listeners Array of Listeners objects 后端云服务器组关联的监听器ID列表。详见表8 loadbalancers Array of Loadbalancers objects 后端云服务器组关联的负载均衡器ID列表。详见表9 session_persistence SessionPersistence object 后端云服务器组的会话持久性。详见表10。 当开启会话保持后,在一定时间内,来自同一客户端的请求会发送到同一个后端云服务器上。 取值范围:当会话保持关闭时,该字段取值为null。 表7 members字段说明 参数 参数类型 描述 id String 关联的后端服务器id 表8 listeners字段说明 参数 参数类型 描述 id String 关联的后端服务器组id 表9 loadbalancers字段说明 参数 参数类型 描述 id String 关联的负载均衡器id 表10 session_persistence字段说明 参数 是否必选 参数类型 描述 type 是 String 会话保持的类型。 取值范围: SOURCE_IP:根据请求的源IP,将同一IP的请求发送到同一个后端云服务器上。 HTTP_COOKIE:客户端第一次发送请求时,负载均衡器自动生成cookie并将该cookie插入响应消息中,后续请求会发送到处理第一个请求的后端云服务器上。 APP_COOKIE:客户端第一次发送请求时,后端服务器生成cookie并将该cookie插入响应消息中,后续请求会发送到处理第一个请求的后端云服务器上。 当后端云服务器组的protocol为TCP时,只按SOURCE_IP生效;当后端云服务器组的protocol为HTTP时,只按HTTP_COOKIE、APP_COOKIE生效。 cookie_name 否 String cookie名称。支持字母、数字、中划线(-)和下划线(_),最大长度64个字符。 当会话保持类型是APP_COOKIE时,为必选字段,其它类型时不可指定。 persistence_timeout 否 Integer 会话保持的超时时间。 当type为APP_COOKIE时不生效。 取值范围: [1,60](分钟):当后端云服务器组的protocol为TCP、UDP时。 [1,1440](分钟):当后端云服务器组的protocol为HTTP、HTTPS时。
  • 请求消息 表2 请求参数 参数 是否必选 参数类型 描述 pool 是 Pool object 后端云服务器组对象。详见表3。 表3 pool字段说明 参数 是否必选 参数类型 描述 name 否 String 后端云服务器组名称。 支持的最大字符长度:255 description 否 String 后端云服务器组的描述信息。 支持的最大字符长度:255 lb_algorithm 否 String 后端云服务器组的负载均衡算法。 取值范围: ROUND_ROBIN:加权轮询算法。 LEAST_CONNECTIONS:加权最少连接算法。 SOURCE_IP:源IP算法。 当该字段的取值为SOURCE_IP时,后端云服务器组绑定的后端云服务器的weight字段无效。 admin_state_up 否 Boolean 后端云服务器组的管理状态。 该字段为预留字段,暂未启用。默认为true。 session_persistence 否 SessionPersistence object 后端云服务器组的会话持久性。详见表4。 当开启会话保持后,在一定时间内,来自同一客户端的请求会发送到同一个后端云服务器上。 取值范围:当会话保持关闭时,该字段取值为null。 表4 session_persistence字段说明 参数 是否必选 参数类型 描述 type 是 String 会话保持的类型。 取值范围: SOURCE_IP:根据请求的源IP,将同一IP的请求发送到同一个后端云服务器上。 HTTP_COOKIE:客户端第一次发送请求时,负载均衡器自动生成cookie并将该cookie插入响应消息中,后续请求会发送到处理第一个请求的后端云服务器上。 APP_COOKIE:客户端第一次发送请求时,后端服务器生成cookie并将该cookie插入响应消息中,后续请求会发送到处理第一个请求的后端云服务器上。 当后端云服务器组的protocol为TCP时,只按SOURCE_IP生效;当后端云服务器组的protocol为HTTP时,只按HTTP_COOKIE、APP_COOKIE生效。 cookie_name 否 String cookie名称。支持字母、数字、中划线(-)和下划线(_),最大长度64个字符。 当会话保持类型是APP_COOKIE时,为必选字段,其它类型时不可指定。 persistence_timeout 否 Integer 会话保持的超时时间。 当type为APP_COOKIE时不生效。 取值范围: [1,60](分钟):当后端云服务器组的protocol为TCP、UDP时。 [1,1440](分钟):当后端云服务器组的protocol为HTTP、HTTPS时。
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户token 表3 请求参数 参数 是否必选 参数类型 描述 tag 是 Object 标签对象。详见表4。 表4 tag 字段数据结构说明 参数 是否必选 参数类型 描述 key 是 String 标签名称。 不能为空。 长度不超过36个字符。 由英文字母、数字、下划线、中划线、中文字符组成。 同一资源的key值不能重复。 value 是 String 标签值。 长度不超过43个字符。 由英文字母、数字、下划线、点、中划线、中文字符组成。
  • 请求示例 请求样例 POST https://{Endpoint}/v2.0/6a0de1c3-7d74-4f4a-b75e-e57135bd2b97/loadbalancers/7add33ad-11dc-4ab9-a50f-419703f13163/tags { "tag": { "key": "key1", "value": "value1" } }
  • 响应示例 响应样例 { "member": { "name": "", "weight": 1, "admin_state_up": true, "subnet_id": "823d5866-6e30-45c2-9b1a-a1ebc3757fdb", "tenant_id": "145483a5107745e9b3d80f956713e6a3", "project_id": "145483a5107745e9b3d80f956713e6a3", "address": "192.172.3.100", "protocol_port": 8080, "operating_status": "ONLINE", "id": "e58f5bfa-0e46-4bc5-951c-8473d3e5f24a" } }
  • 响应消息 表2 响应参数 参数 参数类型 描述 member Object 后端云服务器对象列表。详见表3。 表3 member字段说明 参数 参数类型 描述 id String 后端云服务器的 ID。 说明: 此处并非服务器的ID,而是ELB添加后端服务器之后自动生成的member ID。 tenant_id String 后端云服务器所在的项目ID。 支持的最大字符长度:255 project_id String 此参数和tenant_id参数含义一样,均指后端云服务器所在的项目ID。 name String 后端云服务器的名称。 支持的最大字符长度:255 address String 后端云服务器对应的IP地址,该IP必须在subnet_id字段指定子网的网段中,例如192.168.3.11。 只能对应主网卡的IP。 支持的最大字符长度:64 protocol_port Integer 后端端口的协议号,取值范围[1,65535]。 subnet_id String 后端云服务器所在的子网ID。后端云服务器的IP地址在该子网的网段中。 不支持开启了ipv6的子网。 admin_state_up Boolean 后端云服务器的管理状态。 该字段为预留字段,暂未启用。取值范围:true/false。 true表示开启。 false表示关闭。 weight Integer 后端云服务器的权重,取值范围[0,100]。 权重为0的后端不再接受新的请求。默认为1。 operating_status String 后端云服务器的健康状态,取值: ONLINE,后端服务器正常运行。 NO_MONITOR,后端服务器无健康检查。 OFFLINE,已下线。
  • URI GET /v2.0/lbaas/pools/{pool_id}/members/{member_id} 表1 参数说明 参数 是否必选 参数类型 说明 pool_id 是 String 后端云服务器组ID。 member_id 是 String 后端云服务器ID。 说明: 此处并非服务器的ID,而是ELB添加后端服务器之后自动生成的member ID。 memberID可以通过查询后端云服务器接口获取。
  • 响应示例 响应样例 { "loadbalancer": { "description": "", "admin_state_up": true, "tenant_id": "1867112d054b427e808cc6096d8193a1", "project_id": "1867112d054b427e808cc6096d8193a1", "provisioning_status": "ACTIVE", "vip_subnet_id": "4f5e8efe-fbbe-405e-b48c-a41202ef697c", "listeners": [ { "id": "09e64049-2ab0-4763-a8c5-f4207875dc3e" } ], "vip_address": "192.168.2.4", "vip_port_id": "c7157e7a-036a-42ca-8474-100be22e3727", "provider": "vlb", "pools": [ { "id": "b7e53dbd-62ab-4505-a280-5c066078a5c9" } ], "id": "3d77894d-2ffe-4411-ac0a-0d57689779b8", "operating_status": "ONLINE", "tags": [], "name": "lb-2", "created_at": "2018-07-25T01:54:13", "updated_at": "2018-07-25T01:54:14", "enterprise_project_id": "0aad99bc-f5f6-4f78-8404-c598d76b0ed2" } }
  • 响应消息 表2 响应参数 参数 参数类型 描述 loadbalancer Loadbalancer object 负载均衡器对象。详见表3。 表3 loadbalancer字段说明 参数 参数类型 描述 id String 负载均衡器ID。 project_id String 负载均衡器所在项目的ID。 tenant_id String 负载均衡器所在项目的ID。 支持的最大字符长度:255 name String 负载均衡器名称。 支持的最大字符长度:255 description String 负载均衡器的描述信息。 支持的最大字符长度:255 vip_subnet_id String 负载均衡器所在的子网IPv4子网ID。 vip_port_id String 负载均衡器内网IP对应的端口ID。 provider String 负载均衡器的生产者名称。 vip_address String 负载均衡器的内网IP。 支持的最大字符长度:64 listeners Array of Listeners objects 负载均衡器关联监听器ID的列表。详见表6 pools Array of Pools objects 负载均衡器关联后端服务器组ID的列表。详见表7 operating_status String 负载均衡器的操作状态。取值范围:可以为ONLINE和FROZEN。 provisioning_status String 该字段为预留字段,暂未启用。 负载均衡器的配置状态。取值范围:可以为ACTIVE。 admin_state_up Boolean 负载均衡器的管理状态。 该字段为预留字段,暂未启用。取值范围:true/false。 true表示开启。 false表示关闭。 tags Array 负载均衡器的标签列表。 created_at String 负载均衡器的创建时间。 格式为UTC时间:YYYY-MM-DDTHH:MM:SS 支持的最大字符长度:19 updated_at String 负载均衡器的更新时间。 格式为UTC时间:YYYY-MM-DDTHH:MM:SS 支持的最大字符长度:19 enterprise_project_id String 企业项目ID。创建负载均衡器时,给负载均衡器绑定企业项目ID。 取值范围:带“-”连字符的UUID格式,或者是字符串“0”。“0”表示默认企业项目。 说明: 关于企业项目ID的获取及企业项目特性的详细信息,请参见《企业管理用户指南》。 表4 listeners字段说明 参数 参数类型 描述 id String 关联的监听器id 表5 pools字段说明 参数 参数类型 描述 id String 关联的后端服务器组id
  • 响应示例 状态码: 200 操作正常返回。 { "pools" : [ { "lb_algorithm" : "ROUND_ROBIN", "protocol" : "HTTP", "description" : "", "loadbalancers" : [ { "id" : "309a0f61-0b62-45f2-97d1-742f3434338e" } ], "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", "session_persistence" : { "cookie_name" : "my_cookie", "type" : "APP_COOKIE", "persistence_timeout" : 1 }, "healthmonitor" : { "monitor_port" : null, "id" : "36ce7086-a496-4666-9064-5ba0e6840c75", "domain_name" : "", "name" : "My Healthmonitor", "max_retries" : 3, "max_retries_down" : 3, "admin_state_up" : true, "type" : "HTTP", "timeout" : 30, "delay" : 1, "http_method" : "get", "url_path" : "/", "expected_codes" : "200" }, "listeners" : [ ], "members" : [ { "admin_state_up" : true, "address" : "172.16.0.210", "protocol_port" : 80, "id" : "2e7b36d2-66c8-4825-bcd2-211d99978680", "operating_status" : "OFFLINE", "status" : [ ], "instance_id" : "", "device_id" : "", "device_owner" : "", "member_type" : "ip", "role" : "master", "ip_version" : "v4", "name" : "cx-test-master", "subnet_cidr_id" : "" }, { "admin_state_up" : true, "address" : "172.16.0.211", "protocol_port" : 81, "id" : "2e7b36d2-66c8-4823-bsd2-21sa199978681", "operating_status" : "OFFLINE", "status" : [ ], "instance_id" : "", "device_id" : "", "device_owner" : "", "member_type" : "ip", "role" : "slave", "ip_version" : "v4", "name" : "cx-test-slave", "subnet_cidr_id" : "" } ], "id" : "73bd4fe0-ffbb-4b56-aab4-4f26ddf7a103", "name" : "", "ip_version" : "v4", "type" : "ip", "vpc_id" : "", "created_at" : "2021-03-26T01:33:12Z", "updated_at" : "2021-03-26T01:33:12Z" }, { "lb_algorithm" : "SOURCE_IP", "protocol" : "TCP", "description" : "", "loadbalancers" : [ { "id" : "d9763e59-64b7-4e93-aec7-0ff7881ef9bc" } ], "project_id" : "99a3fff0d03c428eac3678da6a7d0f24", "session_persistence" : { "cookie_name" : "", "type" : "SOURCE_IP", "persistence_timeout" : 1 }, "healthmonitor" : { "monitor_port" : null, "id" : "36ce7086-a496-4666-9064-5ba0e6840c75", "domain_name" : "", "name" : "My Healthmonitor", "max_retries" : 3, "max_retries_down" : 3, "admin_state_up" : true, "type" : "HTTP", "timeout" : 30, "delay" : 1, "http_method" : "get", "url_path" : "/", "expected_codes" : "200" }, "listeners" : [ { "id" : "8d21db6f-b475-429e-a9cb-90439b0413b2" } ], "members" : [ { "admin_state_up" : true, "address" : "172.16.1.210", "protocol_port" : 83, "id" : "2e7b36d2-9997-4825-bcd2-211d9990439b", "operating_status" : "OFFLINE", "status" : [ ], "instance_id" : "", "device_id" : "", "device_owner" : "", "member_type" : "ip", "role" : "master", "ip_version" : "v4", "name" : "cx-test-master", "subnet_cidr_id" : "" }, { "admin_state_up" : true, "address" : "172.16.1.212", "protocol_port" : 82, "id" : "227b31d2-66c1-4823-bsd2-21sa199978213", "operating_status" : "OFFLINE", "status" : [ ], "instance_id" : "", "device_id" : "", "device_owner" : "", "member_type" : "ip", "role" : "slave", "ip_version" : "v4", "name" : "cx-test-slave", "subnet_cidr_id" : "" } ], "id" : "74db02d1-5711-4c77-b383-a450e2b93142", "name" : "pool_tcp_001", "ip_version" : "dualstack", "type" : "ip", "vpc_id" : "", "created_at" : "2021-03-26T01:33:12Z", "updated_at" : "2021-03-26T01:33:12Z" } ], "page_info" : { "next_marker" : "74db02d1-5711-4c77-b383-a450e2b93142", "previous_marker" : "73bd4fe0-ffbb-4b56-aab4-4f26ddf7a103", "current_count" : 2 }, "request_id" : "a1a7e852-1928-48f7-bbc9-ca8469898713" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 request_id String 请求ID。 注:自动生成 。 page_info PageInfo object 分页信息。 pools Array of MasterSlavePool objects 后端服务器组列表。 表5 PageInfo 参数 参数类型 描述 previous_marker String 分页查询结果中第一条记录的ID。通常用于配合page_reverse=true查询上一页。 next_marker String 分页查询结果中最后一条记录的ID。通常用于查询下一页。 current_count Integer 当前的记录数。 表6 MasterSlavePool 参数 参数类型 描述 description String 后端云服务器组的描述信息。 id String 后端云服务器组的ID。 lb_algorithm String 后端云服务器组的负载均衡算法。 取值: ROUND_ROBIN:加权轮询算法。 LEAST_CONNECTIONS:加权最少连接算法。 SOURCE_IP:源IP算法。 QUIC_CID:连接ID算法。 使用说明: 当该字段的取值为SOURCE_IP时,后端云服务器组绑定的后端云服务器的weight字段无效。 只有pool的protocol为QUIC时,才支持QUIC_CID算法。 listeners Array of ListenerRef objects 后端云服务器组关联的监听器ID列表。 loadbalancers Array of LoadBalancerRef objects 后端云服务器组关联的负载均衡器ID列表。 members Array of MasterSlaveMember objects 后端云服务器组中的后端云服务器列表。 name String 后端云服务器组的名称。 project_id String 后端云服务器组所在的项目ID。 protocol String 后端云服务器组的后端协议。 取值:TCP、UDP、HTTP、HTTPS和QUIC。 使用说明: listener的protocol为UDP时,pool的protocol必须为UDP或QUIC; listener的protocol为TCP时pool的protocol必须为TCP; listener的protocol为HTTP时,pool的protocol必须为HTTP。 listener的protocol为HTTPS时,pool的protocol必须为HTTP或HTTPS。 listener的protocol为TERMINATED_HTTPS时,pool的protocol必须为HTTP。 session_persistence SessionPersistence object 会话持久性对象。 ip_version String 后端云服务器组支持的IP版本。 取值: 共享型:固定为v4; 独享型:取值dualstack、v4、v6。当协议为TCP/UDP时,ip_version为dualstack,表示双栈。 当协议为HTTP时,ip_version为v4。 created_at String 创建时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 updated_at String 更新时间。格式:yyyy-MM-dd'T'HH:mm:ss'Z',UTC时区。 注意:独享型实例的历史数据以及共享型实例下的资源,不返回该字段。 vpc_id String 后端云服务器组关联的虚拟私有云的ID。 type String 后端服务器组的类型。 取值: instance:允许任意类型的后端,type指定为该类型时,vpc_id是必选字段。 ip:只能添加跨VPC后端,type指定为该类型时,vpc_id不允许指定。 空字符串(""):允许任意类型的后端 enterprise_project_id String 后端服务器组的企业项目ID。无论创建什么企业项目,都在默认企业项目下。 healthmonitor MasterSlaveHealthMonitor object 后端服务器组的健康检查。 any_port_enable Boolean 后端是否开启端口透传,开启后,后端服务器端口与前端监听器端口保持一致。取值:false不开启,true开启,默认false。 说明: 关闭端口透传后,请求会转发给后端服务器protocol_port字段指定端口。 表7 ListenerRef 参数 参数类型 描述 id String 监听器ID。 表8 LoadBalancerRef 参数 参数类型 描述 id String 负载均衡器ID。 表9 MasterSlaveMember 参数 参数类型 描述 id String 后端服务器ID。 name String 后端服务器名称。 admin_state_up Boolean 后端云服务器的管理状态。 取值:true、false。 虽然创建、更新请求支持该字段,但实际取值决定于后端云服务器对应的弹性云服务器是否存在。若存在,该值为true,否则,该值为false。 subnet_cidr_id String 后端云服务器所在子网的IPv4子网ID或IPv6子网ID。 若所属的LB的跨VPC后端转发特性已开启,则该字段可以不传,表示添加跨VPC的后端服务器。 此时address必须为IPv4地址,所在的pool的协议必须为TCP/HTTP/HTTPS。 使用说明:该子网和关联的负载均衡器的子网必须在同一VPC下。 protocol_port Integer 后端服务器业务端口。 说明: 在开启端口透传的pool下创建member传该字段不生效,可不传该字段。 最小值:1 最大值:65535 address String 后端服务器对应的IP地址。 使用说明: 若subnet_cidr_id为空,表示添加跨VPC后端,此时address必须为IPv4地址。 若subnet_cidr_id不为空,表示是一个关联到ECS的后端服务器。该IP地址可以是IPv4或IPv6。 但必须在subnet_cidr_id对应的子网网段中。且只能指定为关联ECS的主网卡内网IP。 ip_version String 当前后端服务器的IP地址版本,由后端系统自动根据传入的address字段确定。取值:v4、v6。 device_owner String 设备所有者。 取值: 空,表示后端服务器未关联到ECS。 compute:{az_name},表示关联到ECS,其中{az_name}表示ECS所在可用区名。 不支持该字段,请勿使用。 device_id String 关联的ECS ID,为空表示后端服务器未关联到ECS。 不支持该字段,请勿使用。 operating_status String 后端云服务器的健康状态。 取值: ONLINE:后端云服务器正常。 NO_MONITOR:后端云服务器所在的服务器组没有健康检查器。 OFFLINE:后端云服务器关联的ECS服务器不存在或已关机。 member_type String 后端云服务器的类型。 取值: ip:跨VPC的member。 instance:关联到ECS的member。 instance_id String member关联的实例ID。空表示member关联的实例为非真实设备 (如:跨VPC场景) role String 后端服务器的主备状态。 status Array of ListenerMemberInfo objects 后端云服务器监听器粒度的的健康状态。 若绑定的监听器在该字段中,则以该字段中监听器对应的operating_status为准。 若绑定的监听器不在该字段中,则以外层的operating_status为准。 表10 ListenerMemberInfo 参数 参数类型 描述 listener_id String 后端服务器关联的监听器id。 operating_status String 后端云服务器的健康状态。 取值: ONLINE:后端云服务器正常。 NO_MONITOR:后端云服务器所在的服务器组没有健康检查器。 OFFLINE:后端云服务器关联的ECS服务器不存在或已关机或服务异常。 表11 SessionPersistence 参数 参数类型 描述 cookie_name String cookie名称。 共享型LB,支持字母、数字、中划线(-)和下划线(),最大长度64个字符。 独享型LB,支持字母、数字、中划线(-)、下划线()和点号(.),最大长度255个字符。 使用说明: 只有当type为APP_COOKIE时才有效。其他情况下传该字段会报错。 type String 会话保持类型。 取值范围:SOURCE_IP、HTTP_COOKIE、APP_COOKIE。 使用说明: 当pool的protocol为TCP、UDP,无论type取值如何,都会被忽略,会话保持只按SOURCE_IP生效。 当pool的protocol为HTTP、HTTPS时。如果是独享型负载均衡器的pool, 则type只能为HTTP_COOKIE,其他取值会话保持失效。 如果是共享型负载均衡器的pool,则type可以为HTTP_COOKIE和APP_COOKIE,其他取值会话保持失效。 若pool的protocol为QUIC,则必须开启session_persistence且type为SOURCE_IP。 persistence_timeout Integer 会话保持的时间。当type为APP_COOKIE时不生效。 适用范围:如果pool的protocol为TCP、UDP和QUIC则范围为[1,60](分钟),默认值1; 如果pool的protocol为HTTP和HTTPS则范围为[1,1440](分钟),默认值1440。 表12 MasterSlaveHealthMonitor 参数 参数类型 描述 admin_state_up Boolean 健康检查的管理状态。 取值: true:表示开启健康检查,默认为true。 false表示关闭健康检查。 delay Integer 健康检查间隔。取值:1-50s。 最小值:1 最大值:50 domain_name String 发送健康检查请求的域名。 取值:以数字或字母开头,只能包含数字、字母、’-’、’.’。 默认为空,表示使用负载均衡器的vip作为http请求的目的地址。 使用说明:当type为HTTP/HTTPS时生效。 expected_codes String 期望响应状态码。 取值: 单值:单个返回码,例如200。 列表:多个特定返回码,例如200,202。 区间:一个返回码区间,例如200-204。 默认值:200。 仅支持HTTP/HTTPS设置该字段,其他协议设置不会生效。 http_method String HTTP请求方法。 取值:GET、HEAD、POST、PUT、DELETE、TRACE、OPTIONS、CONNECT、PATCH,默认GET。 使用说明:当type为HTTP/HTTPS时生效。 不支持该字段,请勿使用。 id String 健康检查ID max_retries Integer 健康检查连续成功多少次后,将后端服务器的健康检查状态由OFFLINE判定为ONLINE。取值范围:1-10。 最小值:1 最大值:10 max_retries_down Integer 健康检查连续失败多少次后,将后端服务器的健康检查状态由ONLINE判定为OFFLINE。取值范围:1-10,默认3。 最小值:1 最大值:10 monitor_port Integer 健康检查端口号。取值:1-65535,默认为空,表示使用后端云服务器端口号。 最小值:1 最大值:65535 name String 健康检查名称。 timeout Integer 一次健康检查请求的超时时间。 建议该值小于delay的值。 最小值:1 最大值:50 type String 健康检查请求协议。 取值:TCP、UDP_CONNECT、HTTP、HTTPS。 使用说明: 若pool的protocol为QUIC,则type只能是UDP_CONNECT。 若pool的protocol为UDP,则type只能UDP_CONNECT。 若pool的protocol为TCP,则type可以是TCP、HTTP、HTTPS。 若pool的protocol为HTTP,则type可以是TCP、HTTP、HTTPS。 若pool的protocol为HTTPS,则type可以是TCP、HTTP、HTTPS。 url_path String 健康检查请求的请求路径。以"/"开头,默认为"/"。 支持使用字母、数字和短划线(-)、正斜线(/)、半角句号(.)、百分号(%)、半角问号(?)、井号(#)和and(&)以及扩展字符集_;~!()*[]@$^:',+ 使用说明:当type为HTTP/HTTPS时生效。
  • URI GET /v3/{project_id}/elb/master-slave-pools 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID。 表2 Query参数 参数 是否必选 参数类型 描述 marker 否 String 上一页最后一条记录的ID。 使用说明: 必须与limit一起使用。 不指定时表示查询第一页。 该字段不允许为空或无效的ID。 limit 否 Integer 每页返回的个数。 最小值:0 最大值:2000 缺省值:2000 page_reverse 否 Boolean 是否反向查询。 取值: true:查询上一页。 false:查询下一页,默认。 使用说明: 必须与limit一起使用。 当page_reverse=true时,若要查询上一页,marker取值为当前页返回值的previous_marker。 description 否 Array 后端云服务器组的描述信息。 支持多值查询,查询条件格式:description=xxx&description=xxx。 healthmonitor_id 否 Array 后端云服务器组关联的健康检查的ID。 支持多值查询,查询条件格式:healthmonitor_id=xxx&healthmonitor_id=xxx。 id 否 Array 后端云服务器组的ID。 支持多值查询,查询条件格式:id=xxx&id=xxx。 name 否 Array 后端云服务器组的名称。 支持多值查询,查询条件格式:name=xxx&name=xxx。 loadbalancer_id 否 Array 后端云服务器组绑定的负载均衡器ID。 支持多值查询,查询条件格式:loadbalancer_id=xxx&loadbalancer_id=xxx。 protocol 否 Array 后端云服务器组的后端协议。 取值:TCP、UDP、HTTP、HTTPS和QUIC。 支持多值查询,查询条件格式:protocol=xxx&protocol=xxx。 lb_algorithm 否 Array 后端云服务器组的负载均衡算法。 取值: 1、ROUND_ROBIN:加权轮询算法。 2、LEAST_CONNECTIONS:加权最少连接算法。 3、SOURCE_IP:源IP算法。 4、QUIC_CID:连接ID算法。 支持多值查询,查询条件格式:lb_algorithm=xxx&lb_algorithm=xxx。 enterprise_project_id 否 Array 企业项目ID。不传时查询default企业项目"0"下的资源,鉴权按照default企业项目鉴权; 如果传值,则传已存在的企业项目ID或all_granted_eps(表示查询所有企业项目)进行查询。 支持多值查询,查询条件格式: enterprise_project_id=xxx&enterprise_project_id=xxx。 ip_version 否 Array 后端云服务器组支持的IP版本。 支持多值查询,查询条件格式:ip_version=xxx&ip_version=xxx。 member_address 否 Array 后端云服务器的IP地址。仅用于查询条件,不作为响应参数字段。 支持多值查询,查询条件格式:member_address=xxx&member_address=xxx。 member_device_id 否 Array 后端云服务器对应的弹性云服务器的ID。仅用于查询条件,不作为响应参数字段。 支持多值查询,查询条件格式:member_device_id=xxx&member_device_id=xxx。 listener_id 否 Array 关联的监听器ID,包括通过l7policy关联的。 支持多值查询,查询条件格式:listener_id=xxx&listener_id=xxx。 member_instance_id 否 Array 后端云服务器ID。仅用于查询条件,不作为响应参数字段。 支持多值查询,查询条件格式:member_instance_id=xxx&member_instance_id=xxx。 vpc_id 否 Array 后端云服务器组关联的虚拟私有云的ID。 type 否 Array 后端服务器组的类型。 取值: instance:允许任意类型的后端,type指定为该类型时,vpc_id是必选字段。 ip:只能添加跨VPC后端,type指定为该类型时,vpc_id不允许指定。 空字符串(""):允许任意类型的后端
  • 示例代码 2中消息体内容。 { "loadbalancer": { "name": "loadbalancer1", "description": "simple lb", "vip_subnet_id": "58077bdb-d470-424b-8c45-2e3c65060a5b", "admin_state_up": true } }
  • 具体步骤 设置请求消息头。 在Postman中设置好头部信息,将获取到的Token放入头部,如下图。 图1 设置请求消息头-创建负载均衡器 Token的值可以用环境变量传入,也可以直接填写。 在Body标签中填写请求消息体。 图2 填写请求消息体-创建负载均衡器 上图中的代码请见示例代码,或参考《弹性负载均衡API参考》添加其他需要的字段。 填写URL。 请求的URL由几部分组成,每部分都有不同的含义: Endpoint URI https:// elb .cn-north-1 .myhuaweicloud.com /v2.0/lbaas/loadbalancers - 服务名 region endpoint URI 上述URL表明使用的接口是华北-北京一region的ELB服务提供的loadbalancer接口。 发送请求。选择请求方法为POST,点击Send按钮,得到服务端响应。 { "loadbalancer": { "description": "simple lb", "admin_state_up": true, "tenant_id": "0d0bf0e8fb564cc9abbe526dbdca9248", "provisioning_status": "ACTIVE", "vip_subnet_id": "8d944cda-1f29-4035-9681-ad8c5117fbc5", "listeners": [], "vip_address": "192.168.0.144", "vip_port_id": "b06bdc8f-cc00-41b4-8aba-280a333342ee", "provider": "vlb", "pools": [], "id": "bb2f1569-4c03-4e48-8e02-a2d831c0db56", "operating_status": "ONLINE", "name": "loadbalancer4guide" } } 如果信息都填写正确,将会得到新创建的ELB的全部信息。这时登录web控制台,就可以看到一个名为loadbalancer4guide的负载均衡器。
  • 响应示例 响应样例 { "listener": { "client_ca_tls_container_ref": "417a0976969f497db8cbb083bff343ba", "protocol": "TERMINATED_HTTPS", "description": "my listener", "default_tls_container_ref": "23b58a961a4d4c95be585e98046e657a", "admin_state_up": true, "http2_enable": false, "loadbalancers": [ { "id": "165b6a38-5278-4569-b747-b2ee65ea84a4" } ], "tenant_id": "601240b9c5c94059b63d484c92cfe308", "project_id": "601240b9c5c94059b63d484c92cfe308", "sni_container_refs": [], "connection_limit": -1, "protocol_port": 443, "tags": [], "default_pool_id": "c61310de-9a06-4f0c-850c-6f4797b9984c", "id": "f622c150-72f5-4263-a47a-e5003c652aa3", "name": "listener-jy-test2", "created_at": "2018-07-25T01:54:13", "updated_at": "2018-07-25T01:54:14", "insert_headers":{ "X-Forwarded-ELB-IP":true, } } }
  • 请求示例 请求样例 更新监听器 PUT https://{Endpoint}/v2.0/lbaas/listeners/f622c150-72f5-4263-a47a-e5003c652aa3 { "listener": { "description": "my listener", "name": "listener-jy-test2", "default_pool_id": "c61310de-9a06-4f0c-850c-6f4797b9984c", "default_tls_container_ref": "23b58a961a4d4c95be585e98046e657a", "client_ca_tls_container_ref": "417a0976969f497db8cbb083bff343ba", "insert_headers":{ "X-Forwarded-ELB-IP":true, } } }
  • 响应消息 表6 响应参数 参数 参数类型 描述 listener Object 监听器对象。详见表7。 表7 listeners字段说明 参数 参数类型 描述 id String 监听器ID。 tenant_id String 监听器所在的项目ID。 project_id String 此参数和tenant_id参数含义一样,均指监听器所在的项目ID。 name String 监听器名称。 description String 监听器描述信息。 protocol String 监听器的监听协议。 支持TCP、HTTP、UDP、TERMINATED_HTTPS。 protocol_port Integer 监听器的监听端口。 取值范围:[1, 65535]。 loadbalancers Array 监听器关联的负载均衡器 ID。详见表7。 connection_limit Integer 监听器的最大连接数。 取值范围:[-1, 2147483647]。默认为-1,无连接数限制。 该字段为预留字段,暂未启动。 admin_state_up Boolean 监听器的管理状态。 该字段为预留字段,暂未启用。取值范围:true/false。 true表示开启。 false表示关闭。 http2_enable Boolean HTTP2功能的开启状态。 取值范围:true/false。true:开启。false:关闭。 仅针对监听器的协议为TERMINATED_HTTPS有意义。 default_pool_id String 监听器的默认后端云服务器组ID。 当请求没有匹配的转发策略时,转发到默认后端云服务器上处理。当该字段为null时,表示监听器无默认的后端云服务器组。 default_tls_container_ref String 监听器使用的服务器证书ID。详细参见SSL证书管理。 当protocol参数为TERMINATED_HTTPS时,为必选字段。 client_ca_tls_container_ref String 监听器使用的CA证书ID。详细参见SSL证书管理。 sni_container_refs Array 监听器使用的SNI证书(带域名的服务器证书)ID的列表。 该字段不为空列表时,SNI特性开启。该字段为空列表时,SNI特性关闭。 tags Array 监听器的标签。 created_at String 监听器的创建时间。YYYY-MM-DDTHH:MM:SS updated_at String 监听器的更新时间。YYYY-MM-DDTHH:MM:SS insert_headers Object HTTP扩展头部,内部字段全量同步,不选则为默认值。 可以将从负载均衡器到后端云服务器的路径中需要被后端云服务器用到的信息写入HTTP中,随报文传递到后端云服务器上。 例如可通过X-Forwarded-ELB-IP开关,将负载均衡器的弹性公网IP传到后端云服务器。详细参见表8。 仅当监听器的协议为HTTP、TERMINATED_HTTPS时,该字段有意义。 tls_ciphers_policy String 监听器使用的安全策略,仅对TERMINATED_HTTPS协议类型的监听器有效,且默认值为tls-1-0。 取值包括:tls-1-0-inherit,tls-1-0, tls-1-1, tls-1-2, tls-1-2-strict多种安全策略。各安全策略使用的加密套件列表详细参见表4。 表8 loadbalancers字段说明 参数 参数类型 描述 id String 关联的负载均衡器id 表9 insert_headers字段说明 参数 参数类型 描述 X-Forwarded-ELB-IP Boolean 负载均衡器弹性公网IP透传开关。打开时可以将负载均衡器的弹性公网IP从报文的HTTP头中带到后端云服务器。 取值范围:true/false。true:开启。false:关闭。 默认:关闭。 X-Forwarded-Host Boolean 负载均衡器X-Forwarded-Host重写开关。打开时可以将客户请求头的X-Forwarded-Host设置为请求头的Host带到后端云服务器 取值范围:true/false。true:开启。false:关闭。 默认:开启。
  • 请求消息 表2 请求参数 参数 是否必选 参数类型 描述 listener 是 Object 监听器对象。详见表3。 表3 listener字段说明 参数 是否必选 参数类型 描述 name 否 String 监听器名称。 支持的最大字符长度:255 description 否 String 监听器描述信息。 支持的最大字符长度:255 connection_limit 否 Integer 监听器最大连接数。 取值范围:[-1, 2147483647]。 该字段为预留字段,暂未启用。只有具有ELB管理员权限的用户可以指定。 http2_enable 否 Boolean HTTP2功能的开启状态。 取值范围:true/false。true:开启。false:关闭。 仅针对监听器的协议为TERMINATED_HTTPS有意义。 default_pool_id 否 String 监听器的默认后端云服务器组ID。 当请求没有匹配的转发策略时,转发到默认后端云服务器上处理。当该字段为null时,表示监听器无默认的后端云服务器组。 default_pool_id有如下限制: 不能更新为其他监听器的default_pool。 不能更新为其他监听器关联的转发策略所使用的pool。 监听器和与之绑定的后端云服务器的对应关系如下: 监听器的protocol为TCP时,后端云服务器组的protocol必须为TCP。 监听器的protocol为UDP时,后端云服务器组的protocol必须为UDP。 监听器的protocol为HTTP或TERMINATED_HTTPS时,后端云服务器组的protocol必须为HTTP。 admin_state_up 否 Boolean 监听器的管理状态。 该字段为预留字段,暂未启用。默认为true。 default_tls_container_ref 否 String 监听器使用的服务器证书ID。详细参见SSL证书管理。 支持的最大字符长度:128 说明: 仅当监听器的protocol参数为TERMINATED_HTTPS时,该字段有意义。 client_ca_tls_container_ref 否 String 监听器使用的CA证书ID。详细参见SSL证书管理。 支持的最大字符长度:128 说明: 仅当监听器的protocol参数为TERMINATED_HTTPS时,该字段有意义。 sni_container_refs 否 Array 监听器使用的SNI证书(带域名的服务器证书)ID的列表。 该字段不为空列表时,SNI特性开启。该字段为空列表时,SNI特性关闭。 说明: 仅当监听器的protocol参数为TERMINATED_HTTPS时,该字段有意义。 insert_headers 否 Object HTTP扩展头部,内部字段全量同步,不选则为默认值。 可以将从负载均衡器到后端云服务器的路径中需要被后端云服务器用到的信息写入HTTP中,随报文传递到后端云服务器上。 例如可通过X-Forwarded-ELB-IP开关,将负载均衡器的弹性公网IP传到后端云服务器。详细参见表4。 说明: 仅当监听器的协议为HTTP、TERMINATED_HTTPS时,该字段有意义。 tls_ciphers_policy 否 String 监听器使用的安全策略,仅对TERMINATED_HTTPS协议类型的监听器有效。 取值包括:tls-1-0-inherit,tls-1-0, tls-1-1, tls-1-2, tls-1-2-strict多种安全策略。各安全策略使用的加密套件列表详细参见表5。 表4 insert_headers字段说明 参数 是否必选 参数类型 描述 X-Forwarded-ELB-IP 否 Boolean 负载均衡器弹性公网IP透传开关。打开时可以将负载均衡器的弹性公网IP从报文的HTTP头中带到后端云服务器。 取范围:true/false。 true:开 false:关闭 默认:关闭。 X-Forwarded-Host 否 Boolean 负载均衡器X-Forwarded-Host重写开关。打开时可以将客户请求头的X-Forwarded-Host设置为请求头的Host带到后端云服务器 取范围:true/false。 true:开 false:关闭 默认:开启。 表5 tls_ciphers_policy取值说明 安全策略 支持的TLS版本类型 使用的加密套件列表 tls-1-0-inherit TLS 1.2 TLS 1.1 TLS 1.0 ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:DHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA:DHE-DSS-AES128-SHA:CAMELLIA128-SHA:EDH-RSA-DES-CBC3-SHA:DES-CBC3-SHA:ECDHE-RSA-RC4-SHA:RC4-SHA:DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:DHE-RSA-CAMELLIA256-SHA:DHE-DSS-CAMELLIA256-SHA:CAMELLIA256-SHA:EDH-DSS-DES-CBC3-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-DSS-CAMELLIA128-SHA tls-1-0 TLS 1.2 TLS 1.1 TLS 1.0 ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:AES128-SHA:AES256-SHA tls-1-1 TLS 1.2 TLS 1.1 tls-1-2 TLS 1.2 tls-1-2-strict TLS 1.2 ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:AES128-GCM-SHA256:AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES128-SHA256:AES256-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384
  • 接口约束 如果监听器关联的负载均衡器的provisioning status不是ACTIVE,则不能更新该监听器。 只有具有ELB管理员权限的用户才能指定connection_limit的值。 default_pool_id有如下限制: 不能更新为其他监听器的default_pool。 不能更新为其他监听器的关联的转发策略所使用的pool。 default_pool_id对应的后端云服务器组的protocol和监听器的protocol有如下关系: 监听器的protocol为TCP时,后端云服务器组的protocol必须为TCP。 监听器的protocol为UDP时,后端云服务器组的protocol必须为UDP。 监听器的protocol为HTTP或TERMINATED_HTTPS时,后端云服务器组的protocol必须为HTTP。
共100000条