更新时间:2024-12-13 GMT+08:00
分享

查询配额详情

功能介绍

查询指定项目中负载均衡相关的各类资源的当前配额。

调用方法

请参见如何调用API

URI

GET /v3/{project_id}/elb/quotas

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

参数解释:项目ID。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:IAM鉴权Token。

响应参数

状态码: 200

表3 响应Body参数

参数

参数类型

描述

request_id

String

请求ID。

注:自动生成 。

quota

Quota object

负载均衡相关各类资源的配额信息。仅返回资源的总配额,不包括剩余可用配额。

表4 Quota

参数

参数类型

描述

project_id

String

参数解释:项目ID。

loadbalancer

Integer

负载均衡器配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

certificate

Integer

证书配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

listener

Integer

监听器配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

l7policy

Integer

转发策略配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

condition_per_policy

Integer

单个转发策略下所有转发规则的condition总数配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

pool

Integer

后端服务器组配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

healthmonitor

Integer

健康检查配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

member

Integer

后端服务器配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

members_per_pool

Integer

单个pool下的member的配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

listeners_per_pool

Integer

单个监听器下的pool的配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

ipgroup

Integer

IP地址组配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

ipgroup_bindings

Integer

单个IP地址组可以关联的监听器数量配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

ipgroup_max_length

Integer

单个监听器下关联的所有IP地址组的ip列表中的IP总数不能超过ipgroup_max_length。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

security_policy

Integer

自定义安全策略配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

listeners_per_loadbalancer

Integer

单个LB实例下的监听器配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

说明:

当前单个LB下监听器配额实际未限制,但建议不要超过默认配额。

ipgroups_per_listener

Integer

单个监听器下的IP地址组配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

pools_per_l7policy

Integer

单个后端服务器组下的转发策略配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

l7policies_per_listener

Integer

单个监听器下的转发策略配额。

取值:

  • 大于等于0:表示当前配额数量。

  • -1:表示无配额限制。

请求示例

查询负载均衡的相关资源配额信息

GET https://{ELB_Endpoint}/v3/99a3fff0d03c428eac3678da6a7d0f24/elb/quotas

响应示例

状态码: 200

操作正常返回

{
  "request_id" : "c6f3d7fe99bb1d8aa29e148097dab0d0",
  "quota" : {
    "member" : 10000,
    "members_per_pool" : 1000,
    "certificate" : -1,
    "l7policy" : 2000,
    "listener" : 1500,
    "loadbalancer" : 100000,
    "healthmonitor" : -1,
    "pool" : 5000,
    "ipgroup" : 1000,
    "ipgroup_bindings" : 50,
    "ipgroup_max_length" : 300,
    "security_policy" : 50,
    "project_id" : "060576798a80d5762fafc01a9b5eedc7",
    "condition_per_policy" : 10,
    "listeners_per_pool" : 50,
    "listeners_per_loadbalancer" : 50
  }
}

SDK代码示例

SDK代码示例如下。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
package com.huaweicloud.sdk.test;

import com.huaweicloud.sdk.core.auth.ICredential;
import com.huaweicloud.sdk.core.auth.BasicCredentials;
import com.huaweicloud.sdk.core.exception.ConnectionException;
import com.huaweicloud.sdk.core.exception.RequestTimeoutException;
import com.huaweicloud.sdk.core.exception.ServiceResponseException;
import com.huaweicloud.sdk.elb.v3.region.ElbRegion;
import com.huaweicloud.sdk.elb.v3.*;
import com.huaweicloud.sdk.elb.v3.model.*;


public class ShowQuotaSolution {

    public static void main(String[] args) {
        // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
        // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
        String ak = System.getenv("CLOUD_SDK_AK");
        String sk = System.getenv("CLOUD_SDK_SK");
        String projectId = "{project_id}";

        ICredential auth = new BasicCredentials()
                .withProjectId(projectId)
                .withAk(ak)
                .withSk(sk);

        ElbClient client = ElbClient.newBuilder()
                .withCredential(auth)
                .withRegion(ElbRegion.valueOf("<YOUR REGION>"))
                .build();
        ShowQuotaRequest request = new ShowQuotaRequest();
        try {
            ShowQuotaResponse response = client.showQuota(request);
            System.out.println(response.toString());
        } catch (ConnectionException e) {
            e.printStackTrace();
        } catch (RequestTimeoutException e) {
            e.printStackTrace();
        } catch (ServiceResponseException e) {
            e.printStackTrace();
            System.out.println(e.getHttpStatusCode());
            System.out.println(e.getRequestId());
            System.out.println(e.getErrorCode());
            System.out.println(e.getErrorMsg());
        }
    }
}
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# coding: utf-8

import os
from huaweicloudsdkcore.auth.credentials import BasicCredentials
from huaweicloudsdkelb.v3.region.elb_region import ElbRegion
from huaweicloudsdkcore.exceptions import exceptions
from huaweicloudsdkelb.v3 import *

if __name__ == "__main__":
    # The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    # In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak = os.environ["CLOUD_SDK_AK"]
    sk = os.environ["CLOUD_SDK_SK"]
    projectId = "{project_id}"

    credentials = BasicCredentials(ak, sk, projectId)

    client = ElbClient.new_builder() \
        .with_credentials(credentials) \
        .with_region(ElbRegion.value_of("<YOUR REGION>")) \
        .build()

    try:
        request = ShowQuotaRequest()
        response = client.show_quota(request)
        print(response)
    except exceptions.ClientRequestException as e:
        print(e.status_code)
        print(e.request_id)
        print(e.error_code)
        print(e.error_msg)
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package main

import (
	"fmt"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic"
    elb "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/elb/v3"
	"github.com/huaweicloud/huaweicloud-sdk-go-v3/services/elb/v3/model"
    region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/elb/v3/region"
)

func main() {
    // The AK and SK used for authentication are hard-coded or stored in plaintext, which has great security risks. It is recommended that the AK and SK be stored in ciphertext in configuration files or environment variables and decrypted during use to ensure security.
    // In this example, AK and SK are stored in environment variables for authentication. Before running this example, set environment variables CLOUD_SDK_AK and CLOUD_SDK_SK in the local environment
    ak := os.Getenv("CLOUD_SDK_AK")
    sk := os.Getenv("CLOUD_SDK_SK")
    projectId := "{project_id}"

    auth := basic.NewCredentialsBuilder().
        WithAk(ak).
        WithSk(sk).
        WithProjectId(projectId).
        Build()

    client := elb.NewElbClient(
        elb.ElbClientBuilder().
            WithRegion(region.ValueOf("<YOUR REGION>")).
            WithCredential(auth).
            Build())

    request := &model.ShowQuotaRequest{}
	response, err := client.ShowQuota(request)
	if err == nil {
        fmt.Printf("%+v\n", response)
    } else {
        fmt.Println(err)
    }
}

更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。

状态码

状态码

描述

200

操作正常返回

错误码

请参见错误码

相关文档