Document navigation

CreateBonding

API Request

URLs
POST zstack/v1/hosts/bondings
Headers
Authorization: OAuth the-session-uuid
Body
{
  "params": {
    "hostUuids": [
      "83e1a4a2ca0d3b0e836b032118196455"
    ],
    "type": "LinuxBonding",
    "mode": "802.3ad",
    "xmitHashPolicy": "layer2+3"
  },
  "systemTags": [],
  "userTags": []
}
Note: In the above example, systemTags and userTags fields can be omitted. They are listed to indicate that these two fields can be included in the body.
Curl Example
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X POST -d '{"params":{"hostUuids":["83e1a4a2ca0d3b0e836b032118196455"],"type":"LinuxBonding","mode":"802.3ad","xmitHashPolicy":"layer2+3"}}' http://localhost:8080/zstack/v1/hosts/bondings
Parameter List
Name Type Location Description Allowed Values Starting Version
hostUuids List body (contained in params structure) Host UUID list 5.0.0
bondingName String body (contained in params structure) Bond name 4.7.0
slaveUuids (optional) List body (contained in params structure) Slave NIC UUID list 5.0.0
slaveNames (optional) List body (contained in params structure) Slave NIC name list 5.0.0
type String body (contained in params structure) Bond type
  • LinuxBonding
  • OvsBonding
4.7.0
mode String body (contained in params structure) Bond mode
  • 802.3ad
  • active-backup
4.7.0
xmitHashPolicy (optional) String body (contained in params structure) Hash policy
  • layer2
  • layer2+3
  • layer3+4
4.7.0
description (optional) String body (contained in params structure) Resource description 4.7.0
resourceUuid (optional) String body (contained in params structure) Resource UUID 4.7.0
tagUuids (optional) List body (contained in params structure) Tag UUID list 4.7.0
systemTags (optional) List body System tag 4.7.0
userTags (optional) List body User tag 4.7.0

API Response

Response Example
{
  "inventory": [
    {
      "hostUuid": "ad58bd08605338648dce127f256f332e",
      "bondingName": "test",
      "mode": "802.3ad",
      "xmitHashPolicy": "layer2+3",
      "ipAddresses": [
        "192.168.1.1"
      ],
      "type": "LinuxBonding",
      "slaves": [
        {
          "uuid": "97e1e9fb0cd73af8bd3e84376e59fa26",
          "hostUuid": "ad58bd08605338648dce127f256f332e",
          "interfaceName": "eno1",
          "interfaceType": "bondingSlave",
          "speed": 1000,
          "slaveActive": true,
          "carrierActive": true,
          "createDate": "Nov 14, 2017 10:20:57 PM",
          "lastOpDate": "Nov 14, 2017 10:20:57 PM"
        }
      ]
    }
  ]
}
Name Type Description Starting Version
success boolean Whether the operation succeeded. 4.7.0
inventory List See details inventory 4.7.0
error ErrorCode Error code. If not null, the operation failed. If null, the operation succeeded. See details error 4.7.0
#inventory
Name Type Description Starting Version
uuid String Resource UUID, uniquely identifies the resource 4.7.0
hostUuid String Host UUID 4.7.0
bondingName String Bond name 4.7.0
bondingType String Bond usage state, can be noBridge, bridgeSlave 4.7.0
speed Long Bond speed 4.7.0
mode String Bond mode 4.7.0
xmitHashPolicy String Hash policy 4.7.0
miiStatus String MII status 4.7.0
mac String MAC address 4.7.0
ipAddresses List IP addresses 4.7.0
gateway String Gateway address 4.7.0
callBackIp String Callback address 4.7.0
miimon Long MII monitor interval 4.7.0
type String Bond type 4.7.0
allSlavesActive Boolean The all slaves active. 4.7.0
description String Resource description 4.7.0
createDate Timestamp Creation time 4.7.0
lastOpDate Timestamp Last modification time 4.7.0
slaves List See details slaves 4.7.0
#slaves
Name Type Description Starting Version
uuid String Resource UUID, uniquely identifies the resource 4.7.0
hostUuid String Host UUID 4.7.0
bondingUuid String Bond UUID 4.7.0
interfaceModel String NIC model 5.0.0
vendorId String Vendor ID 5.0.0
deviceId String Device ID 5.0.0
subvendorId String Sub-vendor ID 5.0.0
subdeviceId String Sub-device ID 5.0.0
interfaceName String NIC name 4.7.0
interfaceType String NIC usage state, can be nomaster, bridgeSlave, bondSlave 4.7.0
speed Long NIC speed 4.7.0
slaveActive Boolean Bond link status 4.7.0
carrierActive Boolean Physical link status 4.7.0
ipAddresses List IP addresses 4.7.0
gateway String Gateway address 4.7.0
mac String MAC address 4.7.0
callBackIp String Callback address 4.7.0
pciDeviceAddress String NIC PCI address 4.7.0
offloadStatus String The offload status. 4.7.0
description String Resource description 4.7.0
createDate Timestamp Creation time 4.7.0
lastOpDate Timestamp Last modification time 4.7.0
#error
Name Type Description Starting Version
code String Error code number, globally unique identifier of the error, e.g. SYS.1000, HOST.1001 4.7.0
description String Brief description of the error 4.7.0
details String Detailed error information 4.7.0
elaboration String Reserved field, default is null 4.7.0
opaque LinkedHashMap Reserved field, default is null 4.7.0
cause ErrorCode Root cause, the error that caused the current error. If there is no original error, this field is null 4.7.0

SDK Examples

Java SDK
CreateBondingAction action = new CreateBondingAction();
action.hostUuids = asList("83e1a4a2ca0d3b0e836b032118196455");
action.type = "LinuxBonding";
action.mode = "802.3ad";
action.xmitHashPolicy = "layer2+3";
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
CreateBondingAction.Result res = action.call();
Python SDK
CreateBondingAction action = CreateBondingAction()
action.hostUuids = [83e1a4a2ca0d3b0e836b032118196455]
action.type = "LinuxBonding"
action.mode = "802.3ad"
action.xmitHashPolicy = "layer2+3"
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
CreateBondingAction.Result res = action.call()
API Reference | ZStack ZSphere · ZVF | ZStack Resource Center