Chinaunix首页 | 论坛 | 博客
  • 博客访问: 282358
  • 博文数量: 28
  • 博客积分: 690
  • 博客等级: 上士
  • 技术积分: 860
  • 用 户 组: 普通用户
  • 注册时间: 2011-11-24 13:52
文章分类

全部博文(28)

文章存档

2012年(28)

分类: 系统运维

2012-06-10 16:11:03

Bonding 配置

 

bonding:将多个物理网卡聚合成一个虚拟网卡,这样可以增加流量,增大负载。

 

bonding三个工作模式:

0:负载均衡。默认是轮询模式。

1:主机-备机模式。

3:广播-容错,所有的包通过所有的slave口接受广播

 

 

配置bonding

vi /etc/modprobe.d/bonding.conf

alias bond0 bonding

options bond0 =100ms毫秒) mode=0bonding工作模式)

miimon=100:系统每100ms监测一次链路状态。

alias bond1 bonding

options bond1 miimon=100 mode=0

alias bond2 bonding

options bond2 miimon=100 mode=1

 

加载bonding模块

depmod

modprobe bonding

lsmod  | grep bonding

bonding               107911  0

 

现在添加4块网卡,2块聚合bond02块聚合bond1,最后bond0bond1聚合成bond2

每个物理网卡都这样配

vi ifcfg-ethX

DEVICE="eth1" #是什么设备就写什么

NM_CONTROLLED="no"

ONBOOT=yes

BOOTPROTO=none

SLAVE=yes

MASTER=bond0 #eth1eth2bond0;eth3eth4bond1

 

ifcfg-bond0ifcfg-bond1都按如下方式写

vi ifcfg-bond0

DEVICE="bond0" #是什么设备就写什么

NM_CONTROLLED="no"

ONBOOT="yes"

BOOTPROTO=static

SLAVE=yes

MASTER=bond2

 

按照上面方法配完以后,我写了一个脚本便于查看bonding启动状态的

#!/bin/bash

choice="$1"

case "$choice" in

        start)   #由于在重启网络的时候可能会出现网卡没有起来,所以最好手动起一遍

                /etc/init.d/network restart

                ifup eth1

                ifup eth2

                ifup eth3

                ifup eth4

                ;;

        stop)

                ifdown eth1

                ifdown eth2

                ifdown eth3

                ifdown eth4

                ;;

        status)  #bonding状态的文件可以在/proc/net/bonding/sys/class/net下进行查看

                /etc/init.d/network status

                echo -e "\n######################This is bond0:#################"

                cat /proc/net/bonding/bond0

                echo -e "\n####################This is bond1:###################"

                cat /proc/net/bonding/bond1

                echo -e "\n##########This is bond2:#############################"

                cat /proc/net/bonding/bond2

                ;;

        *)

                echo "Usage:{start|stop|status}"

                ;;

esac

 

测试:

sar -n DEV 2 1000

可以查看每个网口数据流量的

当把eth1eth2关闭的时候bond2正常运行。

 

阅读(6849) | 评论(0) | 转发(0) |
0

上一篇:Nginx+tomcat静态分离

下一篇:防止SSH攻击

给主人留下些什么吧!~~