|Summary:||[RFE] Document Proper Usage of Linux Bonds Intead of OVS Bonds|
|Product:||Red Hat OpenStack||Reporter:||Dan Sneddon <dsneddon>|
|Component:||documentation||Assignee:||Dan Macpherson <dmacpher>|
|Status:||CLOSED CURRENTRELEASE||QA Contact:||RHOS Documentation Team <rhos-docs>|
|Version:||8.0 (Liberty)||CC:||ahirshbe, dbecker, dmacpher, dsneddon, mburns, mcornea, morazi, rhel-osp-director-maint, srevivo|
|Target Milestone:||---||Keywords:||Documentation, FutureFeature|
|Fixed In Version:||Doc Type:||Enhancement|
|Doc Text:||Story Points:||---|
|Last Closed:||2016-06-10 01:57:33 UTC||Type:||Bug|
|oVirt Team:||---||RHEL 7.3 requirements from Atomic Host:|
|Cloudforms Team:||---||Target Upstream Version:|
Description Dan Sneddon 2016-04-20 22:42:26 UTC
Description of problem: The original design goal behind using OVS as the bonding mechanism in TripleO was simplicity: since OVS was being used for bridging, adding bonding support directly to the OVS bridge made sense. Unfortunately, in a few large-scale deployments with high traffic, packet loss has been observed in OVS bonds using LACP. To counteract this behavior, support was added to TripleO to support Linux kernel-mode bonds, which are not susceptible to packet loss at scale. When using OVS bonds, an OVS bridge is required. This necessitated the use of a bridge even on the storage nodes, where this wouldn't be required if using kernel bonds. Now that we have the option of using kernel-mode bonds, we recommend this in most cases, unless an OVS-specific bonding mode is required (although different packet loss issues have occurred when using balance-slb mode bonds, see https://bugzilla.redhat.com/show_bug.cgi?id=1289962). Actual results: The sample bonding templates included with OSP 8 are configured for OVS bonds. Expected results: The proper use of Linux bonds should be properly documented, and we should provide equivalent sample templates that show the optimum use of Linux bonds. Additional info: The following applies when using Linux bonds instead of OVS bonds: * Bond interfaces use "linux_bond" instead of "ovs_bond" for the type: * Templates use "bonding_options" instead of "ovs_options" for the bond options * Linux kernel bonding options have a different form, such as "mode=802.3ad" to indicate LACP bonding. For more info, see https://www.kernel.org/doc/Documentation/networking/bonding.txt * Bridges must still be used for interfaces used for Neutron tenant or provider VLANs, or for SNAT/Floating IPs, whether or not bonding is used on a particular interface. These bridges can be OVS bridges or Linux bridges, but OVS bridges provide more features.
Comment 2 Dan Sneddon 2016-04-20 22:42:45 UTC
*** Bug 1310982 has been marked as a duplicate of this bug. ***
Comment 3 Dan Macpherson 2016-04-29 06:04:11 UTC
Hi Dan, I updated the network iso section to include linux_bridge and linux_bond options: https://access.redhat.com/documentation/en/red-hat-openstack-platform/8/director-installation-and-usage/62-isolating-networks I've also included links to the kernel bond params in Red Hat Enterprise Linux 7 Networking Guide. Was this what you were after? Let me know if there's anything else I should add.
Comment 4 Dan Macpherson 2016-06-10 01:57:33 UTC
No response in over a month. Closing this BZ. However, if further changes are required, please feel free to reopen this BZ.