为了提供网络的高可用我们须要将多块网卡绑定设置成一块虚拟的网卡对外提供服务,这样能够防止一块网卡损坏或者防止网线连接故障造成的连接中断。
以下我们使用eth0与eth1来虚拟成为bond0为例:------绑定的前提条件:芯片组型号同样,并且网卡应该具备自己独立的BIOS芯片.
操作平台:OLE Linux 6.6
1、创建虚拟网络接口配置文件ifcfg-bond0,并指定网卡IP:vi /etc/sysconfig/ network-scripts/ifcfg-bond0
cat /etc/sysconfig/network-scripts/ifcfg-bond0
DEVICE=bond0
BOOTPROTO=static
IPADDR=10.0.11.10
NETMASK=255.255.252.0
GATWAY=10.0.11.1
ONBOOT=yes
USERCTL=no
TYPE=Ethernet
2、分别改动ifcfg-eth0和ifcfg-eth1-----不能设置有关IP,网关。子网掩码等信息。
cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
USERCTL=no
MASTER=bond0
SLAVE=yes
TYPE=Ethernet
cat /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
BOOTPROTO=dhcp
ONBOOT=yes
USERCTL=no
MASTER=bond0
SLAVE=yes
TYPE=Ethernet
3、由于虚拟网卡实在内核模块中实现的,所以须要安装有module,在 /etc/modules.conf中加入例如以下内容。以使系统在启动时载入bonding模块,对外虚拟网络接口设备为 bond0。增加下列两行
alias bond0 bonding
options bond0 miimon=100 mode=0 --- 0表示两块物理网卡是以负载均衡的方式执行。
注:miimon是用来进行链路监測的。比方:miimon=100,那么系统每100ms监測一次链路连接状态。假设有一条线路不通就转入还有一条线路;mode的值表示工作模式,他共同拥有0,1,2,3四种模式,经常使用的为0,1两种。
mode=0表示load balancing (round-robin)为负载均衡方式。两块网卡都处于active状态。
mode=1表示fault-tolerance (active-backup)提供冗余功能。就是说默认情况下仅仅有一块网卡处于active,还有一块做备份.
假设採用此模式则:options bond0 miimon=100 mode=1 primary=eth0---表示eth0为active状态。eth1为备用状态。
bonding仅仅能提供链路监測,即从主机到交换机的链路是否接通。假设仅仅是交换机对外的链路down掉了,而交换机本身并没有故障,那么bonding会觉得链路没有问题而继续使用
cat /etc/rc.local
modprobe bonding miimon=100 mode=0
配置完毕重新启动主机.
Bringing up interface bond0 OK
Bringing up interface eth0 OK
Bringing up interface eth1 OK