查询集群详情
功能介绍
查看指定集群的详细信息。该接口不兼容Sahara。
接口约束
无
调用方法
请参见如何调用API。
URI
GET /v1.1/{project_id}/cluster_infos/{cluster_id}
请求参数
无
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
cluster |
Cluster object |
集群参数。 |
参数 |
参数类型 |
描述 |
---|---|---|
clusterId |
String |
集群ID。 |
clusterName |
String |
集群名称。 |
totalNodeNum |
String |
集群部署的节点总数。 |
clusterState |
String |
集群状态(默认为英文,当X-Language请求头被设置为zh-cn,该字段会返回中文,因此请谨慎设置X-Language等语言请求头):
|
stageDesc |
String |
集群进度描述。(默认为英文,当X-Language请求头被设置为zh-cn时,该字段会返回中文,因此请谨慎设置X-Language等语言请求头)安装集群进度包括:
扩容集群进度包括:
缩容集群进度包括:
集群安装、扩容、缩容失败,stageDesc会显示失败的原因。 |
createAt |
String |
集群创建时间,十位时间戳。 |
updateAt |
String |
集群更新时间,十位时间戳。 |
chargingStartTime |
String |
开始计费时间。 |
billingType |
String |
集群计费模式。包括:
|
dataCenter |
String |
集群工作区域。 |
vpc |
String |
VPC名称。 |
vpcId |
String |
VPC ID。 |
duration |
String |
集群购买时长。 |
fee |
String |
创建集群所需费用,系统自动计算。 |
hadoopVersion |
String |
Hadoop组件版本信息。 |
componentList |
Array of ComponentAmb objects |
组件列表信息。 |
externalIp |
String |
公网IP地址。用于集群外访问集群主master进程所开放IP的地址。 |
externalAlternateIp |
String |
公网备用IP地址。用于集群外访问集群备master进程所使用的IP地址。 |
internalIp |
String |
内网IP地址。用于集群内访问集群master进程所使用IP的地址。 |
deploymentId |
String |
集群部署ID。本集群的任务部署所对应的ID,用于云服务查询集群部署任务详情。 |
remark |
String |
集群备注信息。当前默认都为空。 |
orderId |
String |
创建集群的订单号。 |
azId |
String |
可用区域ID。 |
azName |
String |
可用区域名称。 |
azCode |
String |
可用区域英文名称 |
availabilityZoneId |
String |
可用区域 |
instanceId |
String |
实例ID。 |
vnc |
String |
远程登录弹性云服务器的URI地址。 |
tenantId |
String |
项目编号。 |
volumeSize |
Integer |
磁盘存储空间。 |
volumeType |
String |
磁盘类型。 |
subnetId |
String |
子网ID。 |
subnetName |
String |
子网名称。 |
securityGroupsId |
String |
安全组ID。 |
slaveSecurityGroupsId |
String |
非Master节点的安全组id,当前一个MRS集群只会使用一个安全组,所以该字段已经废弃,从兼容性考虑,该字段会返回和securityGroupsId同样的值。 |
bootstrapScripts |
Array of BootstrapScript objects |
配置引导操作脚本信息。 |
safeMode |
Integer |
MRS集群运行模式。
|
clusterVersion |
String |
集群版本。 |
nodePublicCertName |
String |
密钥文件名称。 |
masterNodeIp |
String |
Master节点IP。 |
privateIpFirst |
String |
首选私有IP。 |
errorInfo |
String |
错误信息。 |
tags |
String |
标签信息 |
masterNodeNum |
String |
集群部署的Master节点数量。 |
coreNodeNum |
String |
集群部署的Core节点数量。 |
masterNodeSize |
String |
Master节点的实例规格。 |
coreNodeSize |
String |
Core节点的实例规格。 |
masterNodeProductId |
String |
Master节点产品ID。 |
masterNodeSpecId |
String |
Master节点规格ID。 |
coreNodeProductId |
String |
Core节点产品ID。 |
coreNodeSpecId |
String |
Core节点规格ID。 |
masterDataVolumeType |
String |
Master节点数据磁盘存储类别,目前支持SATA、SAS和SSD。 |
masterDataVolumeSize |
Integer |
Master节点数据磁盘存储空间。为增大数据存储容量,创建集群时可同时添加磁盘。 取值范围:100GB~32000GB,传值只需填数字,不需要带单位GB。 |
masterDataVolumeCount |
Integer |
Master节点数据磁盘个数。 取值只能是1 |
coreDataVolumeType |
String |
Core节点数据磁盘存储类别,目前支持SATA、SAS和SSD。 |
coreDataVolumeSize |
Integer |
Core节点数据磁盘存储空间。为增大数据存储容量,创建集群时可同时添加磁盘。 取值范围:100GB~32000GB,传值只需填数字,不需要带单位GB。 |
coreDataVolumeCount |
Integer |
Core节点数据磁盘个数。 取值范围:1~10 |
enterpriseProjectId |
String |
企业项目ID。 |
isMrsManagerFinish |
Boolean |
表示集群创建过程中,MRS Manager是否安装完成。
|
clusterType |
Integer |
集群类型。包括:
|
logCollection |
Integer |
集群安装失败时,是否搜集日志。
|
periodType |
Integer |
区分包周期,集群是包年还是包月。
|
scale |
String |
集群节点的变更状态(扩容/缩容/变更规格)。当该参数取值为空时,表示集群节点没有进行变更操作。(默认为英文,当X-Language请求头被设置为zh-cn时,该字段会返回中文,因此请谨慎设置X-Language等语言请求头)取值范围:
|
nodeGroups |
Array of NodeGroupV10 objects |
Master节点、Core节点和Task节点列表信息。 |
taskNodeGroups |
Array of NodeGroupV10 objects |
Task节点列表信息。 |
eipId |
String |
集群弹性公网ip的唯一标识。 |
eipAddress |
String |
集群弹性公网ip的IPV4地址。 |
eipv6Address |
String |
集群弹性公网ip的IPV6地址,IPv4时无此字段。 |
参数 |
参数类型 |
描述 |
---|---|---|
componentId |
String |
组件ID。 |
componentName |
String |
组件名称。 |
componentVersion |
String |
组件版本。 |
componentDesc |
String |
组件描述信息。 |
参数 |
参数类型 |
描述 |
---|---|---|
name |
String |
引导操作脚本的名称,同一个集群的引导操作脚本名称不允许相同。 只能由数字、英文字符、空格、中划线和下划线组成,且不能以空格开头。 可输入的字符串长度为1~64个字符。 |
uri |
String |
引导操作脚本的路径。设置为OBS桶的路径或虚拟机本地的路径。- OBS桶的路径:直接手动输入脚本路径。例如输入MRS提供的公共样例脚本路径。示例:s3a://bootstrap/presto/presto-install.sh,其中安装dualroles时,presto-install.sh脚本参数为dualroles, 安装worker时,presto-install.sh脚本参数为worker。根据Presto使用习惯,建议您在Active Master节点上安装dualroles,在Core节点上安装worker。- 虚拟机本地的路径:用户需要输入正确的脚本路径。脚本所在的路径必须以‘/’开头,以.sh结尾。 |
parameters |
String |
引导操作脚本参数。 |
nodes |
Array of strings |
引导操作脚本所执行的节点类型,包含master、core和task三种类型。说明:节点类型必须为小写字母。 |
active_master |
Boolean |
引导操作脚本是否只运行在主Master节点上。 缺省值为false,表示引导操作脚本可运行在所有Master节点上。 |
fail_action |
String |
引导操作脚本执行失败后,是否继续执行后续脚本和创建集群。 缺省值为errorout,表示终止操作。 说明: 建议您在调试阶段设置为“继续”,无论此引导操作是否执行成功,则集群都能继续安装和启动。 枚举值:
|
before_component_start |
Boolean |
引导操作脚本执行的时间。目前支持“组件启动前”和“组件启动后”两种类型。 缺省值为false,表示引导操作脚本在组件启动后执行。 |
start_time |
Long |
单个引导操作脚本的执行时间。 |
state |
String |
单个引导操作脚本的运行状态。
|
action_stages |
Array of strings |
选择引导操作脚本执行的时间。
|
参数 |
参数类型 |
描述 |
---|---|---|
GroupName |
String |
节点组名。 |
NodeNum |
Integer |
节点数量,取值范围0~500,Master节点和Core节点数量至少为1,Core与Task节点总数最大为500个。 |
NodeSize |
String |
节点的实例规格。 |
NodeSpecId |
String |
节点实例规格ID。 |
VmProductId |
String |
节点虚拟机产品ID。 |
VmSpecCode |
String |
节点虚拟机产品规格。 |
NodeProductId |
String |
节点实例产品ID。 |
RootVolumeSize |
Integer |
节点系统盘大小,不可配置,默认为40GB。 |
RootVolumeProductId |
String |
节点系统盘的产品ID。 |
RootVolumeType |
String |
节点系统盘的类型。 |
RootVolumeResourceSpecCode |
String |
节点系统盘产品规格。 |
RootVolumeResourceType |
String |
节点系统盘产品类型。 |
DataVolumeType |
String |
节点数据磁盘存储类别,目前支持SATA、SAS和SSD。
|
DataVolumeCount |
Integer |
节点数据磁盘存储数目。 |
DataVolumeSize |
Integer |
节点数据磁盘存储大小。 |
DataVolumeProductId |
String |
节点数据磁盘的产品ID。 |
DataVolumeResourceSpecCode |
String |
节点数据磁盘的产品规格。 |
DataVolumeResourceType |
String |
节点数据磁盘的产品类型。 |
请求示例
GET /v1.1/{project_id}/cluster_infos/{cluster_id}
响应示例
状态码: 200
查询集群详情成功。
{ "cluster" : { "clusterId" : "bdb064ff-2855-4624-90d5-e9a6376abd6e", "clusterName" : "c17022001", "masterNodeNum" : "2", "coreNodeNum" : "3", "clusterState" : "scaling-in", "stageDesc" : "Installing MRS Manager", "createAt" : "1487570757", "updateAt" : "1487668974", "billingType" : "Metered", "dataCenter" : "cn-north-1", "vpc" : "vpc-autotest", "vpcId" : "e2978efd-ca12-4058-9332-1ca0bfbab592", "duration" : "0", "fee" : "0", "hadoopVersion" : "", "masterNodeSize" : "s3.2xlarge.2.linux.bigdata", "coreNodeSize" : "s1.xlarge.linux.bigdata", "componentList" : [ { "componentId" : "MRS 3.1.0_001", "componentName" : "Hadoop", "componentVersion" : "3.1.1", "componentDesc" : "A framework that allows for the distributed processing of large data sets across clusters." }, { "componentId" : "MRS 3.1.0_002", "componentName" : "Spark", "componentVersion" : "2.3.2", "componentDesc" : "A fast and general engine for large-scale data processing." }, { "componentId" : "MRS 3.1.0_004", "componentName" : "Hive", "componentVersion" : "3.1.0", "componentDesc" : "A data warehouse infrastructure that provides data summarization and ad hoc querying." }, { "componentId" : "MRS 3.1.0_003", "componentName" : "HBase", "componentVersion" : "2.1.1", "componentDesc" : "A scalable, distributed database that supports structured data storage for large tables." } ], "externalIp" : "100.XXX.XXX.XXX", "externalAlternateIp" : "100.XXX.XXX.XXX", "internalIp" : "192.XXX.XXX.XXX", "eipId" : "b16dd5eb-5e5b-486a-906a-2e8f6e814a7a", "eipAddress" : "100.XXX.XXX.XXX", "eipv6Address" : "2403:XXXX:XXXX::XXXX:XXXX", "deploymentId" : "4ac46ca7-a488-4b91-82c2-e4d7aa9c40c2", "remark" : "", "orderId" : "null", "azId" : "null", "masterNodeProductId" : "b35cf2d2348a445ca74b32289a160882", "masterNodeSpecId" : "8ab05e503b4c42abb304e2489560063b", "coreNodeProductId" : "dc970349d128460e960a0c2b826c427c", "coreNodeSpecId" : "cdc6035a249a40249312f5ef72a23cd7", "azName" : "az1.dc1", "instanceId" : "4ac46ca7-a488-4b91-82c2-e4d7aa9c40c2", "vnc" : null, "tenantId" : "3f99e3319a8943ceb15c584f3325d064", "volumeSize" : "100", "volumeType" : "SATA", "subnetId" : "6b96eec3-4f8d-4c83-93e2-6ec625001d7c", "subnetName" : "subnet-ftest", "securityGroupsId" : "930e34e2-195d-401f-af07-0b64ea6603f8", "slaveSecurityGroupsId" : "2ef3343e-3477-4a0d-80fe-4d874e4f81b8", "bootstrapScripts" : [ { "name" : "test1-success", "uri" : "s3a://bootscript/script/simple/basic_success.sh", "parameters" : "", "nodes" : [ "master", "core" ], "active_master" : true, "fail_action" : "errorout", "before_component_start" : true, "state" : "SUCCESS", "start_time" : 1527681083, "action_stages" : [ "AFTER_SCALE_IN", "AFTER_SCALE_OUT" ] } ], "isMrsManagerFinish" : false, "safeMode" : "1", "clusterVersion" : "MRS 2.1.0", "nodePublicCertName" : "myp", "masterNodeIp" : "192.XXX.XXX.XXX", "privateIpFirst" : "192.XXX.XXX.XXX", "errorInfo" : null, "tags" : "k1=v1,k2=v2,k3=v3", "clusterType" : "", "logCollection" : "1", "nodeGroups" : [ { "GroupName" : "master_node_default_group", "NodeNum" : "1", "NodeSize" : "s3.xlarge.2.linux.bigdata", "NodeSpecId" : "cdc6035a249a40249312f5ef72a23cd7", "VmProductId" : "", "VmSpecCode" : null, "NodeProductId" : "dc970349d128460e960a0c2b826c427c", "RootVolumeSize" : "40", "RootVolumeProductId" : "16c1dcf0897249758b1ec276d06e0572", "RootVolumeType" : "SATA", "RootVolumeResourceSpecCode" : "", "RootVolumeResourceType" : "", "DataVolumeType" : "SATA", "DataVolumeCount" : "1", "DataVolumeSize" : "100", "DataVolumeProductId" : "16c1dcf0897249758b1ec276d06e0572", "DataVolumeResourceSpecCode" : "", "DataVolumeResourceType" : "" }, { "GroupName" : "core_node_analysis_group", "NodeNum" : "1", "NodeSize" : "s3.xlarge.2.linux.bigdata", "NodeSpecId" : "cdc6035a249a40249312f5ef72a23cd7", "VmProductId" : "", "VmSpecCode" : null, "NodeProductId" : "dc970349d128460e960a0c2b826c427c", "RootVolumeSize" : "40", "RootVolumeProductId" : "16c1dcf0897249758b1ec276d06e0572", "RootVolumeType" : "SATA", "RootVolumeResourceSpecCode" : "", "RootVolumeResourceType" : "", "DataVolumeType" : "SATA", "DataVolumeCount" : "1", "DataVolumeSize" : "100", "DataVolumeProductId" : "16c1dcf0897249758b1ec276d06e0572", "DataVolumeResourceSpecCode" : "", "DataVolumeResourceType" : "" }, { "GroupName" : "task_node_analysis_group", "NodeNum" : "1", "NodeSize" : "s3.xlarge.2.linux.bigdata", "NodeSpecId" : "cdc6035a249a40249312f5ef72a23cd7", "VmProductId" : "", "VmSpecCode" : null, "NodeProductId" : "dc970349d128460e960a0c2b826c427c", "RootVolumeSize" : "40", "RootVolumeProductId" : "16c1dcf0897249758b1ec276d06e0572", "RootVolumeType" : "SATA", "RootVolumeResourceSpecCode" : "", "RootVolumeResourceType" : "", "DataVolumeType" : "SATA", "DataVolumeCount" : "1", "DataVolumeSize" : "100", "DataVolumeProductId" : "16c1dcf0897249758b1ec276d06e0572", "DataVolumeResourceSpecCode" : "", "DataVolumeResourceType" : "" } ], "taskNodeGroups" : [ { "GroupName" : "task_node_default_group", "NodeNum" : "1", "NodeSize" : "s3.xlarge.2.linux.bigdata", "NodeSpecId" : "cdc6035a249a40249312f5ef72a23cd7", "VmProductId" : "", "VmSpecCode" : null, "NodeProductId" : "dc970349d128460e960a0c2b826c427c", "RootVolumeSize" : "40", "RootVolumeProductId" : "16c1dcf0897249758b1ec276d06e0572", "RootVolumeType" : "SATA", "RootVolumeResourceSpecCode" : "", "RootVolumeResourceType" : "", "DataVolumeType" : "SATA", "DataVolumeCount" : "1", "DataVolumeSize" : "100", "DataVolumeProductId" : "16c1dcf0897249758b1ec276d06e0572", "DataVolumeResourceSpecCode" : "", "DataVolumeResourceType" : "" } ], "masterDataVolumeType" : "SATA", "masterDataVolumeSize" : "200", "masterDataVolumeCount" : "1", "coreDataVolumeType" : "SATA", "coreDataVolumeSize" : "100", "coreDataVolumeCount" : "1", "periodType" : "0" } }
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 |
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.mrs.v1.region.MrsRegion; import com.huaweicloud.sdk.mrs.v1.*; import com.huaweicloud.sdk.mrs.v1.model.*; public class ShowClusterDetailsSolution { 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); MrsClient client = MrsClient.newBuilder() .withCredential(auth) .withRegion(MrsRegion.valueOf("<YOUR REGION>")) .build(); ShowClusterDetailsRequest request = new ShowClusterDetailsRequest(); try { ShowClusterDetailsResponse response = client.showClusterDetails(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 |
# coding: utf-8 from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkmrs.v1.region.mrs_region import MrsRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkmrs.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 = MrsClient.new_builder() \ .with_credentials(credentials) \ .with_region(MrsRegion.value_of("<YOUR REGION>")) \ .build() try: request = ShowClusterDetailsRequest() response = client.show_cluster_details(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 |
package main import ( "fmt" "github.com/huaweicloud/huaweicloud-sdk-go-v3/core/auth/basic" mrs "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/mrs/v1" "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/mrs/v1/model" region "github.com/huaweicloud/huaweicloud-sdk-go-v3/services/mrs/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 := mrs.NewMrsClient( mrs.MrsClientBuilder(). WithRegion(region.ValueOf("<YOUR REGION>")). WithCredential(auth). Build()) request := &model.ShowClusterDetailsRequest{} response, err := client.ShowClusterDetails(request) if err == nil { fmt.Printf("%+v\n", response) } else { fmt.Println(err) } } |
更多编程语言的SDK代码示例,请参见API Explorer的代码示例页签,可生成自动对应的SDK代码示例。
状态码
状态码 |
描述 |
---|---|
200 |
查询集群详情成功。 |
错误码
请参见错误码。