设置云主机Emulator Pinning功能(SetVmEmulatorPinning)
API请求
URLs
PUT zstack/v1/vm-instances/{uuid}/actionsHeaders
Authorization: OAuth the-session-uuidBody
{
"setVmEmulatorPinning": {
"emulatorPinning": "1-4"
},
"systemTags": [],
"userTags": []
}Note: 上述示例中systemTags、userTags字段可以省略。列出是为了表示body中可以包含这两个字段。
Curl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X PUT -d '{"setVmEmulatorPinning":{"emulatorPinning":"1-4"}}' http://localhost:8080/zstack/v1/vm-instances/f523cb5736b630acb643dda6d31be5a0/actions参数列表
| 名字 | 类型 | 位置 | 描述 | 可选值 | 起始版本 |
|---|---|---|---|---|---|
| uuid | String | url | 资源的UUID,唯一标示该资源 | 4.3.12 | |
| emulatorPinning | String | body(包含在setVmEmulatorPinning结构中) | 云主机Emulator 绑定在宿主机的某些cpu上,格式为(\^?(\d+)(-\d+)?,)+(例如0-1,16) | 4.3.12 | |
| systemTags (可选) | List | body | 4.3.12 | ||
| userTags (可选) | List | body | 4.3.12 |
API返回
该API成功时返回一个空的JSON结构{},出错时返回的JSON结构包含一个error字段,例如:
{
"error": {
"code": "SYS.1001",
"description": "A message or a operation timeout",
"details": "Create VM on KVM timeout after 300s"
}
}SDK示例
Java
SDK
SetVmEmulatorPinningAction action = new SetVmEmulatorPinningAction();
action.uuid = "f523cb5736b630acb643dda6d31be5a0";
action.enable = true;
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
SetVmEmulatorPinningAction.Result res = action.call();Python
SDK
SetVmEmulatorPinningAction action = SetVmEmulatorPinningAction()
action.uuid = "f523cb5736b630acb643dda6d31be5a0"
action.enable = true
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
SetVmEmulatorPinningAction.Result res = action.call()