Querying the Cluster List
Function
This API is used to query the cluster list.
Calling Method
For details, see Calling APIs.
URI
GET /v1.1/{project_id}/clusters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Project ID. For details about how to obtain the project ID, see Project ID and Account ID. |
Request Parameters
Parameter |
Mandatory |
Type |
Description |
---|---|---|---|
X-Auth-Token |
Yes |
String |
User token. It can be obtained by calling the IAM API (value of X-Subject-Token in the response header). |
Response Parameters
Status code: 200
Parameter |
Type |
Description |
---|---|---|
clusters |
Array of clusters objects |
Cluster list. For details, see the descriptions of clusters parameters. |
Parameter |
Type |
Description |
---|---|---|
customerConfig |
CustomerConfig object |
User configuration |
datastore |
Datastore object |
CDM information |
instances |
Array of ClusterDetailInstance objects |
Cluster node information. For details, see the descriptions of instances parameters. |
azName |
String |
AZ name |
dbuser |
String |
Database user |
flavorName |
String |
Flavor name |
recentEvent |
Integer |
Number of events |
isAutoOff |
Boolean |
Auto shutdown |
isScheduleBootOff |
Boolean |
Whether to enable scheduled startup/shutdown. The scheduled startup/shutdown and auto shutdown functions cannot be enabled at the same time. |
clusterMode |
String |
Cluster mode: sharding |
namespace |
String |
Namespace |
task |
ClusterTask object |
Task information |
publicEndpoint |
String |
EIP bound to the cluster |
actionProgress |
ActionProgress object |
Cluster operation progress, which consists of a key and a value. The key indicates an ongoing task, and the value indicates the progress of the ongoing task. An example is "action_progress":{"SNAPSHOTTING":"16%"}. |
created |
String |
Cluster creation time in ISO 8601 format: YYYY-MM-DDThh:mm:ssZ |
bakExpectedStartTime |
String |
Start time |
bakKeepDay |
Integer |
Retention duration |
name |
String |
Cluster name |
statusDetail |
String |
Cluster status: normal |
id |
String |
Cluster ID |
isFrozen |
String |
Whether the cluster is frozen. The value can be 0 (not frozen) or 1 (frozen). |
updated |
String |
Cluster update time in ISO 8601 format: YYYY-MM-DDThh:mm:ssZ |
status |
String |
Cluster status
|
failedReasons |
FailedReasons object |
Failure cause. If this parameter is left empty, the cluster is in normal state. |
Parameter |
Type |
Description |
---|---|---|
failureRemind |
String |
Failure notification |
clusterName |
String |
Cluster type |
serviceProvider |
String |
Service provisioning |
localDisk |
String |
Whether the disk is a local disk |
ssl |
String |
Whether to enable SSL |
createFrom |
String |
Source |
resourceId |
String |
Resource ID |
flavorType |
String |
Flavor type |
workSpaceId |
String |
Workspace ID |
trial |
String |
Trial |
Parameter |
Type |
Description |
---|---|---|
type |
String |
Type. Generally, the value is cdm. |
version |
String |
Cluster version |
Parameter |
Type |
Description |
---|---|---|
flavor |
flavor object |
VM flavor of a node. For details, see the descriptions of flavor parameters. |
volume |
volume object |
Disk information of a node. For details, see the descriptions of volume parameters. |
status |
String |
Node status
|
actions |
Array of strings |
Node operation status
|
type |
String |
Node type. Currently, only cdm is available. |
id |
String |
Node VM ID |
name |
String |
Name of the VM on the node |
isFrozen |
String |
Whether the node is frozen. The value can be 0 (not frozen) or 1 (frozen). |
components |
String |
Component |
config_status |
String |
Node configuration status. The value is null when the cluster list is queried.
|
role |
String |
Instance role |
group |
String |
Group |
links |
Array of ClusterLinks objects |
Link information |
paramsGroupId |
String |
Group ID |
publicIp |
String |
Public IP address |
manageIp |
String |
Management IP address |
trafficIp |
String |
Traffic IP address |
shard_id |
String |
Slice ID |
manage_fix_ip |
String |
Management fix IP address |
private_ip |
String |
Private IP address |
internal_ip |
String |
Internal IP address |
resource |
Array of Resource objects |
Resource information (null is returned for querying the cluster list) |
Parameter |
Type |
Description |
---|---|---|
id |
String |
VM flavor ID |
links |
Array of ClusterLinks objects |
Link information |
Parameter |
Type |
Description |
---|---|---|
type |
String |
Type of disks on the node. Only local disks are supported. |
size |
Long |
Size of the disk on the node (GB) |
Parameter |
Type |
Description |
---|---|---|
resource_id |
String |
Resource ID |
resource_type |
String |
Resource type: server |
Parameter |
Type |
Description |
---|---|---|
description |
String |
Task description |
id |
String |
Task ID |
name |
String |
Task name |
Parameter |
Type |
Description |
---|---|---|
CREATING |
String |
Cluster creation progress, for example, 29% |
GROWING |
String |
Cluster expansion progress, for example, 29% |
RESTORING |
String |
Cluster restoration progress, for example, 29% |
SNAPSHOTTING |
String |
Cluster snapshotting progress, for example, 29% |
REPAIRING |
String |
Cluster repairing progress, for example, 29% |
Parameter |
Type |
Description |
---|---|---|
CREATE_FAILED |
CREATE_FAILED object |
Cause of the cluster creation failure |
Example Requests
GET /v1.1/1551c7f6c808414d8e9f3c514a170f2e/clusters
Example Responses
Status code: 200
ok
{ "clusters" : [ { "publicEndpoint" : "49.xx.xx.10", "actionProgress" : { }, "created" : "2018-09-05T08:38:25", "name" : "cdm-c018", "statusDetail" : "Normal", "id" : "bae65496-643e-47ca-84af-948672de7eeb", "isFrozen" : "0", "updated" : "2018-09-05T08:38:25", "status" : "200" } ] }
SDK Sample Code
The SDK sample code is as follows.
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.cdm.v1.region.cdmRegion; import com.huaweicloud.sdk.cdm.v1.*; import com.huaweicloud.sdk.cdm.v1.model.*; public class ListClustersSolution { 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); cdmClient client = cdmClient.newBuilder() .withCredential(auth) .withRegion(cdmRegion.valueOf("<YOUR REGION>")) .build(); ListClustersRequest request = new ListClustersRequest(); try { ListClustersResponse response = client.listClusters(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 |
# coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkcdm.v1.region.cdm_region import cdmRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkcdm.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 = __import__('os').getenv("CLOUD_SDK_AK") sk = __import__('os').getenv("CLOUD_SDK_SK") projectId = "{project_id}" credentials = BasicCredentials(ak, sk, projectId) \ client = cdmClient.new_builder() \ .with_credentials(credentials) \ .with_region(cdmRegion.value_of("<YOUR REGION>")) \ .build() try: request = ListClustersRequest() response = client.list_clusters(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" cdm "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cdm/v1" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cdm/v1/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/cdm/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") projectId := "{project_id}" auth := basic.NewCredentialsBuilder(). WithAk(ak). WithSk(sk). WithProjectId(projectId). Build() client := cdm.NewcdmClient( cdm.cdmClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ListClustersRequest{} response, err := client.ListClusters(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
For SDK sample code of more programming languages, see the Sample Code tab in API Explorer. SDK sample code can be automatically generated.
Status Codes
Status Code |
Description |
---|---|
200 |
ok |
400 |
Request error. |
401 |
Authentication failed. |
403 |
You do not have required permissions to perform this operation. |
404 |
The requested resource was not found. |
500 |
An internal service error occurred. For details, see error codes. |
503 |
Service unavailable. |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot