查询GEIP与实例绑定关系的租户列表
功能介绍
查询GEIP与实例绑定关系的租户列表
调用方法
请参见如何调用API。
URI
GET /v3/{project_id}/geip/bindings
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
最小长度:1 最大长度:32 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
fields |
否 |
String |
形式为"fields=geip_id&fields=geip_ip_address&...",支持字段:geip_id/geip_ip_address/instance_type/instance_id/vnic/vn_list/public_border_group/gcbandwidth/version/created_at/updated_at/instance_vpc_id 最小长度:0 最大长度:1024 |
geip_id |
否 |
String |
最小长度:1 最大长度:36 |
geip_ip_address |
否 |
String |
最小长度:1 最大长度:64 |
public_border_group |
否 |
String |
最小长度:1 最大长度:36 |
instance_type |
否 |
String |
最小长度:0 最大长度:64 |
instance_id |
否 |
String |
最小长度:0 最大长度:36 |
instance_vpc_id |
否 |
String |
最小长度:0 最大长度:36 |
gcbandwidth.id |
否 |
String |
最小长度:0 最大长度:36 |
gcbandwidth.admin_status |
否 |
String |
最小长度:0 最大长度:64 |
gcbandwidth.size |
否 |
Integer |
最小值:0 最大值:999999 |
gcbandwidth.sla_level |
否 |
String |
最小长度:0 最大长度:64 |
gcbandwidth.dscp |
否 |
Integer |
最小值:0 最大值:63 |
vnic.private_ip_address |
否 |
String |
最小长度:0 最大长度:64 |
vnic.vpc_id |
否 |
String |
最小长度:0 最大长度:36 |
vnic.port_id |
否 |
String |
最小长度:0 最大长度:36 |
vnic.device_id |
否 |
String |
最小长度:0 最大长度:36 |
vnic.device_owner |
否 |
String |
最小长度:0 最大长度:256 |
vnic.device_owner_prefixlike |
否 |
String |
最小长度:0 最大长度:256 |
vnic.instance_type |
否 |
String |
最小长度:0 最大长度:64 |
vnic.instance_id |
否 |
String |
最小长度:0 最大长度:36 |
sort_key |
否 |
String |
排序,形式为"sort_key=geip_id&sort_dir=asc" 支持字段:geip_id/version/public_border_group/ geip_ip_address/created_at/updated_at 最小长度:0 最大长度:1024 |
sort_dir |
否 |
String |
排序方向 取值范围:asc、desc 最小长度:0 最大长度:1024 |
limit |
否 |
Integer |
每页返回的个数取值范围:0~[2000],其中2000为局点差异项,具体取值由局点决定 最小值:0 最大值:2000 |
offset |
否 |
Integer |
分页起始点 |
marker |
否 |
String |
分页起始点 最小长度:0 最大长度:36 |
请求参数
无
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
geip_bindings |
Array of GeipBindingsInternalResp objects |
geip绑定关系对象 数组长度:0 - 999999 |
request_id |
String |
本次请求编号 最小长度:0 最大长度:36 |
参数 |
参数类型 |
描述 |
---|---|---|
geip_id |
String |
GEIP的uuid 最小长度:0 最大长度:36 |
geip_ip_address |
String |
GEIP的ip地址 最小长度:0 最大长度:64 |
public_border_group |
String |
中心站点or边缘站点,默认展示 最小长度:0 最大长度:64 |
created_at |
String |
创建时间 最小长度:0 最大长度:64 |
updated_at |
String |
更新时间 最小长度:0 最大长度:64 |
instance_type |
String |
绑定实例的类型 最小长度:0 最大长度:64 |
instance_id |
String |
绑定实例的id 最小长度:0 最大长度:36 |
version |
Integer |
GEIP的版本号 最小值:0 最大值:9223372036854775807 |
gcbandwidth |
BackboneBandwidthResp object |
骨干带宽对象 |
vnic |
InstanceVnicResp object |
实例port的信息 |
vn_list |
Array of InstancevirtualListResp objects |
GEIP实例的vn信息 数组长度:0 - 9999 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
骨干带宽的uuid 最小长度:0 最大长度:36 |
admin_status |
String |
骨干带宽的状态 最小长度:0 最大长度:64 |
size |
Integer |
骨干带宽的大小 最小值:0 最大值:2000 |
short_id |
String |
骨干带宽的short_id 最小长度:0 最大长度:36 |
sla_level |
String |
描述网络等级,从高到低分为铂金、金、银、铜 枚举值:
|
dscp |
Integer |
线路质量金银铜对应的DSCP值 最小值:0 最大值:63 |
参数 |
参数类型 |
描述 |
---|---|---|
private_ip_address |
String |
实例port的ip地址 最小长度:0 最大长度:64 |
device_id |
String |
port的device_id 最小长度:0 最大长度:36 |
device_owner |
String |
port的device_owner 最小长度:0 最大长度:64 |
vpc_id |
String |
port的vpc_id 最小长度:0 最大长度:36 |
port_id |
String |
port的uuid 最小长度:0 最大长度:36 |
mac |
String |
port的mac地址 最小长度:0 最大长度:256 |
vtep |
String |
port的vtep地址 最小长度:0 最大长度:256 |
vni |
Integer |
port的vni 最小值:0 最大值:999999 |
instance_id |
String |
port的实例id 最小长度:0 最大长度:36 |
instance_type |
String |
port的实例类型 最小长度:0 最大长度:64 |
port_profile |
String |
port的profile 最小长度:0 最大长度:1024 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
String |
virtualnexthop的uuid 最小长度:0 最大长度:36 |
owner |
String |
virtualnexthop的所有者 最小长度:0 最大长度:256 |
location |
String |
标识网关所在位置POD、AZ、REGION、GLOBAL 最小长度:0 最大长度:256 |
forward_mode |
String |
功能说明:nexthops的转发模式 取值范围:'ACTIVE-ACTIVE'多活模式、'ACTIVE-STANDBY'主备模式 最小长度:0 最大长度:256 枚举值:
|
cluster_id |
String |
功能说明:网关所在集群信息,可为空 取值范围:0-36长度的字符串 最小长度:0 最大长度:36 |
hash_mode |
String |
功能说明:nexthops在底层的负载均衡策略 取值范围:'2_TUPLE'二元组、'3_TUPLE'三元组、'5_TUPLE'五元组 缺省值:5_TUPLE 最小长度:0 最大长度:256 枚举值:
|
type |
String |
功能说明:下一跳所属网络类型 取值范围:'VXLAN'、'VLAN' 缺省值:VXLAN 最小长度:0 最大长度:256 枚举值:
|
vni |
Integer |
功能说明:网络id标识,与type组合使用 取值范围:type=VXLAN时取值0-16777215,type=VLAN时取值0-4095 最小值:0 最大值:999999 |
nexthops |
Array of NexthopDict objects |
下一跳信息列表 数组长度:0 - 999999 |
created_at |
String |
功能说明:VirtualNexthop对象创建时间,UTC格式 最小长度:0 最大长度:256 |
updated_at |
String |
功能说明:VirtualNexthop对象更新时间,UTC格式 最小长度:0 最大长度:256 |
请求示例
查询GEIP与实例绑定关系的租户列表
GET https://{Endpoint}/v3/{project_id}/geip/bindings
响应示例
状态码: 200
GET操作正常返回
{ "geip_bindings" : [ { "geip_id" : "33866d83-e3eb-4380-b58d-525a47031435", "geip_ip_address" : "15.12.10.45", "public_border_group" : "center", "created_at" : "2021-07-07T13:10:19", "updated_at" : "2021-07-07T13:10:19", "instance_type" : "PORT", "instance_id" : "c88b8567-bd23-4e75-9257-b3052bd51bc1", "version" : 1637893479433, "gcbandwidth" : { "id" : "45866d83-e3eb-4380-b58d-525a47031435", "admin_status" : "active", "size" : 100, "short_id" : "45866d83", "sla_level" : "Ag", "dscp" : 0 }, "vnic" : { "private_ip_address" : "172.16.1.49", "device_id" : "aa4c1bb3-7a61-4f1b-a828-bd41b742d4f4", "device_owner" : "compute:br-iaas-odin1a", "vpc_id" : "4ec81e96-7d45-488b-833f-792c8f1e679a", "port_id" : "b52eec78-271d-48fa-a6df-fc9761416f56", "mac" : "fa:16:3e:25:db:02", "vtep" : null, "vni" : null, "instance_id" : "", "instance_type" : "", "port_profile" : null }, "vn_list" : [ { "id" : "7cc3ccb1-877f-46bf-9225-ce1df80288cf", "owner" : "br2gw", "location" : "br-iaas-odin1b", "forward_mode" : "ACTIVE-STANDBY", "cluster_id" : "br-iaas-odin1b", "hash_mode" : "5_TUPLE", "type" : "VXLAN", "vni" : 4000, "created_at" : "2021-07-15T09:44:40Z", "updated_at" : "2021-07-15T09:44:40Z", "nexthops" : [ { "ip_address" : "18.9.203.100", "mode" : "ACTIVE" } ] } ] } ], "request_id" : "6d81f3f0-1c4a-4fba-aaca-1b9e762125d4" }
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 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
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.eip.v3.region.EipRegion; import com.huaweicloud.sdk.eip.v3.*; import com.huaweicloud.sdk.eip.v3.model.*; public class ListProjectGeipBindingsSolution { 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"); ICredential auth = new BasicCredentials() .withAk(ak) .withSk(sk); EipClient client = EipClient.newBuilder() .withCredential(auth) .withRegion(EipRegion.valueOf("<YOUR REGION>")) .build(); ListProjectGeipBindingsRequest request = new ListProjectGeipBindingsRequest(); request.withFields("<fields>"); request.withGeipId("<geip_id>"); request.withGeipIpAddress("<geip_ip_address>"); request.withPublicBorderGroup("<public_border_group>"); request.withInstanceType("<instance_type>"); request.withInstanceId("<instance_id>"); request.withInstanceVpcId("<instance_vpc_id>"); request.withGcbandwidthId("<gcbandwidth.id>"); request.withGcbandwidthAdminStatus("<gcbandwidth.admin_status>"); request.withGcbandwidthSize(<gcbandwidth.size>); request.withGcbandwidthSlaLevel("<gcbandwidth.sla_level>"); request.withGcbandwidthDscp(<gcbandwidth.dscp>); request.withVnicPrivateIpAddress("<vnic.private_ip_address>"); request.withVnicVpcId("<vnic.vpc_id>"); request.withVnicPortId("<vnic.port_id>"); request.withVnicDeviceId("<vnic.device_id>"); request.withVnicDeviceOwner("<vnic.device_owner>"); request.withVnicDeviceOwnerPrefixlike("<vnic.device_owner_prefixlike>"); request.withVnicInstanceType("<vnic.instance_type>"); request.withVnicInstanceId("<vnic.instance_id>"); request.withSortKey("<sort_key>"); request.withSortDir("<sort_dir>"); request.withLimit(<limit>); request.withOffset(<offset>); request.withMarker("<marker>"); try { ListProjectGeipBindingsResponse response = client.listProjectGeipBindings(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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# coding: utf-8 import os from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkeip.v3.region.eip_region import EipRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkeip.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"] credentials = BasicCredentials(ak, sk) client = EipClient.new_builder() \ .with_credentials(credentials) \ .with_region(EipRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListProjectGeipBindingsRequest() request.fields = "<fields>" request.geip_id = "<geip_id>" request.geip_ip_address = "<geip_ip_address>" request.public_border_group = "<public_border_group>" request.instance_type = "<instance_type>" request.instance_id = "<instance_id>" request.instance_vpc_id = "<instance_vpc_id>" request.gcbandwidth_id = "<gcbandwidth.id>" request.gcbandwidth_admin_status = "<gcbandwidth.admin_status>" request.gcbandwidth_size = <gcbandwidth.size> request.gcbandwidth_sla_level = "<gcbandwidth.sla_level>" request.gcbandwidth_dscp = <gcbandwidth.dscp> request.vnic_private_ip_address = "<vnic.private_ip_address>" request.vnic_vpc_id = "<vnic.vpc_id>" request.vnic_port_id = "<vnic.port_id>" request.vnic_device_id = "<vnic.device_id>" request.vnic_device_owner = "<vnic.device_owner>" request.vnic_device_owner_prefixlike = "<vnic.device_owner_prefixlike>" request.vnic_instance_type = "<vnic.instance_type>" request.vnic_instance_id = "<vnic.instance_id>" request.sort_key = "<sort_key>" request.sort_dir = "<sort_dir>" request.limit = <limit> request.offset = <offset> request.marker = "<marker>" response = client.list_project_geip_bindings(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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" eip "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/eip/v3" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/eip/v3/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/eip/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") auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). Build() client := eip.NewEipClient( eip.EipClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListProjectGeipBindingsRequest{} fieldsRequest:= "<fields>" request.Fields = &fieldsRequest geipIdRequest:= "<geip_id>" request.GeipId = &geipIdRequest geipIpAddressRequest:= "<geip_ip_address>" request.GeipIpAddress = &geipIpAddressRequest publicBorderGroupRequest:= "<public_border_group>" request.PublicBorderGroup = &publicBorderGroupRequest instanceTypeRequest:= "<instance_type>" request.InstanceType = &instanceTypeRequest instanceIdRequest:= "<instance_id>" request.InstanceId = &instanceIdRequest instanceVpcIdRequest:= "<instance_vpc_id>" request.InstanceVpcId = &instanceVpcIdRequest gcbandwidthIdRequest:= "<gcbandwidth.id>" request.GcbandwidthId = &gcbandwidthIdRequest gcbandwidthAdminStatusRequest:= "<gcbandwidth.admin_status>" request.GcbandwidthAdminStatus = &gcbandwidthAdminStatusRequest gcbandwidthSizeRequest:= int32(<gcbandwidth.size>) request.GcbandwidthSize = &gcbandwidthSizeRequest gcbandwidthSlaLevelRequest:= "<gcbandwidth.sla_level>" request.GcbandwidthSlaLevel = &gcbandwidthSlaLevelRequest gcbandwidthDscpRequest:= int32(<gcbandwidth.dscp>) request.GcbandwidthDscp = &gcbandwidthDscpRequest vnicPrivateIpAddressRequest:= "<vnic.private_ip_address>" request.VnicPrivateIpAddress = &vnicPrivateIpAddressRequest vnicVpcIdRequest:= "<vnic.vpc_id>" request.VnicVpcId = &vnicVpcIdRequest vnicPortIdRequest:= "<vnic.port_id>" request.VnicPortId = &vnicPortIdRequest vnicDeviceIdRequest:= "<vnic.device_id>" request.VnicDeviceId = &vnicDeviceIdRequest vnicDeviceOwnerRequest:= "<vnic.device_owner>" request.VnicDeviceOwner = &vnicDeviceOwnerRequest vnicDeviceOwnerPrefixlikeRequest:= "<vnic.device_owner_prefixlike>" request.VnicDeviceOwnerPrefixlike = &vnicDeviceOwnerPrefixlikeRequest vnicInstanceTypeRequest:= "<vnic.instance_type>" request.VnicInstanceType = &vnicInstanceTypeRequest vnicInstanceIdRequest:= "<vnic.instance_id>" request.VnicInstanceId = &vnicInstanceIdRequest sortKeyRequest:= "<sort_key>" request.SortKey = &sortKeyRequest sortDirRequest:= "<sort_dir>" request.SortDir = &sortDirRequest limitRequest:= int32(<limit>) request.Limit = &limitRequest offsetRequest:= int32(<offset>) request.Offset = &offsetRequest markerRequest:= "<marker>" request.Marker = &markerRequest response, err := client.ListProjectGeipBindings(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
状态码
状态码 |
描述 |
---|---|
200 |
GET操作正常返回 |
错误码
请参见错误码。