Create documentation for NIC bonding via REST API
We need step by step instruction for using nic bonding with fuel.
Blueprint information
- Status:
- Complete
- Approver:
- Mike Scherbakov
- Priority:
- High
- Drafter:
- None
- Direction:
- Approved
- Assignee:
- Andrey Danin
- Definition:
- Approved
- Series goal:
- Accepted for 4.0.x
- Implementation:
- Implemented
- Milestone target:
- 4.0
- Started by
- Andrey Danin
- Completed by
- Mike Scherbakov
Related branches
Related bugs
Sprints
Whiteboard
* User Story
- Deployment of Mirantis OpenStack with Neutron + VLAN segmentation on 2 physical NICs in bond without separate physical network interface for fw-admin network.
* Design
Currently we use a separate physical NIC for communication between Fuel master and slave nodes and IP from fw-admin network is assigned directly to the physical interface (e.g. eth0). If we want to use bonding interface, we will need to:
- Create a separate bridge (e.g. br-core)
- Crate a bond port from 2 or more interfaces in this bridge. At least one physical interface of this bond should be in the same L2 segment where admin node is located
- Assign IP from fw-admin subnet to this bridge
To separate traffic of other Mirantis OpenStack networks (management, external, storage) we will:
- Create a separate bridge for each network
- Assign IP to each OVS bridge from the appropriate subnet
- Connect each bridge with with the bridge that has bond port using OVS patch with VLAN tag.
Since private network should pass traffic from different tenants with different VLAN tags, we will connect "br-prv" with our "br-core" using OVS patch without VLAN tag, which will serve as trunk.
Here is the link to the visualization of the provided network scheme:
http://
* Implementation
Basically this doesn't require major changes in Mirantis OpenStack, but just a specific network configuration, that can be done via CLI mode only at the moment.
To deploy Mirantis OpenStack 3.2 using with the specified network configuration we need:
1. Modified Puppet provider for L2_ovs_bond custom type. Here is the link to the pull request:
https:/
2. Disable cobbler to control /etc/ethers file.
As workaround we can replace a body of "regen_ethers" method in "/usr/lib/
Here is a example of "network_scheme" section in the node configuration:
.....
.....
"network_
{
},
{
},
{
},
{
},
{
},
{
},
{
],
]
},
{
],
]
},
{
],
]
},
{
]
}
],
"roles": {
"ex": "br-ex",
},
"eth0": {},
"eth1": {}
},
"version": "1.0",
"provider": "ovs",
"eth0": {
},
"eth1": {
},
},
]
},
],
},
]
},
]
}
}
},
.....
.....
Gerrit topic: https:/
Addressed by: https:/
Add info about NIC bonding using OVS