虚拟机相关接口

设置虚拟机DNS

PUT/zstack/v1/vm-instances/{vmInstanceUuid}/actions

Headers

Authorization: OAuth the-session-uuid

Body

{
  "setVmDns": {
    "vmNicUuid": "ff06b3f6ce3939d78731832c5ac97000",
    "dnsList": [
      "223.5.5.5"
    ],
    "ipVersion": 4
  },
  "systemTags": [],
  "userTags": []
}

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

Curl示例

curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X PUT -d '{"setVmDns":{"vmNicUuid":"ff06b3f6ce3939d78731832c5ac97000","dnsList":["223.5.5.5"],"ipVersion":4}}' \
http://localhost:8080/zstack/v1/vm-instances/ff01ec80fd11327cba7519b66119d900/actions

参数列表

名字

类型

位置

描述

可选值

起始版本

vmInstanceUuid

String

url

虚拟机UUID

 

4.10.10

vmNicUuid (可选)

String

body(包含在setVmDns结构中)

虚拟机网卡UUID

 

4.10.10

dnsList

List

body(包含在setVmDns结构中)

DNS列表

 

4.10.10

ipVersion (可选)

Integer

body(包含在setVmDns结构中)

IP协议号

  • 4
  • 6

4.10.10

systemTags (可选)

List

body

系统标签

 

4.10.10

userTags (可选)

List

body

用户标签

 

4.10.10

API返回

返回示例

{
  "inventories": [
    {
      "vmInstanceUuid": "ff01ec80fd11327cba7519b66119d900",
      "dns": "223.5.5.5",
      "ipVersion": 4,
      "createDate": "Nov 14, 2017 2:20:57 PM",
      "lastOpDate": "Nov 14, 2017 2:20:57 PM"
    }
  ]
}
名字类型描述起始版本
successboolean 4.10.10
inventoriesList详情参考inventories4.10.10
errorErrorCode错误码,若不为null,则表示操作失败, 操作成功时该字段为null。 详情参考error4.10.10

inventories

名字类型描述起始版本
vmInstanceUuidString虚拟机UUID4.10.10
vmNicUuidString虚拟机网卡UUID4.10.10
dnsStringDNS地址4.10.10
ipVersionIntegerIP协议号4.10.10
createDateTimestamp创建时间4.10.10
lastOpDateTimestamp最后一次修改时间4.10.10

error

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

SDK示例

Java SDK

SetVmDnsAction action = new SetVmDnsAction();
action.vmInstanceUuid = "ff01ec80fd11327cba7519b66119d900";
action.vmNicUuid = "ff06b3f6ce3939d78731832c5ac97000";
action.dnsList = asList("223.5.5.5");
action.ipVersion = 4;
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
SetVmDnsAction.Result res = action.call();

Python SDK

SetVmDnsAction action = SetVmDnsAction()
action.vmInstanceUuid = "ff01ec80fd11327cba7519b66119d900"
action.vmNicUuid = "ff06b3f6ce3939d78731832c5ac97000"
action.dnsList = [223.5.5.5]
action.ipVersion = 4
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
SetVmDnsAction.Result res = action.call()