网络系列之 - CentOS多网卡bonding

为什么要多网卡bonding?

1. 将多网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。
2. 直接给两块网卡设置同一IP地址是不可以的,通过bonding,虚拟一个网卡对外提供链接,物理网卡的被修改为相同的MAC地址。

1 Bonding工作模式

共7种模式:0-6Mode

1. Mode0(balance-rr):轮询(Round-robin)策略,从头到尾顺序的在每一个slave接口上面发送数据包。本模式提供负载均衡和容错的能力。
2. Mode1(active-backup):活动-备份(主备)策略,只有一个slave被激活,当且仅当活动的salve接口失败时才会激活其他slave,为了避免交换机发生混乱此时绑定的MAC地址只有一个外部端口上可见。
3. Mode3(broadcast):广播策略,在所有的slave接口上传送所有的报文,提供容错能力

2 Bonding配置

帮助资料:

/usr/share/doc/kernel-doc-version/Documentation/networking/bonding.txt
https://www.kernel.org/doc/Documentation/networking/bonding.txt

创建bonding设备的配置文件:

[root@CentOS7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-bond0
NAME=bond0
TYPE=bond
DEVICE=bond0
BOOTPROTO=none
IPADDR=10.0.0.100
PREFIX=8
# miimon指定链路监测时间间隔。如果miimon=100,那么系统每100ms 监测一次链路连接状态,如果有一个条路不通就转入另一条线路
BONDING_OPTS="mode=1 miimon=100"

# 网卡eth0配置
[root@CentOS7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
NAME=eth0
DEVICE=eth0
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes

# 网卡eth1配置
[root@CentOS7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1
NAME=eth1
DEVICE=eth1
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
ONBOOT=yes

查看bond0状态:

[root@CentOS7 ~]# cat /proc/bonding/bond0

删除bond0:

[root@CentOS7 ~]# ifconfig bond0 down
[root@CentOS7 ~]# rmmod bonding

posted on 2021-08-04 09:23  hony625  阅读(259)  评论(0编辑  收藏  举报

导航