关联issue
评审背景
背景
BMC后续规划需要支持框式设备形态的硬件管理,在框式设备中在网络管理方面,需要支持以下功能:
- 多个管理网络平面,每个平面均有外出管理网口
- 多个外出管理网口,每个网口均需要支持IPv4/IPv6以及Vlan
- 管理网口上配置浮动IP,并且支持使能和去使能
现状分析
当前BMC的网口管理中只能管理一个网口对象,也就是仅支持一个外出网口,
方案
扩展资源协作接口 EthGroup
类的属性和方法,后续新增网口通过配置 EthGroup
类的实例化对象来进行扩展。
评审点
基于以上方案,EthGroup
类的属性和方法需要具备外出网口的所有管理能力,因此需要增加以下接口(包括属性和方法):
EthGroup下新增下列属性:
path: /bmc/kepler/Managers/${ManagerId}/EthernetInterfaces/EthGroup/${Id}
interface: bmc.kepler.Managers.EthernetInterfaces.EthGroup
新增属性1:IpMode
项 | 取值 |
---|---|
属性名称 | IpMode |
属性类型 | string |
读写方式 | rw |
是否持久化 | 掉电持久化 |
属性值来源 | CSR配置 |
属性说明 | IP地址来源模式,取值有:DHCP(自动获取),Static(手动配置) |
新增属性2:BackupIpAddr
项 | 取值 |
---|---|
属性名称 | BackupIpAddr |
属性类型 | string |
读写方式 | rw |
是否持久化 | 掉电持久化 |
属性值来源 | CSR配置 |
属性说明 | 备份IP地址 |
新增属性3:BackupSubnetMask
项 | 取值 |
---|---|
属性名称 | BackupSubnetMask |
属性类型 | string |
读写方式 | rw |
是否持久化 | 掉电持久化 |
属性值来源 | CSR配置 |
属性说明 | 备份子网掩码 |
新增属性4:DefaultGateway
项 | 取值 |
---|---|
属性名称 | DefaultGateway |
属性类型 | string |
读写方式 | ro |
是否持久化 | 掉电持久化 |
属性值来源 | CSR配置 |
属性说明 | 默认网关 |
新增属性5:Ipv6Mode
项 | 取值 |
---|---|
属性名称 | Ipv6Mode |
属性类型 | string |
读写方式 | rw |
是否持久化 | 掉电持久化 |
属性值来源 | CSR配置 |
属性说明 | IPv6地址来源模式,取值有:DHCPv6(自动获取),Static(手动配置) |
新增属性6:Ipv6Addr
项 | 取值 |
---|---|
属性名称 | Ipv6Addr |
属性类型 | string |
读写方式 | ro |
是否持久化 | 掉电持久化 |
属性值来源 | CSR配置 |
属性说明 | IPv6地址 |
新增属性7:PrefixLength
项 | 取值 |
---|---|
属性名称 | PrefixLength |
属性类型 | string |
读写方式 | ro |
是否持久化 | 掉电持久化 |
属性值来源 | CSR配置 |
属性说明 | IPv6前缀长度 |
新增属性8: Ipv6DefaultGateway
项 | 取值 |
---|---|
属性名称 | Ipv6DefaultGateway |
属性类型 | string |
读写方式 | ro |
是否持久化 | 掉电持久化 |
属性值来源 | CSR配置 |
属性说明 | IPv6默认网关 |
新增方法1:
项 | 取值 |
---|---|
方法名称 | SetDefaultGateway |
请求签名 | s |
请求参数 | DefaultGateway :设置的IPv4默认网关 |
响应签名 | |
响应参数 | |
接口说明 | 设置网口的IPv4默认网关码 |
新增方法2:
项 | 取值 |
---|---|
方法名称 | SetIpMaskGateway |
请求签名 | sss |
请求参数 | IpAddr:设置的IPv4地址 SubnetMask:设置的子网掩码 DefaultGateway :设置的IPv4默认网关 |
响应签名 | s |
响应参数 | IpAddr :设置后的ipv4地址 |
接口说明 | 设置网口的IPv4地址和子网掩码以及默认网关 |
新增方法3:
项 | 取值 |
---|---|
方法名称 | SetIpv6IpAddr |
请求签名 | ss |
请求参数 | IpAddr:设置的IPv6地址 PrefixLength:设置的前缀长度 |
响应签名 | |
响应参数 | |
接口说明 | 设置网口的IPv6地址和前缀长度 |
新增方法4:
项 | 取值 |
---|---|
方法名称 | SetIpv6DefaultGateway |
请求签名 | s |
请求参数 | DefaultGateway :设置的IPv6默认网关 |
响应签名 | |
响应参数 | |
接口说明 | 设置网口的IPv6地址默认网关 |
新增方法5:
项 | 取值 |
---|---|
方法名称 | SetIpv6PrefixGateway |
请求签名 | sss |
请求参数 | IpAddr:设置的IPv6地址 PrefixLength:设置的前缀长度 DefaultGateway :设置的IPv6默认网关 |
响应签名 | s |
响应参数 | IpAddr :设置后的ipv6地址 |
接口说明 | 设置网口的IPv6地址和前缀长以及网关 |
新增方法6:
项 | 取值 |
---|---|
方法名称 | EnableFloatIp |
请求签名 | b |
请求参数 | Enabled:浮动IP使能状态,取值如下: true - 使能 false - 去使能 |
响应签名 | b |
响应参数 | Result:设置结果,取值如下: true - 设置成功 false - 设置失败 |
接口说明 | 使能浮动IP |
评审结论
1、同意在接口bmc.kepler.Managers.EthernetInterfaces.EthGroup下新增下列属性:
- IpMode
- BackupIpAddr
- BackupSubnetMask
- DefaultGateway
- Ipv6Mode
- Ipv6Addr
- PrefixLength
- Ipv6DefaultGateway
2、同意在接口bmc.kepler.Managers.EthernetInterfaces.EthGroup下新增下列方法:
- SetIpAddr
- SetDefaultGateway
- SetIpMaskGateway
- SetIpv6IpAddr
- SetIpv6DefaultGateway
- SetIpv6PrefixGateway
- EnableFloatIp