[Linux]双网卡绑定高可用说明

       Linux 双网卡绑定高可用说明

  1. 目标

为了提供网络的高可用性,我们可能需要将多块网卡绑定成一块虚拟网卡对外提供服务,这样即使其中的一块物理网卡出现故障,也不会导致连接中断。多网卡绑定这个词在不同的平台有不同叫法,在Linux下叫bonding,IBM称为etherchanel,broadcom叫team,但是名字怎么变,效果都是将两块或更多的网卡当做一块网卡使用,在增加带宽的同时也可以提高冗余性。比如我们在RHEL6下可以将eth0和eth1绑定成虚拟网卡bond0。

网卡配置文件说明:

# cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0                     # 设备名

BOOTPROTO=none                #设置为none禁止DHCP,设置为static启用静态IP地址,设置为dhcp开启DHCP服务 

IPADDR=192.168.0.21              # IP地址

NETMASK=255.255.255.0          #子网掩码

HWADDR=00:0C:29:CE:D9:79      # 网卡MAC地址

ONBOOT=yes                    # 是否开机启动

GATEWAY=192.168.0.1            #网关

TYPE=Ethernet                    #网络类型为:Ethernet  默认 以太网

# USERCTL=no                        #是否允许非root用户控制该设备,设置为no,只能用root用户更改 yes --非root用户可以控制该设备。

# IPV6INIT=no                               #禁止IPV6

# PEERDNS=yes                          #自动DNS

  1. 操作步骤
    1. 添加虚拟网卡

添加虚拟网卡bond0

vi /etc/sysconfig/network-scripts/ifcfg-bond0

DEVICE=bond0

BOOTPROTO=static

ONBOOT=yes

IPADDR=192.168.10.200

NETMASK=255.255.255.0

GATEWAY=192.168.10.1

    1. 配置本地网卡信息

1、配置eth0网卡信息

vi /etc/sysconfig/network-scripts/ifcfg-eth0

 DEVICE="eth0"

 TYPE=Ethernet

 BOOTPROTO=static

 ONBOOT="yes"

 MASTER=bond0

 SLAVE=yes 

 

2、配置eth1网卡信息

vi /etc/sysconfig/network-scripts/ifcfg-eth1

DEVICE="eth1"

TYPE=Ethernet

BOOTPROTO=static

ONBOOT="yes"

MASTER=bond0

SLAVE=yes  

    1. 模块加载

1、vi /etc/modprobe.d/dist.conf

alias bond0 bonding                #添加 bond0 的驱动模块                                                            

options bond0 miimon=100 mode=0   #每100毫秒监控。                                                              

[root@mq02 ~]# modprobe  bonding               #加载模块                                      

[root@mq02 ~]# lsmod  |grep bonding            #显示模块信息                                                

   bonding               127060  0

   8021q                  25058  1 bonding

   ipv6                  322541  147 bonding

miimon是指多久时间要检查网络一次,单位是ms(毫秒)这边的100,是100ms,即是0.1秒

mode共有七种(0~6),这里解释两个常用的选项。

mode=0:表示load balancing (round-robin)为负载均衡方式,两块网卡都工作。

mode=1:表示fault-tolerance (active-backup) 自动主备模式,其中一块网卡在工作(若eth0断掉),则自动切换到另一个块网卡(eth1做备份)。

    1. 重启网络服务,使配置生效

[root@mq02 ~]# service network restart

[root@mq02 ~]# cat /proc/net/bonding/bond0  可以看到当前网卡处于负载均衡模式

    1. 测试

1、当网卡处于负载均衡模式时,停掉其中一块网卡eth1时,网络还能继续通信。

[root@mq02 ~]# ifdown eth1

可以看到网络还可以继续ping通。

2、当网卡处于fault-tolerance (active-backup) 自动主备模式时,即mode=1时,停掉其中一块网卡时,不会出现网络中断,系统会按照/etc/rc.d/rc.local指定网卡的顺序工作,机器仍能对外服务,起到了失效保护的功能。

[root@mq02 ~]# vi /etc/rc.d/rc.local

ifenslave bond0 eth0 eth1

[root@mq02 ~]# vi /etc/host.conf

order hosts,bind   #指定网卡的顺序

下面可以看到网卡处于fault-tolerance (active-backup) 自动主备模式,当前Active的网卡为eth0

 

停掉网卡eth0时,网卡切换到eth1,当前Active的网卡为eth1。

继续把eth0 up起来,可以看到下面eth0的状态是up的。

[root@mq02 ~]# ifup eth0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值