新建集群

POST/zstack/v1/clusters

Headers

Authorization: OAuth the-session-uuid

Body

{
  "params": {
    "zoneUuid": "d5629a75f0a24280ac669d93d38a7dcd",
    "name": "cluster1",
    "description": "test",
    "hypervisorType": "KVM"
  },
  "systemTags": [],
  "userTags": []
}

上述示例中systemTagsuserTags字段可以省略。列出是为了表示body中可以包含这两个字段。

Curl示例

curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X POST -d '{"params":{"zoneUuid":"e1fb7d87073b397c857eaeeb16243103","name":"cluster1","description":"test","hypervisorType":"KVM"}}' \
http://localhost:8080/zstack/v1/clusters

参数列表

名字

类型

位置

描述

可选值

起始版本

zoneUuid

String

body(包含在params结构中)

数据中心UUID

 

0.6

name

String

body(包含在params结构中)

资源名称

 

0.6

description (可选)

String

body(包含在params结构中)

资源的详细描述

 

0.6

hypervisorType

String

body(包含在params结构中)

虚拟机管理程序类型

  • KVM
  • Simulator

4.0.0

type (可选)

String

body(包含在params结构中)

保留域, 请不要使用

  • zstack

0.6

resourceUuid (可选)

String

body(包含在params结构中)

  • 当reourceUuid不等于null, 虚拟化平台使用这个值作为被创建资源的UUID;
  • 否则虚拟化平台会自动生成一个UUID

 

0.6

architecture (可选)

String

body(包含在params结构中)

 

  • x86_64
  • aarch64
  • mips64el

4.0.0

tagUuids (可选)

List

body(包含在params结构中)

 

 

4.0.0

systemTags (可选)

List

body

系统标签

 

0.6

userTags (可选)

List

body

用户标签

 

0.6

API返回

返回示例

{
  "inventory": {
    "name": "cluster1",
    "uuid": "dc7442bb39674d779d688369329ba845",
    "description": "test",
    "state": "Enabled",
    "hypervisorType": "KVM",
    "createDate": "Jun 7, 2017 9:20:31 PM",
    "lastOpDate": "Jun 7, 2017 9:20:31 PM",
    "zoneUuid": "342b68c14869412984d6327a58b18f9b",
    "type": "zstack"
  }
}
名字类型描述起始版本
errorErrorCode错误码,若不为null,则表示操作失败, 操作成功时该字段为null。 详情参考error0.6
inventoryClusterInventory详情参考inventory0.6

error

名字类型描述起始版本
codeString错误码号,错误的全局唯一标识,例如SYS.1000, HOST.10010.6
descriptionString错误的概要描述0.6
detailsString错误的详细信息0.6
elaborationString保留字段,默认为null0.6
opaqueLinkedHashMap保留字段,默认为null0.6
causeErrorCode根错误,引发当前错误的源错误,若无原错误,该字段为null0.6

inventory

名字类型描述起始版本
nameString资源名称0.6
uuidString资源的UUID,唯一标示该资源0.6
descriptionString资源的详细描述0.6
stateString集群状态0.6
hypervisorTypeString虚拟机管理程序类型0.6
createDateTimestamp创建时间0.6
lastOpDateTimestamp最后一次修改时间0.6
zoneUuidString数据中心UUID0.6
typeString保留域0.6

SDK示例

Java SDK

CreateClusterAction action = new CreateClusterAction();
action.zoneUuid = "70fd596da027478eb22ac9357aed23f4";
action.name = "cluster1";
action.description = "test";
action.hypervisorType = "KVM";
action.sessionId = "894477861bcc45488978b584908e4ee3";
CreateClusterAction.Result res = action.call();

Python SDK

CreateClusterAction action = CreateClusterAction()
action.zoneUuid = "cfe698802c87486986878daa2da7e02f"
action.name = "cluster1"
action.description = "test"
action.hypervisorType = "KVM"
action.sessionId = "0664130c5d36414bbb3a7a59ef87ea5a"
CreateClusterAction.Result res = action.call()