ITPub博客

首页 > Linux操作系统 > Linux操作系统 > VM ESXi 环境虚拟机LINUX-网卡Bond

VM ESXi 环境虚拟机LINUX-网卡Bond

原创 Linux操作系统 作者:hnliuxz 时间:2012-09-01 11:03:14 0 删除 编辑
      本篇文档借助了acooly的博客的文章,网址是http://acooly.iteye.com/blog/1290284,因本次环境是在虚机中为了实现“oracle 11g+RAC+ASM+openfiler+Multipath实现LUN设备名称的持久化”这个目标的测试环境的搭建而做。特在此记录下来。也感谢acooly博主的资料的帮助。

     网卡bond是通过把多张网卡绑定为一个逻辑网卡,实现本地网卡的冗余,带宽扩容和负载均衡。在应用部署中是一种常用的技术,我们DBA常遇到的环境中,基本所有的项目相关服务器都做了bond,这里总结整理,以便待查。
bond模式简要介绍:

  1. Mode=0(balance-rr) 表示负载分担round-robin,和交换机的聚合强制不协商的方式配合。
  2. Mode=1(active-backup) 表示主备模式,只有一块网卡是active,另外一块是备的standby,这时如果交换机配的是捆绑,将不能正常工作,因为交换机往两块网卡发包,有一半包是丢弃的。
  3. Mode=2(balance-xor) 表示XOR Hash负载分担,和交换机的聚合强制不协商方式配合。(需要xmit_hash_policy)
  4. Mode=3(broadcast) 表示所有包从所有interface发出,这个不均衡,只有冗余机制...和交换机的聚合强制不协商方式配合。
  5. Mode=4(802.3ad) 表示支持802.3ad协议,和交换机的聚合LACP方式配合(需要xmit_hash_policy)
  6. Mode=5(balance-tlb) 是根据每个slave的负载情况选择slave进行发送,接收时使用当前轮到的slave
  7. Mode=6(balance-alb) 在5的tlb基础上增加了rlb。
5和6不需要交换机端的设置,网卡能自动聚合。4需要支持802.3ad。0,2和3理论上需要静态聚合方式,但实测中0可以通过mac地址欺骗的方式在交换机不设置的情况下不太均衡地进行接收。

以上信息来自网络整理,不是所有的都明白。目前我们常用的主要是1(主备冗余)和6(与交换机无关的负载均衡)
  
本文以虚拟机安装的两台REDHAT AS 5.5为环境进行说明。
规划如下:
   eth0 和eth1做bond, 设置为bond0, 配置IP地址为:192.168.1.52
   eth2 和eth3做bond, 设置为bond1, 配置IP地址为:10.10.10.52
 
在192.168.1.52服务器上做如下操作

1.创建bond0配置文件

  1. # vi /etc/sysconfig/network-scripts/ifcfg-bond0  

 添加内容

DEVICE=bond0 
IPADDR=192.168.1.52

NETWORK=192.168.1.0 

NETMASK=255.255.255.0 

USERCTL=no 

BOOTPROTO=none 

ONBOOT=yes  

 你需要修改上面的IPADDR,NETWORK,NETMASK为你自己的环境配置

2.修改eth0和eth1配置文件
注意:这里是虚拟机上配置,所以可以很方便的添加多块网卡。

使用vi修改eth0配置文件
  1. # vi /etc/sysconfig/network-scripts/ifcfg-eth0 

添加或替换内容:

DEVICE=eth0 
USERCTL=no 

ONBOOT=yes 

MASTER=bond0 

SLAVE=yes 

BOOTPROTO=none  


使用vi修改eth1配置文件

  1. # vi /etc/sysconfig/network-scripts/ifcfg-eth1 

添加或替换内容:

DEVICE=eth1 
USERCTL=no 

ONBOOT=yes 

MASTER=bond0 

SLAVE=yes 

BOOTPROTO=none 


保存并退出

3.加载bond驱动
通过修改内核模块配置文件modprobe.conf加载bond驱动。

# vi /etc/modprobe.conf
添加下面的两行内容:
alias bond0 bonding 

options bond0 mode=6 miimon=100
alias bond1 bonding 
options bond1 mode=6 miimon=100
注意:这里使用的是模式6,负载均衡模式;网卡检查时间100ms

4.测试配置
首先,加载bond module:

  1. # modprobe bonding  

然后,重新启动网络服务

  1. # service network restart 

    查看内核中bond状态
    cat /proc/net/bonding/bond0
  2. 查看所有网络配置
    # ifconfig





来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/759027/viewspace-742416/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-11-04

  • 博文量
    27
  • 访问量
    109438