获取CBH实例列表
功能介绍
获取当前租户下的云堡垒机实例列表。
调用方法
请参见如何调用API。
URI
GET /v1/{project_id}/cbs/instance/list
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
项目ID。获取方法详见API参考,附录获取项目ID。 |
请求参数
无
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
total |
Integer |
云堡垒机实例总数。 |
quotaDetail |
QuotaDetail object |
当前用户云堡垒机的配额信息。返回默认值null。 |
instance |
Array of InstanceDetail objects |
云堡垒机实例列表信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
publicip |
String |
云堡垒机实例弹性公网IP,返回默认值null |
expTime |
String |
云堡垒机实例过期时间。 |
startTime |
String |
云堡垒机实例开始时间,使用时间戳格式表示。 |
endTime |
String |
云堡垒机实例结束时间,使用时间戳格式表示。 |
releaseTime |
String |
云堡垒机释放时间,使用时间戳格式表示。 |
name |
String |
云堡垒机实例名称。 |
instanceId |
String |
云堡垒机实例ID,UUID格式。 |
privateIp |
String |
云堡垒机实例私有ip。 |
taskStatus |
String |
云堡垒机实例当前的任务状态。
|
status |
String |
云堡垒机实例状态。
|
created |
String |
云堡垒机实例创建时间,使用UTC时间表示。 |
region |
String |
云堡垒机实例所在局点。 |
zone |
String |
云堡垒机实例所在可用区。 |
availability_zone_display |
String |
云堡垒机实例所在可用区中文名称。 |
vpcId |
String |
云堡垒机实例所在虚拟私有云的VPC ID。 |
subnetId |
String |
云堡垒机实例所在子网的ID。 |
securityGroupId |
String |
云堡垒机实例所属的安全组的ID。 |
specification |
String |
云堡垒机实例规格。 |
update |
String |
云堡垒机实例是否可以升级。
|
createinstanceStatus |
String |
云堡垒机实例在创建实例过程中的过程状态信息。
|
failReason |
String |
云堡垒机实例创建实例失败原因。 |
instanceKey |
String |
云堡垒机实例key。 |
orderId |
String |
订单ID。 |
periodNum |
String |
云堡垒机实例订购周期数。 |
resourceId |
String |
云堡垒机实例的资源id,UUID格式显示。 |
bastion_type |
String |
云堡垒机实例堡垒机类型。
|
alterPermit |
String |
云堡垒机实例是否可以扩容。
|
publicId |
String |
云堡垒机实例绑定公网的弹性IP的ID,UUID格式表示。 |
bastionVersion |
String |
云堡垒机实例当前版本。 |
newBastionVersion |
String |
云堡垒机实例可以升级的版本。 |
instanceStatus |
String |
云堡垒机实例状态。
|
instanceDescription |
String |
云堡垒机实例状态描述。 |
slaveZone |
String |
备可用分区,默认返回null。 |
enterpriseProjectId |
String |
云堡垒机实例所属企业项目ID。 |
instanceType |
String |
云堡垒机实例类型。
|
haId |
String |
云堡垒机实例主备ID。
|
slaveZoneDisplay |
String |
云堡垒机实例备机可用分区名称。 单机堡垒机实例和备机堡垒机实例返回null,HA堡垒机实例主机返回备机所在可用区名称。 |
webPort |
String |
云堡垒机实例WEB界面访问的端口号。 |
vip |
String |
云堡垒机实例浮动ip。返回默认值null |
状态码: 400
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_description |
String |
请求参数错误。 |
状态码: 401
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_description |
String |
校验TOKEN失败。 |
状态码: 403
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_description |
String |
租户无权限操作。 |
状态码: 404
参数 |
参数类型 |
描述 |
---|---|---|
error_code |
String |
错误码 |
error_description |
String |
没有找到CBH资源。 |
请求示例
无
响应示例
状态码: 200
查询云堡垒机实例列表信息成功。
{ "total" : 1, "quotaDetail" : "null", "instance" : [ { "publicip" : "null", "expTime" : "14", "startTime" : "1669911490000", "endTime" : "1672675199000", "releaseTime" : "1675267199000", "name" : "CBH-8a80", "instanceId" : "f7854c8d-9bbc-4970-8b7d-6ed8280f6bfe", "privateIp" : "192.168.0.67", "status" : "SHUTOFF", "taskStatus" : "NO_TASK", "created" : "2022-12-02 00:04:42.0", "region" : "cn-north-4", "zone" : "cn-north-4c", "availability_zone_display" : "可用区3", "vpcId" : "279e8217-4a8a-4d83-8fd9-b8f14d47170b", "subnetId" : "a86217e6-a96d-4803-ae5c-b57da6811249", "securityGroupId" : "c5564ac2-bdcf-4e45-b892-92c2ae79ecd9", "specification" : "cbh.basic.50", "update" : "OLD", "createinstanceStatus" : "starting-cbs-service", "failReason" : "No FailReason Now", "instanceKey" : "6771", "orderId" : "CS22120200031TOLA", "periodNum" : "1,2", "resourceId" : "01903dfb-11fc-4ae4-8bff-bca51d11ad92", "bastion_type" : "OEM", "publicId" : "", "alterPermit" : "1", "bastionVersion" : "3.3.41.0", "newBastionVersion" : "3.3.40.1", "instanceStatus" : "error", "instanceDescription" : "LoadBalance service error!,2022-12-19 17:14:30,{\"d_usage\":\"0.80\",\"m_usage\":\"30.04\",\"c_usage\":\"0.62\",\"session_count\":\"0\"", "webPort" : "443", "enterpriseProjectId" : "0", "vip" : null, "slaveZone" : null, "slaveZoneDisplay" : null, "haId" : null, "instanceType" : null } ] }
SDK代码示例
SDK代码示例如下。
Java
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 |
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.cbh.v1.region.CbhRegion; import com.huaweicloud.sdk.cbh.v1.*; import com.huaweicloud.sdk.cbh.v1.model.*; public class ListCbhInstanceSolution { 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); CbhClient client = CbhClient.newBuilder() .withCredential(auth) .withRegion(CbhRegion.valueOf("<YOUR REGION>")) .build(); ListCbhInstanceRequest request = new ListCbhInstanceRequest(); try { ListCbhInstanceResponse response = client.listCbhInstance(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()); } } } |
Python
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 |
# coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkcbh.v1.region.cbh_region import CbhRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkcbh.v1 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.getenv("CLOUD_SDK_AK") sk = os.getenv("CLOUD_SDK_SK") credentials = BasicCredentials(ak, sk) \ client = CbhClient.new_builder() \ .with_credentials(credentials) \ .with_region(CbhRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListCbhInstanceRequest() response = client.list_cbh_instance(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg) |
Go
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 |
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" cbh "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cbh/v1" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cbh/v1/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cbh/v1/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 := cbh.NewCbhClient( cbh.CbhClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListCbhInstanceRequest{} response, err := client.ListCbhInstance(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
更多
更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
状态码
状态码 |
描述 |
---|---|
200 |
查询云堡垒机实例列表信息成功。 |
400 |
Bad Request |
401 |
Unauthorized |
403 |
Forbidden |
404 |
Not Found |
错误码
请参见错误码。