海光SE模块相关接口
在Hygon物理机生成MDEV设备 (GenerateHygonMdevDevices)
API请求
URLs
PUT zstack/v1/hygon-devices/{hostUuid}/actions
Headers
Authorization: OAuth the-session-uuidBody
{
"generateHygonMdevDevices": {
"maxQemuNum": 64
},
"systemTags": [],
"userTags": []
}Note: 上述示例中systemTags、userTags字段可以省略。列出是为了表示body中可以包含这两个字段。
Curl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X PUT -d '{"generateHygonMdevDevices":{"maxQemuNum":64}}' http://localhost:8080/zstack/v1/hygon-devices/8426a1ab49763402b20d3dbe7061ed6b/actions
参数列表
| 名字 | 类型 | 位置 | 描述 | 可选值 | 起始版本 |
|---|---|---|---|---|---|
| hostUuid | String | url | 物理机UUID | 5.5.0 | |
| systemTags (可选) | List | body | 系统标签 | 5.5.0 | |
| userTags (可选) | List | body | 用户标签 | 5.5.0 | |
| maxQemuNum | Integer | body(包含在generateHygonMdevDevices结构中) | 指定每个物理CCP卡要为 QEMU云主机创建多少个虚拟设备 (MDEV) ,max_qemu_num=128 每个CCP生成 128 个给云主机使用的MDEV。 | 5.5.0 |
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
GenerateHygonMdevDevicesAction action = new GenerateHygonMdevDevicesAction();
action.hostUuid = "8426a1ab49763402b20d3dbe7061ed6b";
action.maxQemuNum = 64;
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
GenerateHygonMdevDevicesAction.Result res = action.call();Python SDK
GenerateHygonMdevDevicesAction action = GenerateHygonMdevDevicesAction()
action.hostUuid = "8426a1ab49763402b20d3dbe7061ed6b"
action.maxQemuNum = 64
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
GenerateHygonMdevDevicesAction.Result res = action.call()
在Hygon物理机上取消生成的MDEV设备(UngenerateHygonMdevDevices)
API请求
URLs
PUT zstack/v1/hygon-devices/{hostUuid}/actions
Headers
Authorization: OAuth the-session-uuidBody
{
"ungenerateHygonMdevDevices": {},
"systemTags": [],
"userTags": []
}Note: 上述示例中systemTags、userTags字段可以省略。列出是为了表示body中可以包含这两个字段。
Curl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X PUT -d '{"ungenerateHygonMdevDevices":{}}' http://localhost:8080/zstack/v1/hygon-devices/3c36d4ec8c3532f2ab7fc63af19f8ad8/actions
参数列表
| 名字 | 类型 | 位置 | 描述 | 可选值 | 起始版本 |
|---|---|---|---|---|---|
| hostUuid | String | url | 物理机UUID | 5.5.0 | |
| systemTags (可选) | List | body | 系统标签 | 5.5.0 | |
| userTags (可选) | List | body | 用户标签 | 5.5.0 |
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
UngenerateHygonMdevDevicesAction action = new UngenerateHygonMdevDevicesAction();
action.hostUuid = "3c36d4ec8c3532f2ab7fc63af19f8ad8";
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
UngenerateHygonMdevDevicesAction.Result res = action.call();Python SDK
UngenerateHygonMdevDevicesAction action = UngenerateHygonMdevDevicesAction()
action.hostUuid = "3c36d4ec8c3532f2ab7fc63af19f8ad8"
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
UngenerateHygonMdevDevicesAction.Result res = action.call()
设置云主机是否开启Hygon SE设备透传标识 (SetVmInstanceHygonMdev)
API请求
URLs
POST zstack/v1/vm-instances/{uuid}/hygon-mdev
Headers
Authorization: OAuth the-session-uuidBody
{
"params": {
"hygonSecurityElementEnable": "true"
},
"systemTags": [],
"userTags": []
}Note: 上述示例中systemTags、userTags字段可以省略。列出是为了表示body中可以包含这两个字段。
Curl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X POST -d '{"params":{"hygonSecurityElementEnable":"true"}}' http://localhost:8080/zstack/v1/vm-instances/b06cf99107ca3047a9e1e2189874f6dd/hygon-mdev
参数列表
| 名字 | 类型 | 位置 | 描述 | 可选值 | 起始版本 |
|---|---|---|---|---|---|
| uuid | String | url | 云主机UUID | 5.5.0 | |
| hygonSecurityElementEnable | String | body(包含在params结构中) | 是否启用海光安全元素功能 | 5.5.0 | |
| systemTags (可选) | List | body | 系统标签 | 5.5.0 | |
| userTags (可选) | List | body | 用户标签 | 5.5.0 |
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
SetVmInstanceHygonMdevAction action = new SetVmInstanceHygonMdevAction();
action.uuid = "b06cf99107ca3047a9e1e2189874f6dd";
action.hygonSecurityElementEnable = "true";
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
SetVmInstanceHygonMdevAction.Result res = action.call();Python SDK
SetVmInstanceHygonMdevAction action = SetVmInstanceHygonMdevAction()
action.uuid = "b06cf99107ca3047a9e1e2189874f6dd"
action.hygonSecurityElementEnable = "true"
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
SetVmInstanceHygonMdevAction.Result res = action.call()
