新建分布式端口组
Headers
Authorization: OAuth the-session-uuidBody
{
"params": {
"vSwitchUuid": "04d84d13c7e43c53810bd0d470210b4d",
"vlanMode": "ACCESS",
"vlan": 100,
"name": "port-group-1",
"description": "Test",
"type": "L3BasicNetwork",
"category": "Private",
"ipVersion": 4,
"system": false,
"enableIPAM": false
},
"systemTags": [],
"userTags": []
}上述示例中systemTags、userTags字段可以省略。列出是为了表示body中可以包含这两个字段。
Curl示例
curl -H "Content-Type: application/json;charset=UTF-8" \
-H "Authorization: OAuth b86c9016b4f24953a9edefb53ca0678c" \
-X POST -d '{"params":{"vSwitchUuid":"04d84d13c7e43c53810bd0d470210b4d","vlanMode":"ACCESS","vlan":100,"name":"port-group-1","description":"Test","type":"L3BasicNetwork","category":"Private","ipVersion":4,"system":false,"enableIPAM":false}}' \
http://localhost:8080/zstack/v1/l3-networks/port-group参数列表
名字 | 类型 | 位置 | 描述 | 可选值 | 起始版本 |
|---|---|---|---|---|---|
vSwitchUuid | String | body(包含在params结构中) | 虚拟交换机UUID |
| 4.2.0 |
vlanMode (可选) | String | body(包含在params结构中) | VLAN模式 |
| 4.2.0 |
vlan | Integer | body(包含在params结构中) | VLAN号 |
| 4.2.0 |
vlanRanges (可选) | String | body(包含在params结构中) | VLAN范围 |
| 4.2.0 |
name | String | body(包含在params结构中) | 资源名称 |
| 4.2.0 |
description (可选) | String | body(包含在params结构中) | 资源的详细描述 |
| 4.2.0 |
type (可选) | String | body(包含在params结构中) | 端口组类型 |
| 4.2.0 |
category (可选) | String | body(包含在params结构中) | 网络类型,需要与system标签搭配使用,system为true时可设置为Public、Private |
| 4.2.0 |
ipVersion (可选) | Integer | body(包含在params结构中) | IP协议号 |
| 4.2.0 |
system (可选) | boolean | body(包含在params结构中) | 是否用于系统虚拟机 |
| 4.2.0 |
dnsDomain (可选) | String | body(包含在params结构中) | DNS域 |
| 4.2.0 |
enableIPAM (可选) | Boolean | body(包含在params结构中) | IP地址管理是否启用 |
| 4.2.0 |
resourceUuid (可选) | String | body(包含在params结构中) | 资源UUID |
| 4.2.0 |
tagUuids (可选) | List | body(包含在params结构中) | 标签UUID列表 |
| 4.2.0 |
systemTags (可选) | List | body | 系统标签 |
| 4.2.0 |
userTags (可选) | List | body | 用户标签 |
| 4.2.0 |
API返回
返回示例
{
"inventory": {
"vSwitchUuid": "39217a13614a3435bcc5ed199dc6bc04",
"vlanMode": "ACCESS",
"vlanId": 100,
"uuid": "afc3dd5d3e5e36f7af08797bd6582a7d",
"name": "port-group-1",
"description": "Test",
"type": "portGroup",
"zoneUuid": "2ee7572e6ce53147866096c79eb4d4f0",
"l2NetworkUuid": "5f62648626353514892de22f154eeee7",
"state": "Enabled",
"system": false,
"category": "Private",
"enableIPAM": false
}
}| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| success | boolean | 4.6.21 | |
| error | ErrorCode | 错误码,若不为null,则表示操作失败, 操作成功时该字段为null。 详情参考error | 0.6 |
| inventory | L3NetworkInventory | 详情参考inventory | 0.6 |
error
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| code | String | 错误码号,错误的全局唯一标识,例如SYS.1000, HOST.1001 | 0.6 |
| description | String | 错误的概要描述 | 0.6 |
| details | String | 错误的详细信息 | 0.6 |
| elaboration | String | 保留字段,默认为null | 0.6 |
| opaque | LinkedHashMap | 保留字段,默认为null | 0.6 |
| cause | ErrorCode | 根错误,引发当前错误的源错误,若无原错误,该字段为null | 0.6 |
inventory
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| uuid | String | 资源的UUID,唯一标示该资源 | 0.6 |
| name | String | 资源名称 | 0.6 |
| description | String | 资源的详细描述 | 0.6 |
| type | String | 分布式端口组类型 | 0.6 |
| zoneUuid | String | 数据中心UUID | 0.6 |
| l2NetworkUuid | String | 端口组分布式交换机UUID | 0.6 |
| state | String | 分布式端口组的可用状态 | 0.6 |
| dnsDomain | String | DNS域 | 0.6 |
| system | Boolean | 是否用于系统虚拟机 | 0.6 |
| category | String | 网络类型,需要与system标签搭配使用,system为false时可设置为Public、Private | 0.6 |
| ipVersion | Integer | IP协议号 | 3.1.0 |
| enableIPAM | Boolean | 打开IP地址管理功能 | 4.10.16 |
| createDate | Timestamp | 创建时间 | 0.6 |
| lastOpDate | Timestamp | 最后一次修改时间 | 0.6 |
| dns | List | 域名解析服务器 | 0.6 |
| ipRanges | List | 详情参考ipRanges | 0.6 |
| networkServices | List | 详情参考networkServices | 0.6 |
| hostRoute | List | 详情参考hostRoute | 2.3 |
| reservedIpRanges | List | 详情参考reservedIpRanges | 4.10.16 |
ipRanges
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| uuid | String | 资源的UUID,唯一标示该资源 | 0.6 |
| l3NetworkUuid | String | 分布式端口组UUID | 0.6 |
| name | String | 资源名称 | 0.6 |
| description | String | 资源的详细描述 | 0.6 |
| startIp | String | 起始地址 | 4.6.21 |
| endIp | String | 结束地址 | 4.6.21 |
| netmask | String | 掩码 | 4.6.21 |
| prefixLen | String | 掩码长度 | 3.1.0 |
| gateway | String | 网关 | 0.6 |
| networkCidr | String | 网络CIDR | 4.6.21 |
| ipVersion | Integer | IP协议号 | 3.1.0 |
| addressMode | String | IPv6地址分配模式 | 3.1.0 |
| createDate | Timestamp | 创建时间 | 0.6 |
| lastOpDate | Timestamp | 最后一次修改时间 | 0.6 |
| ipRangeType | IpRangeType | 详情参考ipRangeType | 4.6.21 |
ipRangeType
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| Normal | IpRangeType | 普通地址段 | 4.6.21 |
| AddressPool | IpRangeType | 地址池段 | 4.6.21 |
networkServices
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| l3NetworkUuid | String | 分布式端口组UUID | 0.6 |
| networkServiceProviderUuid | String | 网络服务提供模块UUID | 0.6 |
| networkServiceType | String | 0.6 |
hostRoute
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| id | Long | 2.3 | |
| l3NetworkUuid | String | 分布式端口组UUID | 2.3 |
| prefix | String | 2.3 | |
| nexthop | String | 2.3 | |
| createDate | Timestamp | 创建时间 | 2.3 |
| lastOpDate | Timestamp | 最后一次修改时间 | 2.3 |
reservedIpRanges
| 名字 | 类型 | 描述 | 起始版本 |
|---|---|---|---|
| uuid | String | 资源的UUID,唯一标示该资源 | 4.10.16 |
| l3NetworkUuid | String | 分布式端口组UUID | 4.10.16 |
| name | String | 资源名称 | 4.10.16 |
| description | String | 资源的详细描述 | 4.10.16 |
| startIp | String | 起始IP(包含在保留地址段内) | 4.10.16 |
| endIp | String | 结束IP(包含在保留地址段内) | 4.10.16 |
| ipVersion | Integer | ip协议号 | 4.10.16 |
| createDate | Timestamp | 创建时间 | 4.10.16 |
| lastOpDate | Timestamp | 最后一次修改时间 | 4.10.16 |
SDK示例
Java SDK
CreatePortGroupAction action = new CreatePortGroupAction();
action.vSwitchUuid = "04d84d13c7e43c53810bd0d470210b4d";
action.vlanMode = "ACCESS";
action.vlan = 100;
action.name = "port-group-1";
action.description = "Test";
action.type = "L3BasicNetwork";
action.category = "Private";
action.ipVersion = 4;
action.system = false;
action.enableIPAM = false;
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c";
CreatePortGroupAction.Result res = action.call();Python SDK
action = CreatePortGroupAction()
action.vSwitchUuid = "04d84d13c7e43c53810bd0d470210b4d"
action.vlanMode = "ACCESS"
action.vlan = 100
action.name = "port-group-1"
action.description = "Test"
action.type = "L3BasicNetwork"
action.category = "Private"
action.ipVersion = 4
action.system = false
action.enableIPAM = false
action.sessionId = "b86c9016b4f24953a9edefb53ca0678c"
res = action.call()