Skip to main content

虚拟交换机

2.10.1增加集群虚拟交换机

接口地址

POST  /NSphere/api/network-resource/cluster/vswitch

接口描述

增加集群虚拟交换机

请求数据类型

application/json

响应数据类型

application/json

请求示例

{

"clusterId": 0,

"name": "",

"desc": null,

"mode": 0,

"vlanId": null,

"networkType": 2,

"acceleMode": 0,

"enableDpdk": false,

"mtu": 1500,

"multicast": false,

"hostNetInfos": [

{

"hostId": 0,

"phyPrioripy": [],

"ipAddr": null,

"netmask": null,

"gateway": null,

"addressIpv6": null,

"netmaskIpv6": null,

"gatewayIpv6": null,

"lacpMode": "off",

"bondMode": null,

"pnics": [

{

"pnicName": "",

"pciAddr": null,

"mac": null,

"acceleMode": 0

}

],

"reselect": false,

"algorithm": null

}

]

}

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

apiClusterVSwitchDTO

增加集群虚拟交换机参数

body

true

ApiClusterVSwitchDTO

ApiClusterVSwitchDTO

clusterId

集群ID

true

integer(int64)

name

虚拟交换机名称,名称要求不能是 auto、default、eql、all、vswitch0 ,不能以 eth、eno、vnet、dhcp、dpdk、tbr 开头,不能以 _bond 结尾。只允许输入字母、数字、减号和下划线,首字符不能为减号,且不允许全部是数字。

true

string

desc

虚拟交换机描述。

false

string

mode

转发模式,取值范围:0(VEB)、1(VEPA)、2(多通道)、3(VXLAN(SDN))、4(VXLAN(NSphere)),默认值:0。

true

integer(int32)

vlanId

虚拟交换机VLAN ID,取值范围:2-4094的整数,默认值:null。

false

integer(int32)

networkType

虚拟交换机网络类型,用二进制的位表示,从低位到高位分别代表:0管理网络、1业务网络、2存储网络、3备份网络、4迁移网络、6引流网络、8镜像网络,对应位的值是1表示是当前网络类型。比如,2的二进制是10,表示网络类型是业务网络;3的二进制是11,表示网络类型是管理网络和业务网络。默认值:2。

true

integer(int32)

acceleMode

加速模式,取值范围:0(普通)、1(智能网卡)、11(DPDK)。默认值:0。

true

integer(int32)

enableDpdk

是否启用DPDK,取值范围:true(启用)、false(未启用),默认值:false。

false

boolean

mtu

MTU,取值范围:IPv4地址的MTU值范围为1000-9000的整数,IPv6地址的MTU值范围为1280-9000的整数,默认值:1500。

true

integer(int32)

multicast

是否启用组播,取值范围:true(启用),false(未启用),默认值:false。

true

boolean

hostNetInfos

增加集群虚拟交换机主机网络配置

true

array

ApiClusterVSwitchHostNetInfoDTO

hostId

虚拟交换机所在主机ID

true

integer(int64)

phyPrioripy

物理接口的优先级,默认值:null。多个物理接口之间用英文逗号分隔。

false

array

string

ipAddr

IPv4地址,默认值:null。注意:配置IP地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IP地址。

false

string

netmask

IPv4子网掩码,默认值:null。

false

string

gateway

IPv4网关,默认值:null。

false

string

addressIpv6

IPv6地址,默认值:null。注意:配置IPv6地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IPv6地址。

false

string

netmaskIpv6

IPv6子网前缀长度,默认值:null。

false

integer(int32)

gatewayIpv6

IPv6网关,默认值:null。

false

string

lacpMode

链路聚合模式。active:动态;off:静态。

false

string

bondMode

负载分担模式,取值范围:balance-tcp(高级)、balance-slb(基本)、active-backup(主备),默认null。

false

string

pnics

虚拟交换机物理口

false

array

ApiVSwitchPnicDTO

pnicName

物理口名称

true

string

pciAddr

物理口唯一标识

false

string

mac

物理口MAC

false

string

acceleMode

加速模式,取值范围:0(普通)、1(智能网卡)、11(DPDK)。默认值:0。

true

integer(int32)

reselect

是否故障恢复切换,取值范围:true(启用),false(未启用),默认值:false。

false

boolean

algorithm

主链路选择方式,取值范围: speed(速率优先)、order(手动配置),默认值:null。

false

string

响应状态

状态码

说明

schema

200

OK

ApiResponse

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {}

}

2.10.2修改集群虚拟交换机

接口地址

PUT  /NSphere/api/network-resource/cluster/vswitch

接口描述

修改集群虚拟交换机

请求数据类型

application/json

响应数据类型

application/json

请求示例

{

"id": 0,

"clusterId": 0,

"desc": null,

"vlanId": null,

"mtu": 0,

"multicast": true,

"hostNetInfos": [

{

"hostId": 0,

"phyPrioripy": [],

"ipAddr": null,

"netmask": null,

"gateway": null,

"addressIpv6": null,

"netmaskIpv6": null,

"gatewayIpv6": null,

"lacpMode": "off",

"bondMode": null,

"pnics": [

{

"pnicName": "",

"pciAddr": null,

"mac": null,

"acceleMode": 0

}

],

"reselect": false,

"algorithm": null

}

]

}

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

apiClusterVSwitchModifyDTO

增加集群虚拟交换机参数

body

true

ApiClusterVSwitchModifyDTO

ApiClusterVSwitchModifyDTO

id

虚拟交换机ID

true

integer(int64)

clusterId

集群ID

true

integer(int64)

desc

虚拟交换机描述。

false

string

vlanId

虚拟交换机VLAN ID,取值范围:2-4094的整数,默认值:null。

false

integer(int32)

mtu

MTU,取值范围:IPv4地址的MTU值范围为1000-9000的整数,IPv6地址的MTU值范围为1280-9000的整数,默认值:1500。

true

integer(int32)

multicast

是否启用组播,取值范围:true(启用),false(未启用),默认值:false。

true

boolean

hostNetInfos

增加集群虚拟交换机主机网络配置

true

array

ApiClusterVSwitchHostNetInfoDTO

hostId

虚拟交换机所在主机ID

true

integer(int64)

phyPrioripy

物理接口的优先级,默认值:null。多个物理接口之间用英文逗号分隔。

false

array

string

ipAddr

IPv4地址,默认值:null。注意:配置IP地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IP地址。

false

string

netmask

IPv4子网掩码,默认值:null。

false

string

gateway

IPv4网关,默认值:null。

false

string

addressIpv6

IPv6地址,默认值:null。注意:配置IPv6地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IPv6地址。

false

string

netmaskIpv6

IPv6子网前缀长度,默认值:null。

false

integer(int32)

gatewayIpv6

IPv6网关,默认值:null。

false

string

lacpMode

链路聚合模式。active:动态;off:静态。

false

string

bondMode

负载分担模式,取值范围:balance-tcp(高级)、balance-slb(基本)、active-backup(主备),默认null。

false

string

pnics

虚拟交换机物理口

false

array

ApiVSwitchPnicDTO

pnicName

物理口名称

true

string

pciAddr

物理口唯一标识

false

string

mac

物理口MAC

false

string

acceleMode

加速模式,取值范围:0(普通)、1(智能网卡)、11(DPDK)。默认值:0。

true

integer(int32)

reselect

是否故障恢复切换,取值范围:true(启用),false(未启用),默认值:false。

false

boolean

algorithm

主链路选择方式,取值范围: speed(速率优先)、order(手动配置),默认值:null。

false

string

响应状态

状态码

说明

schema

200

OK

ApiResponse

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {}

}

2.10.3查询网络策略模板列表

接口地址

GET  /NSphere/api/network-resource/portprofile

接口描述

支持不分页查询,即不传offset或者limit表示全量查询。支持按网络策略模板ID和ID列表查询,两者同时传参则取交集。E0930版本新增接口。

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

offset

偏移量。指定从第几条记录开始返回。取值大于等于0,默认值为0

query

false

integer(int32)

limit

每页返回的最大记录数。 取值1~200,默认值为10

query

false

integer(int32)

sortDir

排序顺序。不传、0:不排序,1:升序,2:降序。sortField为空时默认不排序

query

false

integer(int32)

sortField

排序字段。支持字段:name,description,vlanId,vnetPriority,inAvgBandwidth,inBurstSize,outAvgBandwidth,outBurstSize

query

false

string

portProfileName

网络策略模板名称,支持模糊查询

query

false

string

portProfileId

网络策略模板ID,如与idList一起传参,则取两者交集。

query

false

integer(int64)

idList

网络策略模板ID列表,如与portProfileId一起传参,则取两者交集。

query

false

array

integer

scope

所有者。1:只查询公有,0:只查询私有。不传此参数则默认查询所有。

query

false

integer(int32)

响应状态

状态码

说明

schema

200

OK

ApiResponseApiPagingListResultApiPortProfileVO

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

ApiPagingListResultApiPortProfileVO

ApiPagingListResultApiPortProfileVO

data

网络策略模板实体类

array

ApiPortProfileVO

id

网络策略模板ID

integer(int64)

name

网络策略模板名称

string

description

网络策略模板描述

string

enableVlan

是否启用VLAN

boolean

vlanId

VLAN ID

integer(int32)

inbound

是否启用流的入方向流限制。0:不启用,1:启用

integer(int32)

inAvgBandwidth

入方向平均带宽(Kbps)

integer(int64)

inPeakBandwidth

入方向峰值带宽(Kbps)

integer(int64)

inBurstSize

入突发缓冲大小(KBytes)

integer(int64)

outbound

是否启用流的出方向流限制。0:不启用,1:启用

integer(int32)

outAvgBandwidth

出方向平均带宽(Kbps)

integer(int64)

outPeakBandWidth

出方向峰值带宽(Kbps)

integer(int64)

outBurstSize

出突发缓冲大小(KBytes)

integer(int64)

enableVsi

是否启用VSI

boolean

vsiMngId

VSI管理ID(网络策略模板启用vsi后返回)

string

vsiNetResource

网络资源(网络策略模板启用vsi后返回)

integer(int64)

vsiTypeId

VSI类型ID(网络策略模板启用vsi后返回)

integer(int64)

vsiTypeVer

VSI类型版本(网络策略模板启用vsi后返回)

integer(int64)

vsiTypeVerId

VSI类型版本ID(网络策略模板启用vsi后返回)

integer(int64)

vsiIdFormat

VSI ID格式(网络策略模板启用vsi后返回)

string

operatorGroupId

操作员分组ID

integer(int64)

operatorGroupName

操作员分组名称

string

aclStrategyId

ACL策略ID

integer(int64)

netLimitProfileId

网络限速策略ID

integer(int64)

aclName

ACL策略名称

string

type

ACL类型。2:二层,3:IP(三层)

integer(int32)

netLimitName

网络限速策略名称

string

netLimitTitle

网络限速策略显示名称

string

vnetPriority

网络优先级。-1:无,0:低优先级,1:中优先级,2:高优先级

integer(int32)

vlanType

VLAN类型。0:VLAN,1:XVLAN

integer(int32)

scope

所有者。0:私有,1:公有

integer(int32)

offset

偏移量。指定从第几条记录开始返回。

integer(int32)

size

当前返回的记录数。

integer(int32)

total

数据总量

integer(int64)

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {

"data": [

{

"id": null,

"name": null,

"description": null,

"enableVlan": true,

"vlanId": null,

"inbound": null,

"inAvgBandwidth": null,

"inPeakBandwidth": null,

"inBurstSize": null,

"outbound": null,

"outAvgBandwidth": null,

"outPeakBandWidth": null,

"outBurstSize": null,

"enableVsi": true,

"vsiMngId": null,

"vsiNetResource": null,

"vsiTypeId": null,

"vsiTypeVer": null,

"vsiTypeVerId": null,

"vsiIdFormat": null,

"operatorGroupId": null,

"operatorGroupName": null,

"aclStrategyId": null,

"netLimitProfileId": null,

"aclName": null,

"type": null,

"netLimitName": null,

"netLimitTitle": null,

"vnetPriority": null,

"vlanType": null,

"scope": null

}

],

"offset": null,

"size": null,

"total": null

}

}

2.10.4增加路由

接口地址

POST  /NSphere/api/network-resource/route

接口描述

增加路由

请求数据类型

application/json

响应数据类型

application/json

请求示例

{

"hostId": 0,

"target": "",

"netmask": "",

"gw": ""

}

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

apiRouteDTO

增加路由实体类

body

true

ApiRouteDTO

ApiRouteDTO

hostId

物理主机id

true

integer(int64)

target

目的IP网段/地址

true

string

netmask

掩码

true

string

gw

网关

true

string

响应状态

状态码

说明

schema

200

OK

ApiResponse

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {}

}

2.10.5修改路由

接口地址

PUT  /NSphere/api/network-resource/route

接口描述

修改路由。若修改的路由不存在,则增加路由。

请求数据类型

application/json

响应数据类型

application/json

请求示例

{

"hostId": 0,

"target": "",

"netmask": "",

"gw": "",

"oldTarget": "",

"oldNetmask": "",

"oldGw": ""

}

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

apiRouteModifyDTO

修改路由实体类

body

true

ApiRouteModifyDTO

ApiRouteModifyDTO

hostId

物理主机id

true

integer(int64)

target

目的IP网段/地址

true

string

netmask

掩码

true

string

gw

网关

true

string

oldTarget

需要修改的目的IP网段/地址

true

string

oldNetmask

需要修改的掩码

true

string

oldGw

需要修改的网关

true

string

响应状态

状态码

说明

schema

200

OK

ApiResponse

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {}

}

2.10.6删除路由

接口地址

DELETE  /NSphere/api/network-resource/route

接口描述

删除路由

请求数据类型

application/json

响应数据类型

application/json

请求示例

{

"hostId": 0,

"target": "",

"netmask": "",

"gw": ""

}

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

apiRouteDTO

增加路由实体类

body

true

ApiRouteDTO

ApiRouteDTO

hostId

物理主机id

true

integer(int64)

target

目的IP网段/地址

true

string

netmask

掩码

true

string

gw

网关

true

string

响应状态

状态码

说明

schema

200

OK

ApiResponse

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {}

}

2.10.7查询路由

接口地址

GET  /NSphere/api/network-resource/route/list

接口描述

查询路由

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

hostId

物理主机id

query

true

integer(int64)

vsName

虚拟交换机名称

query

false

string

响应状态

状态码

说明

schema

200

OK

ApiResponse

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {}

}

2.10.8查询高级网络

接口地址

GET  /NSphere/api/network-resource/sdn/network

接口描述

查询高级网络

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

offset

偏移量。指定从第几条记录开始返回。取值大于等于0,默认值为0

query

false

integer(int32)

limit

每页返回的最大记录数。 取值1~200,默认值为10

query

false

integer(int32)

isExternal

是否弹性网络。

query

false

boolean

响应状态

状态码

说明

schema

200

OK

ApiResponseApiPagingListResultApiSdnNetworkVO

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

ApiPagingListResultApiSdnNetworkVO

ApiPagingListResultApiSdnNetworkVO

data

高级网络实体类

array

ApiSdnNetworkVO

id

网络id

string

tunnelKey

L2VNI

integer(int32)

description

描述

string

mtu

mtu

integer(int32)

name

名称

string

internalName

内部名称

string

vlanPassThru

VLAN透传

boolean

subnets

子网

array

string

offset

偏移量。指定从第几条记录开始返回。

integer(int32)

size

当前返回的记录数。

integer(int32)

total

数据总量

integer(int64)

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {

"data": [

{

"id": null,

"tunnelKey": null,

"description": null,

"mtu": null,

"name": null,

"internalName": null,

"vlanPassThru": true,

"subnets": []

}

],

"offset": null,

"size": null,

"total": null

}

}

2.10.9查询高级网络虚拟网卡

接口地址

GET  /NSphere/api/network-resource/sdn/ports

接口描述

查询高级网络虚拟网卡

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

hasIp

是否有IP。为true会过滤掉无ip的网卡。

query

false

boolean

subnetId

子网id。

query

false

string

offset

偏移量。指定从第几条记录开始返回。取值大于等于0,默认值为0

query

false

integer(int32)

limit

每页返回的最大记录数。 取值1~200,默认值为10

query

false

integer(int32)

响应状态

状态码

说明

schema

200

OK

ApiResponseApiPagingListResultApiSdnPortVO

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

ApiPagingListResultApiSdnPortVO

ApiPagingListResultApiSdnPortVO

data

高级网络虚拟网卡实体类

array

ApiSdnPortVO

id

虚拟网卡id

string

name

名称

string

subnetInfo

子网信息

string

ifaceId

网络接口唯一标识

string

macAddress

MAC地址

string

networkId

网络内部名称

string

qosPolicyId

QoS策略id

string

allowedAddressPairs

允许分配地址对

array

object

fixedIp

固定IP

array

object

enableGateway

是否通过网关

boolean

bindingVm

虚拟机显示名称

string

qosName

QoS策略名称

string

offset

偏移量。指定从第几条记录开始返回。

integer(int32)

size

当前返回的记录数。

integer(int32)

total

数据总量

integer(int64)

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {

"data": [

{

"id": null,

"name": null,

"subnetInfo": null,

"ifaceId": null,

"macAddress": null,

"networkId": null,

"qosPolicyId": null,

"allowedAddressPairs": [],

"fixedIp": [],

"enableGateway": true,

"bindingVm": null,

"qosName": null

}

],

"offset": null,

"size": null,

"total": null

}

}

2.10.10添加高级网络策略路由

接口地址

POST  /NSphere/api/network-resource/sdn/router/protectPolicies

接口描述

添加高级网络策略路由

请求数据类型

application/json

响应数据类型

application/json

请求示例

{

"vmId": 0,

"protectPolicies": [

{

"type": "",

"ifaceId": "",

"serviceId": "",

"serviceIfaceId": ""

}

]

}

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

apiProtectPoliciesDTO

添加策略路由实体类

body

true

ApiProtectPoliciesDTO

ApiProtectPoliciesDTO

vmId

虚拟机ID

true

integer(int32)

protectPolicies

策略明细

true

array

ApiProtectPolicyDTO

type

策略路由类型

true

string

ifaceId

网络接口唯一标识

true

string

serviceId

网络服务id

true

string

serviceIfaceId

网络服务接口id

true

string

响应状态

状态码

说明

schema

200

OK

ApiResponseHashMapStringProtectPolicy

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

protectPolicy

protectPolicy

type

string

iface_id

string

service_id

string

service_iface_id

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {

"additionalProperties1": {

"type": null,

"iface_id": null,

"service_id": null,

"service_iface_id": null

}

}

}

2.10.11删除高级网络策略路由

接口地址

DELETE  /NSphere/api/network-resource/sdn/router/protectPolicy/{policyId}

接口描述

删除高级网络策略路由

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

policyId

策略路由Id。

path

true

string

响应状态

状态码

说明

schema

200

OK

ApiResponseBoolean

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

boolean

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": true

}

2.10.12查询高级网络子网

接口地址

GET  /NSphere/api/network-resource/sdn/subnet

接口描述

查询高级网络子网。需要传networkId/routerId/findAll任意一个参数,不能同时为空,若多个同时有值则按networkId→routerId→findAll的优先级执行查询操作。

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

isExternalUsable

可使用的弹性子网。

query

true

boolean

offset

偏移量。指定从第几条记录开始返回。取值大于等于0,默认值为0

query

false

integer(int32)

limit

每页返回的最大记录数。 取值1~200,默认值为10

query

false

integer(int32)

networkId

网络id

query

false

string

routerId

路由器id

query

false

string

findAll

是否全部查询。为true时返回所有子网,为false时返回未关联的子网。

query

false

boolean

响应状态

状态码

说明

schema

200

OK

ApiResponseApiPagingListResultApiSdnSubnetVO

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

ApiPagingListResultApiSdnSubnetVO

ApiPagingListResultApiSdnSubnetVO

data

高级网络子网实体类

array

ApiSdnSubnetVO

id

子网id

string

name

名称

string

internalName

内部名称

string

description

描述

string

gatewayIp

网关ip

string

ipVersion

版本

integer(int32)

linkFlag

关联路由器内部名称

string

linked

是否关联路由器

boolean

networkId

网络id

string

cidr

子网地址

string

subnetMask

子网掩码

string

prefix

前缀

integer(int32)

hostRoutes

静态路由

array

object

dnsNameservers

dns

array

string

allocationPools

IP地址池

array

object

usedByVm

是否被虚拟机使用

boolean

routerName

关联路由器名称

string

offset

偏移量。指定从第几条记录开始返回。

integer(int32)

size

当前返回的记录数。

integer(int32)

total

数据总量

integer(int64)

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {

"data": [

{

"id": "",

"name": null,

"internalName": null,

"description": null,

"gatewayIp": null,

"ipVersion": null,

"linkFlag": null,

"linked": true,

"networkId": null,

"cidr": null,

"subnetMask": null,

"prefix": null,

"hostRoutes": [],

"dnsNameservers": [],

"allocationPools": [],

"usedByVm": true,

"routerName": null

}

],

"offset": null,

"size": null,

"total": null

}

}

2.10.13增加子网

接口地址

POST  /NSphere/api/network-resource/subnet

接口描述

增加子网。虚拟交换机子网ip和ipv6不能同时为空。

请求数据类型

application/json

响应数据类型

application/json

请求示例

{

"hostId": 0,

"vsName": "",

"networkType": 0,

"name": "",

"ip": null,

"netmask": null,

"vlanId": null,

"bandwidthRatio": 0,

"ipv6": null,

"netmaskIpv6": null

}

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

apiSubnetDTO

虚拟交换机子网返回实体类

body

true

ApiSubnetDTO

ApiSubnetDTO

hostId

虚拟交换机所在主机ID

true

integer(int64)

vsName

虚拟交换机名称,名称要求不能是 auto、default、eql、all、vswitch0 ,不能以 eth、eno、vnet、dhcp、dpdk、tbr 开头,不能以 _bond 结尾。只允许输入字母、数字、减号和下划线,首字符不能为减号,且不允许全部是数字。

true

string

networkType

网络类型,只支持存储网络(4)、备份网络(8)、迁移网络(16)及其混合使用。用二进制的位表示,对应位的值是1表示是当前网络类型。比如,4的二进制是100,表示网络类型是存储网络;12的二进制是1100,表示网络类型是存储网络和备份网络。

true

integer(int32)

name

子网名称。

true

string

ip

IPv4地址。

false

string

netmask

IPv4子网掩码。

false

string

vlanId

VLAN ID。

false

integer(int32)

bandwidthRatio

带宽占比。

true

integer(int32)

ipv6

IPv6地址。

false

string

netmaskIpv6

IPv6子网前缀长度。

false

string

响应状态

状态码

说明

schema

200

OK

ApiResponse

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {}

}

2.10.14修改子网

接口地址

PUT  /NSphere/api/network-resource/subnet

接口描述

修改子网。虚拟交换机子网ip和ipv6不能同时为空

请求数据类型

application/json

响应数据类型

application/json

请求示例

{

"hostId": 0,

"vsName": "",

"vswitchId": 0,

"id": 0,

"networkType": 0,

"name": "",

"ip": null,

"netmask": null,

"vlanId": null,

"bandwidthRatio": 0,

"ipv6": null,

"netmaskIpv6": null

}

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

apiSubnetModifyDTO

虚拟交换机子网返回实体类

body

true

ApiSubnetModifyDTO

ApiSubnetModifyDTO

hostId

虚拟交换机所在主机ID

true

integer(int64)

vsName

虚拟交换机名称,名称要求不能是 auto、default、eql、all、vswitch0 ,不能以 eth、eno、vnet、dhcp、dpdk、tbr 开头,不能以 _bond 结尾。只允许输入字母、数字、减号和下划线,首字符不能为减号,且不允许全部是数字。

true

string

vswitchId

所属的虚拟交换机ID。

true

integer(int64)

id

子网ID。

true

integer(int64)

networkType

网络类型,只支持存储网络(4)、备份网络(8)、迁移网络(16)及其混合使用。用二进制的位表示,对应位的值是1表示是当前网络类型。比如,4的二进制是100,表示网络类型是存储网络;12的二进制是1100,表示网络类型是存储网络和备份网络。

true

integer(int32)

name

子网名称。

true

string

ip

IPv4地址。

false

string

netmask

IPv4子网掩码。

false

string

vlanId

VLAN ID。

false

integer(int32)

bandwidthRatio

带宽占比。

true

integer(int32)

ipv6

IPv6地址。

false

string

netmaskIpv6

IPv6子网前缀长度。

false

string

响应状态

状态码

说明

schema

200

OK

ApiResponse

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {}

}

2.10.15删除子网

接口地址

DELETE  /NSphere/api/network-resource/subnet

接口描述

删除子网

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

hostId

虚拟交换机所在主机ID

query

true

integer(int64)

vswitchName

虚拟交换机名称,名称要求不能是 auto、default、eql、all、vswitch0 ,不能以 eth、eno、vnet、dhcp、dpdk、tbr 开头,不能以 _bond 结尾。只允许输入字母、数字、减号和下划线,首字符不能为减号,且不允许全部是数字。

query

true

string

subnetName

子网名称。

query

false

string

响应状态

状态码

说明

schema

200

OK

ApiResponse

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {}

}

2.10.16查询子网

接口地址

GET  /NSphere/api/network-resource/subnet/list

接口描述

查询子网

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

hostId

虚拟交换机所在主机ID

query

true

integer(int64)

vswitchId

虚拟交换机ID

query

true

integer(int64)

响应状态

状态码

说明

schema

200

OK

ApiResponseListApiSubnetVO

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

array

ApiSubnetVO

id

子网ID。

integer(int64)

vswitchId

所属的虚拟交换机ID。

integer(int64)

networkType

网络类型,只支持存储网络(4)、备份网络(8)、迁移网络(16)及其混合使用。用二进制的位表示,对应位的值是1表示是当前网络类型。比如,4的二进制是100,表示网络类型是存储网络;12的二进制是1100,表示网络类型是存储网络和备份网络。

integer(int32)

name

子网名称。

string

ip

IPv4地址。

string

mask

IPv4子网掩码。

string

vlan

VLAN ID。

integer(int32)

bandwidthRatio

带宽占比。

integer(int32)

ipv6

IPv6地址。

string

maskIpv6

IPv6子网前缀长度。

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": [

{

"id": null,

"vswitchId": null,

"networkType": null,

"name": null,

"ip": null,

"mask": null,

"vlan": null,

"bandwidthRatio": null,

"ipv6": null,

"maskIpv6": null

}

]

}

2.10.17增加虚拟交换机

接口地址

POST  /NSphere/api/network-resource/vswitch

接口描述

增加主机虚拟交换机

请求数据类型

application/json

响应数据类型

application/json

请求示例

{

"hostId": 0,

"name": "",

"description": null,

"portNum": 0,

"mode": 0,

"pnic": null,

"phyPrioripy": null,

"address": null,

"netmask": null,

"gateway": null,

"addressIpv6": null,

"netmaskIpv6": null,

"gatewayIpv6": null,

"enableLacp": false,

"isSmartPnic": false,

"bondMode": null,

"vlanId": null,

"flag": 0,

"pnicList": [],

"reselect": false,

"algorithm": null,

"mtu": 1500,

"networkType": 2,

"multicast": false,

"acceleMode": 0,

"engine": null,

"isSmartNic": false,

"vxlanScope": false

}

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

apiVSwitchDTO

增加主机虚拟交换机参数

body

true

ApiVSwitchDTO

ApiVSwitchDTO

hostId

虚拟交换机所在主机ID

true

integer(int64)

name

虚拟交换机名称,名称要求不能是 auto、default、eql、all、vswitch0 ,不能以 eth、eno、vnet、dhcp、dpdk、tbr 开头,不能以 _bond 结尾。只允许输入字母、数字、减号和下划线,首字符不能为减号,且不允许全部是数字。

true

string

description

虚拟交换机描述。

false

string

portNum

虚拟交换机端口个数

true

integer(int32)

mode

转发模式,取值范围:0(VEB)、1(VEPA)、2(多通道)、3(VXLAN(SDN))、4(VXLAN(NSphere)),默认值:0。

true

integer(int32)

pnic

虚拟交换机使用的物理接口,默认值:null。可配置多个物理接口,多个物理接口之间用英文逗号分隔。在某些情况下必须配置物理接口,可根据返回的错误信息修改调整参数。

false

string

phyPrioripy

物理接口的优先级,默认值:null。多个物理接口之间用英文逗号分隔。

false

string

address

IPv4地址,默认值:null。注意:配置IP地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IP地址。

false

string

netmask

IPv4子网掩码,默认值:null。

false

string

gateway

IPv4网关,默认值:null。

false

string

addressIpv6

IPv6地址,默认值:null。注意:配置IPv6地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IPv6地址。

false

string

netmaskIpv6

IPv6子网前缀长度,默认值:null。

false

integer(int32)

gatewayIpv6

IPv6网关,默认值:null。

false

string

enableLacp

是否启用LACP,取值范围:true(启用)、false(未启用),默认值:false。

false

boolean

isSmartPnic

是否智能网卡:是:true;否:false

false

boolean

bondMode

负载分担模式,取值范围:balance-tcp(高级)、balance-slb(基本)、active-backup(主备),默认null。

false

string

vlanId

虚拟交换机VLAN ID,取值范围:2-4094的整数,默认值:null。

false

integer(int32)

flag

虚拟交换机的增加方式,0:主机下增加。1:集群下增加

false

integer(int32)

pnicList

虚拟交换机物理口

false

array

string

reselect

是否故障恢复切换,取值范围:true(启用),false(未启用),默认值:false。

false

boolean

algorithm

主链路选择方式,取值范围: speed(速率优先)、order(手动配置),默认值:null。

false

string

mtu

MTU,取值范围:IPv4地址的MTU值范围为1000-9000的整数,IPv6地址的MTU值范围为1280-9000的整数,默认值:1500。

true

integer(int32)

networkType

虚拟交换机网络类型,用二进制的位表示,从低位到高位分别代表:0管理网络、1业务网络、2存储网络、3备份网络、4迁移网络、6引流网络、8镜像网络,对应位的值是1表示是当前网络类型。比如,2的二进制是10,表示网络类型是业务网络;3的二进制是11,表示网络类型是管理网络和业务网络。默认值:2。

true

integer(int32)

multicast

是否启用组播,取值范围:true(启用),false(未启用),默认值:false。

true

boolean

acceleMode

加速模式,取值范围:0(普通)、1(智能网卡)、11(DPDK)。默认值:0。

true

integer(int32)

engine

引擎类型,取值范围:ovs、linux。

false

string

isSmartNic

是否使用智能网卡,取值范围:true(是)、false(否)。

false

boolean

vxlanScope

是否被VXLAN域使用,取值范围:true(使用)、false(未使用)。实际未使用此字段,值总是为false。

false

boolean

响应状态

状态码

说明

schema

200

OK

ApiResponseLong

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

integer(int64)

integer(int64)

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": null

}

2.10.18修改虚拟交换机

接口地址

PUT  /NSphere/api/network-resource/vswitch

接口描述

修改虚拟交换机

请求数据类型

application/json

响应数据类型

application/json

请求示例

{

"id": 0,

"description": null,

"portNum": 0,

"pnic": null,

"phyPrioripy": null,

"address": null,

"netmask": null,

"gateway": null,

"addressIpv6": null,

"netmaskIpv6": null,

"gatewayIpv6": null,

"enableLacp": true,

"isSmartPnic": true,

"bondMode": null,

"vlanId": null,

"flag": null,

"pnicList": [],

"haStatus": null,

"reselect": true,

"algorithm": null,

"mtu": 0,

"storageNodeSetted": null,

"multicast": true,

"engine": null,

"isSmartNic": true,

"vxlanScope": true

}

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

apiVSwitchModifyDTO

修改主机虚拟交换机参数

body

true

ApiVSwitchModifyDTO

ApiVSwitchModifyDTO

id

虚拟交换机ID

true

integer(int64)

description

虚拟交换机描述。

false

string

portNum

虚拟交换机端口个数

true

integer(int32)

pnic

虚拟交换机使用的物理接口,默认值:null。可配置多个物理接口,多个物理接口之间用英文逗号分隔。在某些情况下必须配置物理接口,可根据返回的错误信息修改调整参数。

false

string

phyPrioripy

物理接口的优先级,默认值:null。多个物理接口之间用英文逗号分隔。

false

string

address

IPv4地址,默认值:null。注意:配置IP地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IP地址。

false

string

netmask

IPv4子网掩码,默认值:null。

false

string

gateway

IPv4网关,默认值:null。

false

string

addressIpv6

IPv6地址,默认值:null。注意:配置IPv6地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IPv6地址。

false

string

netmaskIpv6

IPv6子网前缀长度,默认值:null。

false

string

gatewayIpv6

IPv6网关,默认值:null。

false

string

enableLacp

是否启用LACP,取值范围:true(启用)、false(未启用),默认值:false。

false

boolean

isSmartPnic

是否智能网卡:是:true;否:false

false

boolean

bondMode

负载分担模式,取值范围:balance-tcp(高级)、balance-slb(基本)、active-backup(主备),默认null。

false

string

vlanId

虚拟交换机VLAN ID,取值范围:2-4094的整数,默认值:null。

false

integer(int32)

flag

虚拟交换机的增加方式,0:主机下增加。1:集群下增加

false

integer(int32)

pnicList

虚拟交换机物理口

false

array

string

haStatus

虚拟机HA状态:0:正常,1:故障

false

integer(int32)

reselect

是否故障恢复切换,取值范围:true(启用),false(未启用),默认值:false。

false

boolean

algorithm

主链路选择方式,取值范围: speed(速率优先)、order(手动配置),默认值:null。

false

string

mtu

MTU,取值范围:IPv4地址的MTU值范围为1000-9000的整数,IPv6地址的MTU值范围为1280-9000的整数,默认值:1500。

true

integer(int32)

storageNodeSetted

是否已将交换机IP设置到本主机的acesure存储节点上,0 未设置,1 已设置

false

integer(int32)

multicast

是否启用组播,取值范围:true(启用),false(未启用),默认值:false。

true

boolean

engine

引擎类型,取值范围:ovs、linux。

false

string

isSmartNic

是否使用智能网卡,取值范围:true(是)、false(否)。

false

boolean

vxlanScope

是否被VXLAN域使用,取值范围:true(使用)、false(未使用)。实际未使用此字段,值总是为false。

false

boolean

响应状态

状态码

说明

schema

200

OK

ApiResponse

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {}

}

2.10.19根据ID查询虚拟交换机

接口地址

GET  /NSphere/api/network-resource/vswitch/{vsId}

接口描述

根据ID查询虚拟交换机

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

vsId

虚拟交换机ID

path

true

integer(int64)

响应状态

状态码

说明

schema

200

OK

ApiResponseApiVSwitchDetailVO

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

ApiVSwitchDetailVO

ApiVSwitchDetailVO

id

虚拟交换机ID

integer(int64)

hostId

虚拟交换机所在主机ID

integer(int64)

bandwidth

带宽(Kbps)。

integer(int64)

name

虚拟交换机名称

string

description

虚拟交换机描述。

string

portNum

虚拟交换机端口个数

integer(int32)

mode

转发模式,取值范围:0(VEB)、1(VEPA)、2(多通道)、3(VXLAN(SDN))、4(VXLAN(NSphere)),默认值:0。

integer(int32)

pnic

虚拟交换机使用的物理接口,默认值:null。可配置多个物理接口,多个物理接口之间用英文逗号分隔。在某些情况下必须配置物理接口,可根据返回的错误信息修改调整参数。

string

address

IPv4地址,默认值:null。注意:配置IP地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IP地址。

string

netmask

IPv4子网掩码,默认值:null。

string

gateway

IPv4网关,默认值:null。

string

ipv6

IPv6地址,默认值:null。注意:配置IPv6地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IPv6地址。

string

netmaskIpv6

IPv6子网前缀长度,默认值:null。

string

gatewayIpv6

IPv6网关,默认值:null。

string

enableLacp

是否启用LACP,取值范围:true(启用)、false(未启用),默认值:false。

boolean

bondMode

负载分担模式,取值范围:balance-tcp(高级)、balance-slb(基本)、active-backup(主备),默认null。

string

vlanId

虚拟交换机VLAN ID,取值范围:2-4094的整数,默认值:null。

integer(int32)

isManage

是否管理网卡:1 是;0 否

integer(int32)

status

虚拟交换机状态,取值范围:0(不活动)、1(活动)。

integer(int32)

clusterId

集群ID 当虚拟交换机增加方式为集群下增加时才有值。

integer(int64)

flag

虚拟交换机的增加方式,0:主机下增加。1:集群下增加

integer(int32)

enableDpdk

是否启用DPDK,取值范围:true(启用)、false(未启用),默认值:false。

boolean

reselect

是否故障恢复切换,取值范围:true(启用),false(未启用),默认值:false。

boolean

algorithm

主链路选择方式,取值范围: speed(速率优先)、order(手动配置),默认值:null。

string

vxlanScopeUseVSwitch

判读虚拟交换机是否被vxlan域使用

boolean

mtu

MTU,取值范围:IPv4地址的MTU值范围为1000-9000的整数,IPv6地址的MTU值范围为1280-9000的整数,默认值:1500。

integer(int32)

storageNodeSetted

是否已将交换机IP设置到本主机的acesure存储节点上,0 未设置,1 已设置

integer(int32)

networkType

虚拟交换机网络类型,用二进制的位表示,从低位到高位分别代表:0管理网络、1业务网络、2存储网络、3备份网络、4迁移网络、6引流网络、8镜像网络,对应位的值是1表示是当前网络类型。比如,2的二进制是10,表示网络类型是业务网络;3的二进制是11,表示网络类型是管理网络和业务网络。默认值:2。

integer(int32)

multicast

是否启用组播,取值范围:true(启用),false(未启用),默认值:false。

boolean

internalPorts

虚拟交换机子网返回实体类

array

ApiSubnetVO

id

子网ID。

integer(int64)

vswitchId

所属的虚拟交换机ID。

integer(int64)

networkType

网络类型,只支持存储网络(4)、备份网络(8)、迁移网络(16)及其混合使用。用二进制的位表示,对应位的值是1表示是当前网络类型。比如,4的二进制是100,表示网络类型是存储网络;12的二进制是1100,表示网络类型是存储网络和备份网络。

integer(int32)

name

子网名称。

string

ip

IPv4地址。

string

mask

IPv4子网掩码。

string

vlan

VLAN ID。

integer(int32)

bandwidthRatio

带宽占比。

integer(int32)

ipv6

IPv6地址。

string

maskIpv6

IPv6子网前缀长度。

string

acceleMode

加速模式,取值范围:0(普通)、1(智能网卡)、11(DPDK)。默认值:0。

integer(int32)

engine

引擎类型,取值范围:ovs、linux。

string

isSmartNic

是否使用智能网卡,取值范围:true(是)、false(否)。

boolean

vxlanScope

是否被VXLAN域使用,取值范围:true(使用)、false(未使用)。实际未使用此字段,值总是为false。

boolean

enableSegConfig

是否启用微隔离防护,取值范围:true(启用),false(未启用)。

boolean

runingVmUseVSwitch

是否被虚拟机使用

boolean

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": {

"id": null,

"hostId": 0,

"bandwidth": null,

"name": "",

"description": null,

"portNum": 0,

"mode": 0,

"pnic": null,

"address": null,

"netmask": null,

"gateway": null,

"ipv6": null,

"netmaskIpv6": null,

"gatewayIpv6": null,

"enableLacp": true,

"bondMode": null,

"vlanId": null,

"isManage": null,

"status": null,

"clusterId": null,

"flag": null,

"enableDpdk": true,

"reselect": true,

"algorithm": null,

"vxlanScopeUseVSwitch": true,

"mtu": null,

"storageNodeSetted": null,

"networkType": null,

"multicast": true,

"internalPorts": [

{

"id": null,

"vswitchId": null,

"networkType": null,

"name": null,

"ip": null,

"mask": null,

"vlan": null,

"bandwidthRatio": null,

"ipv6": null,

"maskIpv6": null

}

],

"acceleMode": null,

"engine": null,

"isSmartNic": true,

"vxlanScope": true,

"enableSegConfig": true,

"runingVmUseVSwitch": true

}

}

2.10.20删除虚拟交换机

接口地址

DELETE  /NSphere/api/network-resource/vswitch/{vsId}

接口描述

根据虚拟交换机ID删除虚拟交换机

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

vsId

虚拟交换机ID

path

true

integer(int64)

响应状态

状态码

说明

schema

200

OK

ApiResponseString

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": null

}

2.10.21批量查询虚拟交换机信息

接口地址

GET  /NSphere/api/network-resource/vswitch/all

接口描述

根据指定的数据中心、集群或主机ID,查询主机下的虚拟交换机信息。多个参数只会有一个参数起作用,参数优先顺序:主机ID,集群ID,数据中心ID。若所有条件均未指定,则返回全量数据。E0930版本新增接口。

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

hpId

数据中心ID

query

false

string

clusterId

集群ID

query

false

string

hostId

主机ID

query

false

string

响应状态

状态码

说明

schema

200

OK

ApiResponseListApiHostVSwitchVO

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

array

ApiHostVSwitchVO

id

虚拟交换机ID

integer(int64)

hostId

虚拟交换机所在主机ID

integer(int64)

bandwidth

带宽(Kbps)。

integer(int64)

name

虚拟交换机名称

string

description

虚拟交换机描述。

string

portNum

虚拟交换机端口个数

integer(int32)

mode

转发模式,取值范围:0(VEB)、1(VEPA)、2(多通道)、3(VXLAN(SDN))、4(VXLAN(NSphere)),默认值:0。

integer(int32)

pnic

虚拟交换机使用的物理接口,默认值:null。可配置多个物理接口,多个物理接口之间用英文逗号分隔。在某些情况下必须配置物理接口,可根据返回的错误信息修改调整参数。

string

address

IPv4地址,默认值:null。注意:配置IP地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IP地址。

string

netmask

IPv4子网掩码,默认值:null。

string

gateway

IPv4网关,默认值:null。

string

ipv6

IPv6地址,默认值:null。注意:配置IPv6地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IPv6地址。

string

netmaskIpv6

IPv6子网前缀长度,默认值:null。

string

gatewayIpv6

IPv6网关,默认值:null。

string

enableLacp

是否启用LACP,取值范围:true(启用)、false(未启用),默认值:false。

boolean

bondMode

负载分担模式,取值范围:balance-tcp(高级)、balance-slb(基本)、active-backup(主备),默认null。

string

vlanId

虚拟交换机VLAN ID,取值范围:2-4094的整数,默认值:null。

integer(int32)

isManage

是否管理网卡:1 是;0 否

integer(int32)

status

虚拟交换机状态,取值范围:0(不活动)、1(活动)。

integer(int32)

clusterId

集群ID 当虚拟交换机增加方式为集群下增加时才有值。

integer(int64)

flag

虚拟交换机的增加方式,0:主机下增加。1:集群下增加

integer(int32)

enableDpdk

是否启用DPDK,取值范围:true(启用)、false(未启用),默认值:false。

boolean

reselect

是否故障恢复切换,取值范围:true(启用),false(未启用),默认值:false。

boolean

algorithm

主链路选择方式,取值范围: speed(速率优先)、order(手动配置),默认值:null。

string

vxlanScopeUseVSwitch

判读虚拟交换机是否被vxlan域使用

boolean

mtu

MTU,取值范围:IPv4地址的MTU值范围为1000-9000的整数,IPv6地址的MTU值范围为1280-9000的整数,默认值:1500。

integer(int32)

storageNodeSetted

是否已将交换机IP设置到本主机的acesure存储节点上,0 未设置,1 已设置

integer(int32)

networkType

虚拟交换机网络类型,用二进制的位表示,从低位到高位分别代表:0管理网络、1业务网络、2存储网络、3备份网络、4迁移网络、6引流网络、8镜像网络,对应位的值是1表示是当前网络类型。比如,2的二进制是10,表示网络类型是业务网络;3的二进制是11,表示网络类型是管理网络和业务网络。默认值:2。

integer(int32)

multicast

是否启用组播,取值范围:true(启用),false(未启用),默认值:false。

boolean

internalPorts

虚拟交换机子网返回实体类

array

ApiSubnetVO

id

子网ID。

integer(int64)

vswitchId

所属的虚拟交换机ID。

integer(int64)

networkType

网络类型,只支持存储网络(4)、备份网络(8)、迁移网络(16)及其混合使用。用二进制的位表示,对应位的值是1表示是当前网络类型。比如,4的二进制是100,表示网络类型是存储网络;12的二进制是1100,表示网络类型是存储网络和备份网络。

integer(int32)

name

子网名称。

string

ip

IPv4地址。

string

mask

IPv4子网掩码。

string

vlan

VLAN ID。

integer(int32)

bandwidthRatio

带宽占比。

integer(int32)

ipv6

IPv6地址。

string

maskIpv6

IPv6子网前缀长度。

string

acceleMode

加速模式,取值范围:0(普通)、1(智能网卡)、11(DPDK)。默认值:0。

integer(int32)

engine

引擎类型,取值范围:ovs、linux。

string

isSmartNic

是否使用智能网卡,取值范围:true(是)、false(否)。

boolean

vxlanScope

是否被VXLAN域使用,取值范围:true(使用)、false(未使用)。实际未使用此字段,值总是为false。

boolean

enableSegConfig

是否启用微隔离防护,取值范围:true(启用),false(未启用)。

boolean

hostName

虚拟交换机所在主机名称

string

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": [

{

"id": null,

"hostId": 0,

"bandwidth": null,

"name": "",

"description": null,

"portNum": 0,

"mode": 0,

"pnic": null,

"address": null,

"netmask": null,

"gateway": null,

"ipv6": null,

"netmaskIpv6": null,

"gatewayIpv6": null,

"enableLacp": true,

"bondMode": null,

"vlanId": null,

"isManage": null,

"status": null,

"clusterId": null,

"flag": null,

"enableDpdk": true,

"reselect": true,

"algorithm": null,

"vxlanScopeUseVSwitch": true,

"mtu": null,

"storageNodeSetted": null,

"networkType": null,

"multicast": true,

"internalPorts": [

{

"id": null,

"vswitchId": null,

"networkType": null,

"name": null,

"ip": null,

"mask": null,

"vlan": null,

"bandwidthRatio": null,

"ipv6": null,

"maskIpv6": null

}

],

"acceleMode": null,

"engine": null,

"isSmartNic": true,

"vxlanScope": true,

"enableSegConfig": true,

"hostName": null

}

]

}

2.10.22根据条件查询虚拟交换机

接口地址

GET  /NSphere/api/network-resource/vswitch/hosts

接口描述

根据条件查询虚拟交换机。优先级为hostId、clusterId、cvmIp。其中vsName在cvmIp不为空的时候才生效。

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

hostId

虚拟交换机所在主机ID

query

false

integer(int64)

clusterId

集群ID

query

false

integer(int64)

cvmIp

CVM IP

query

false

string

vsName

虚拟交换机名称

query

false

string

响应状态

状态码

说明

schema

200

OK

ApiResponseListApiVSwitchVO

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

array

ApiVSwitchVO

id

虚拟交换机ID

integer(int64)

hostId

虚拟交换机所在主机ID

integer(int64)

bandwidth

带宽(Kbps)。

integer(int64)

name

虚拟交换机名称

string

description

虚拟交换机描述。

string

portNum

虚拟交换机端口个数

integer(int32)

mode

转发模式,取值范围:0(VEB)、1(VEPA)、2(多通道)、3(VXLAN(SDN))、4(VXLAN(NSphere)),默认值:0。

integer(int32)

pnic

虚拟交换机使用的物理接口,默认值:null。可配置多个物理接口,多个物理接口之间用英文逗号分隔。在某些情况下必须配置物理接口,可根据返回的错误信息修改调整参数。

string

address

IPv4地址,默认值:null。注意:配置IP地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IP地址。

string

netmask

IPv4子网掩码,默认值:null。

string

gateway

IPv4网关,默认值:null。

string

ipv6

IPv6地址,默认值:null。注意:配置IPv6地址之后,集群下所有主机添加此虚拟交换机的时候都使用此IPv6地址。

string

netmaskIpv6

IPv6子网前缀长度,默认值:null。

string

gatewayIpv6

IPv6网关,默认值:null。

string

enableLacp

是否启用LACP,取值范围:true(启用)、false(未启用),默认值:false。

boolean

bondMode

负载分担模式,取值范围:balance-tcp(高级)、balance-slb(基本)、active-backup(主备),默认null。

string

vlanId

虚拟交换机VLAN ID,取值范围:2-4094的整数,默认值:null。

integer(int32)

isManage

是否管理网卡:1 是;0 否

integer(int32)

status

虚拟交换机状态,取值范围:0(不活动)、1(活动)。

integer(int32)

clusterId

集群ID 当虚拟交换机增加方式为集群下增加时才有值。

integer(int64)

flag

虚拟交换机的增加方式,0:主机下增加。1:集群下增加

integer(int32)

enableDpdk

是否启用DPDK,取值范围:true(启用)、false(未启用),默认值:false。

boolean

reselect

是否故障恢复切换,取值范围:true(启用),false(未启用),默认值:false。

boolean

algorithm

主链路选择方式,取值范围: speed(速率优先)、order(手动配置),默认值:null。

string

vxlanScopeUseVSwitch

判读虚拟交换机是否被vxlan域使用

boolean

mtu

MTU,取值范围:IPv4地址的MTU值范围为1000-9000的整数,IPv6地址的MTU值范围为1280-9000的整数,默认值:1500。

integer(int32)

storageNodeSetted

是否已将交换机IP设置到本主机的acesure存储节点上,0 未设置,1 已设置

integer(int32)

networkType

虚拟交换机网络类型,用二进制的位表示,从低位到高位分别代表:0管理网络、1业务网络、2存储网络、3备份网络、4迁移网络、6引流网络、8镜像网络,对应位的值是1表示是当前网络类型。比如,2的二进制是10,表示网络类型是业务网络;3的二进制是11,表示网络类型是管理网络和业务网络。默认值:2。

integer(int32)

multicast

是否启用组播,取值范围:true(启用),false(未启用),默认值:false。

boolean

internalPorts

虚拟交换机子网返回实体类

array

ApiSubnetVO

id

子网ID。

integer(int64)

vswitchId

所属的虚拟交换机ID。

integer(int64)

networkType

网络类型,只支持存储网络(4)、备份网络(8)、迁移网络(16)及其混合使用。用二进制的位表示,对应位的值是1表示是当前网络类型。比如,4的二进制是100,表示网络类型是存储网络;12的二进制是1100,表示网络类型是存储网络和备份网络。

integer(int32)

name

子网名称。

string

ip

IPv4地址。

string

mask

IPv4子网掩码。

string

vlan

VLAN ID。

integer(int32)

bandwidthRatio

带宽占比。

integer(int32)

ipv6

IPv6地址。

string

maskIpv6

IPv6子网前缀长度。

string

acceleMode

加速模式,取值范围:0(普通)、1(智能网卡)、11(DPDK)。默认值:0。

integer(int32)

engine

引擎类型,取值范围:ovs、linux。

string

isSmartNic

是否使用智能网卡,取值范围:true(是)、false(否)。

boolean

vxlanScope

是否被VXLAN域使用,取值范围:true(使用)、false(未使用)。实际未使用此字段,值总是为false。

boolean

enableSegConfig

是否启用微隔离防护,取值范围:true(启用),false(未启用)。

boolean

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": [

{

"id": null,

"hostId": 0,

"bandwidth": null,

"name": "",

"description": null,

"portNum": 0,

"mode": 0,

"pnic": null,

"address": null,

"netmask": null,

"gateway": null,

"ipv6": null,

"netmaskIpv6": null,

"gatewayIpv6": null,

"enableLacp": true,

"bondMode": null,

"vlanId": null,

"isManage": null,

"status": null,

"clusterId": null,

"flag": null,

"enableDpdk": true,

"reselect": true,

"algorithm": null,

"vxlanScopeUseVSwitch": true,

"mtu": null,

"storageNodeSetted": null,

"networkType": null,

"multicast": true,

"internalPorts": [

{

"id": null,

"vswitchId": null,

"networkType": null,

"name": null,

"ip": null,

"mask": null,

"vlan": null,

"bandwidthRatio": null,

"ipv6": null,

"maskIpv6": null

}

],

"acceleMode": null,

"engine": null,

"isSmartNic": true,

"vxlanScope": true,

"enableSegConfig": true

}

]

}

2.10.23根据主机ID和虚拟交换机ID查询端口流量

接口地址

GET  /NSphere/api/network-resource/vswitches/traffic

接口描述

根据主机ID和虚拟交换机ID查询端口流量。E0930版本接口新增返回属性。

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

hostId

虚拟交换机所在主机ID

query

true

integer(int64)

vsId

虚拟交换机ID

query

true

integer(int64)

响应状态

状态码

说明

schema

200

OK

ApiResponseListApiVPortTrafficInfoVO

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

array

ApiVPortTrafficInfoVO

vsName

虚拟交换机名称。

string

vportName

虚拟端口名称。

string

vmName

虚拟机名称。

string

title

虚拟机显示名称。

string

vmMac

虚拟机MAC地址

string

rxPkts

接收报文数。

integer(int64)

rxBytes

接收字节数。

integer(int64)

rxErrs

接收错包数。

integer(int64)

txPkts

发送报文数。

integer(int64)

txBytes

发送字节数。

integer(int64)

txErrs

发送错包数。

integer(int64)

hostId

主机ID。 E0930版本新增属性。

integer(int64)

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": [

{

"vsName": null,

"vportName": null,

"vmName": null,

"title": null,

"vmMac": null,

"rxPkts": null,

"rxBytes": null,

"rxErrs": null,

"txPkts": null,

"txBytes": null,

"txErrs": null,

"hostId": null

}

]

}

2.10.24根据hpId-clusterId-hostId批量查询虚拟交换机的端口流量

接口地址

GET  /NSphere/api/network-resource/vswitches/traffic/batch

接口描述

根据hpId/clusterId/hostId批量查询虚拟交换机的端口流量,不传默认查所有。若多个参数同时有值则按hostId→clusterId→hpId的优先级执行查询操作。E0930版本新增接口。

请求数据类型

application/x-www-form-urlencoded

响应数据类型

application/json

请求参数

参数名称

参数说明

请求类型

必须

数据类型

schema

hpId

数据中心ID

query

false

integer(int64)

clusterId

集群ID

query

false

integer(int64)

hostId

主机ID

query

false

integer(int64)

响应状态

状态码

说明

schema

200

OK

ApiResponseListApiVPortTrafficInfoVO

响应参数

参数名称

参数说明

类型

schema

state

状态码 0: 成功, 1: 失败, 2: 部分成功

integer(int32)

integer(int32)

errorCode

错误码 当不为0表示业务发生错误

integer(int32)

integer(int32)

successMessage

成功消息

string

failureMessage

错误消息,失败或者部分成功时有效.

string

data

响应数据,如果状态码为0表示正常的数据返回,如果非0且非空则代表引起异常的必要数据

array

ApiVPortTrafficInfoVO

vsName

虚拟交换机名称。

string

vportName

虚拟端口名称。

string

vmName

虚拟机名称。

string

title

虚拟机显示名称。

string

vmMac

虚拟机MAC地址

string

rxPkts

接收报文数。

integer(int64)

rxBytes

接收字节数。

integer(int64)

rxErrs

接收错包数。

integer(int64)

txPkts

发送报文数。

integer(int64)

txBytes

发送字节数。

integer(int64)

txErrs

发送错包数。

integer(int64)

hostId

主机ID。 E0930版本新增属性。

integer(int64)

响应示例

{

"state": 0,

"errorCode": 0,

"successMessage": null,

"failureMessage": null,

"data": [

{

"vsName": null,

"vportName": null,

"vmName": null,

"title": null,

"vmMac": null,

"rxPkts": null,

"rxBytes": null,

"rxErrs": null,

"txPkts": null,

"txBytes": null,

"txErrs": null,

"hostId": null

}

]

}