kvm+bond+bridge 实现多网卡的网桥搭建

针对多网卡的kvm网桥设置

问题背景: 需要双网卡进行bonding,又存在kvm虚拟机,需要配置网桥。所以需要将bonding 和 bridge结合。

解决思路: 先将双网卡绑定在同一个bond下,再将bond与bridge相连接。

环境情况

os: centos 7.4

网卡数: 2 ens33 ens37

bond: bond0

网桥: br0

配置网桥

cd /etc/sysconfig/network-scripts
vi ifcfg-br0

TYPE=Bridge
BOOTPROTO=static
NAME=br0
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.1.193
GATEWAY=192.168.0.2
NETMASK=255.255.0.0

配置bond捆绑

cd /etc/sysconfig/network-scripts
vi ifcfg-bond

DEVICE=bond0
NAME=bond0
TYPE=Bond
USERCTL=no
BOOTPROTO=none
ONBOOT=yes
BONDING_MASTER=yes
BONDING_OPTS="mode=6 miimon=100" 
BRIDGE=br0

参数解释

miimon 是用作链路监控的,单位为毫秒,这里设置为100ms,也就是说,系统将每100ms检测一次链路的连接状态,如果有一条线路不通,就会转接至另一条线路。

模式使用情况常用的主要是用的 0,1,6

mode=0 是平衡抡循环策略,传输数据包的策略是依次传输,比如第一个包走的是eth0,第二个就走eth1,然后进行循环,知道数据包传输完毕。提供容错和负载平衡。但是存在一个问题,就是当数据包从不同的接口发出时,中途会经过不同的链路,所以很有可能在客户端出现数据包无序到达的问题,而无序的数据包需要被要求重新发送,此时网络的吞吐量就会随之下降。

mode=1 是主-备份策略,只会有一个设备处于活动状态,当一个宕掉后,另一个会马上转变为主设备继续工作,bond的mac地址是唯一的,防止交换机发生混乱,此模式只提供容错。主要优点是提高了网络链接的可用性,但是缺点也很明显,就是资源利用率低,存在N个设备的话,资源的利用率仅仅为1/N。

mode=6 是适配器适应性负载均衡模式,两个网卡都进行工作,该模式下无需对交换机进行配置,此时两张网卡的MAC地址是不同的。此模式下的网络分配是不均匀的,先会把eth0占满,然后再占用eth1,eth2以此类推。所以情况就是在mode6情况下,会出现一个口占用率很高,而其他口占用率很低的情况。

配置网卡

两张网卡除了DEVICE不同,其他的配置一致。主要是将网卡绑定在同一个bond下。

vi ifcfg-ens33

DEVICE=ens33
USERCTL=no
ONBOOT=yes
MASTER=bond0
SLAVE=yes
BOOTPROTO=none

你可能感兴趣的:(kvm+bond+bridge 实现多网卡的网桥搭建)