1 添加多张网卡(生产环境中有多个卡槽,可用ifconfig查看)
2 编辑两张虚拟机的网卡和物理机的连接方式,这里两张都使用NAT即可
3 打开虚拟机查看所有的网卡(网络接口),修改配置网卡配置文件。
[root@test1 network-scripts]# cat ifcfg-bond0
DEVICE=bond0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.102.131
NETMASK=255.255.255.0
[root@test1 network-scripts]# cat ifcfg-eth0
DEVICE=eth0
BOOTPROTO=static
ONBOOT=yes
MASTER=bond0
SLAVE=yes
TYPE=Ethernet
[root@test1 network-scripts]# cat ifcfg-eth1
DEVICE=eth1
BOOTPROTO=static
ONBOOT=yes
MASTER=bond0
SLAVE=yes
TYPE=Ethernet
重截图中可以看到有bond0,eth0和eth1三张网卡,但是实际上只有eth1,eth0这两张网卡。这两张网卡都是绑定在bond0这张虚拟网卡上的,对外看到的就只有一张bond0的网卡。
4 设置虚拟网卡别名和对虚拟网卡的操作/etc/modprobe.d/dist.conf
截图显示虚拟网卡别名为bond0,使用模式1,切换时间是100毫秒。
alias bond0 bonding
options bonding mode=1 miimon=100 fail_over_mac=1
参数解释:
Mode=1:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得,从外面看来,bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。此模式只提供了容错能力;由此可见此算法的优点是可以提供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有 N 个网络接口的情况下,资源利用率为1/N
miimon=100: 监视网络链接的频度,单位是毫秒
Fail_over_mac=1: 这个bond0获取mac地址有两种方式,一种是从第一个活跃网卡中获取mac地址,然后其余的SLAVE网卡的mac地址都使用该mac地址;另一种是使用fail_over_mac参数,是bond0使用当前活跃网卡的mac地址,mac地址或者活跃网卡的转换而变。
既然vmware workstation不支持第一种获取mac地址的方式,那么你可以使用fail_over_mac=1参数。真实环境中可以不这样做。
5加载模块(或重启)
[root@test1 ~]# modprobe bonding
6查看模块加载情况
lsmod | grep bonding
7 重启网络,确认绑定情况
#service network restart
#cat /proc/net/bonding/bond0
从截图中可以看出现在绑定在bond0上的网卡是eth0。
8 测试网卡容灾,关闭eth0。检测是否会自动切换到eth1
#ifdown eth0
#cat /proc/net/bonding/bond0
下面的截图可以看出网卡自动切换到eth1。丢包率为0,表明网卡冗余目标达成。
Ifconfig查看eth0网卡已经关闭。
Ifup eth0: 启动网卡,在使用ifconfig查看