Network Bonding With CloudStack and Linux KVM

If you had 3xQuad port network controllers having a total of 12 usable ports, your network bonding+bridging could look as below:

KVM Bonding

On CentOS/RedHat, the network settings would be as below:

ifcfg-ethN

DEVICE=ethN
ONBOOT=yes
HOTPLUG=no
BOOTPROTO=none
TYPE=Ethernet
MASTER=bondN
SLAVE=yes
NM_CONTROLLED=no

ifcfg-bondN

DEVICE=bondN
ONBOOT=yes
BOOTPROTO=none
USERCTL=no
NM_CONTROLLED=no
TYPE=Ethernet
BRIDGE=cloudbrN
BONDING_OPTS="mode=4 miimon=100"

ifcfg-cloudbrN

DEVICE=cloudbrN
TYPE=Bridge
ONBOOT=yes
STP=yes
BOOTPROTO=static
USERCTL=no
NM_CONTROLLED=no
DELAY=0
# XXX: IP Address assignments are required only for Management and
# Storage traffic. Guest/Public bridges don't have IP Assignments
IPADDR=${ipaddress}
PREFIX=${prefix}
GATEWAY=${gateway}

Depending on your requirements and switch support, you could change bonding mode to better suit your requirements. Please refer RedHat Manual for available options.

Shanker Balan

Shanker Balan is a devops and infrastructure freelancer with over 14 years of industry experience in large scale Internet systems. He is available for both short term and long term projects on contract. Please use the Contact Form for any enquiry.

More Posts - Website

Follow Me:
TwitterLinkedIn

Leave a Reply