恢复资源脑裂
Headers
Authorization: OAuth the-session-uuidBody
{
"recoverResourceSplitBrain": {
"hostUuid": "ff0192fa70113da886101145c084bd00",
"primaryStorageUuid": "ff0359abb8443d2f8077cc368afa7c00",
"forceRecover": true
},
"systemTags": [],
"userTags": []
}上述示例中systemTags、userTags字段可以省略。列出是为了表示body中可以包含这两个字段。
Curl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X PUT -d '{"recoverResourceSplitBrain":{"hostUuid":"ff0192fa70113da886101145c084bd00","primaryStorageUuid":"ff0359abb8443d2f8077cc368afa7c00","forceRecover":true}}' \
http://localhost:8080/zstack/v1/primary-storage/mini/ff0811edaad638d5893a0fb09f408300/actions参数列表
| 名字 | 类型 | 位置 | 描述 | 可选值 | 起始版本 |
|---|---|---|---|---|---|
| resourceUuid | String | url | 资源UUID | 0.6 | |
| hostUuid | String | body(包含在recoverResourceSplitBrain结构中) | 主机UUID | 0.6 | |
| primaryStorageUuid (可选) | String | body(包含在recoverResourceSplitBrain结构中) | 数据存储UUID | 0.6 | |
| forceRecover (可选) | boolean | body(包含在recoverResourceSplitBrain结构中) | 0.6 | ||
| resourceType (可选) | String | body(包含在recoverResourceSplitBrain结构中) | 0.6 | ||
| systemTags (可选) | List | body | 系统标签 | 0.6 | |
| userTags (可选) | List | body | 用户标签 | 0.6 |
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
RecoverResourceSplitBrainAction action = new RecoverResourceSplitBrainAction();
action.resourceUuid = "ff0811edaad638d5893a0fb09f408300";
action.hostUuid = "ff0192fa70113da886101145c084bd00";
action.primaryStorageUuid = "ff0359abb8443d2f8077cc368afa7c00";
action.forceRecover = true;
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
RecoverResourceSplitBrainAction.Result res = action.call();Python SDK
RecoverResourceSplitBrainAction action = RecoverResourceSplitBrainAction()
action.resourceUuid = "ff0811edaad638d5893a0fb09f408300"
action.hostUuid = "ff0192fa70113da886101145c084bd00"
action.primaryStorageUuid = "ff0359abb8443d2f8077cc368afa7c00"
action.forceRecover = true
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
RecoverResourceSplitBrainAction.Result res = action.call()