zoukankan      html  css  js  c++  java
  • Centos7-bond模式介绍

    bond模式:

    Mode=0(balance-rr)表示负载分担round-robin
    Mode=1(active-backup)表示主备模式,只有一块网卡是active,另外一块是备的standby
    Mode=2(balance-xor)表示XOR Hash负载分担
    Mode=3(broadcast)表示所有包从所有接口发出,这个不均衡
    Mode=4(802.3ad)表示支持802.3ad协议,和交换机的聚合LACP方式配合
    Mode=5(balance-tlb)是根据每个slave的负载情况选择slave进行发送,接收时使用当前轮到的slave
    Mode=6(balance-alb)在5的tlb基础上增加了rlb。

    0、2、3理论上需要静态聚合方式;5和6不需要交换机端的设置,网卡能自动聚合;4需要支持802.3ad;
    但实测中0可以通过mac地址欺骗的方式在交换机不设置的情况下不太均衡地进行接收。

    常用的有三种

    mode=0:平衡负载模式,有自动备援,但需要交换机配合
    mode=1:自动备援模式,其中一条线若断线,其他线路将会自动备援
    mode=6:平衡负载模式,有自动备援,不需要交换机配合

    需要说明的是如果想做成mode 0的负载均衡,仅仅设置这里options bond0 miimon=100 mode=0是不够的,
    与网卡相连的交换机必须做特殊配置(这两个端口应该采取聚合方式),
    因为做bonding的这两块网卡是使用同一个MAC地址.从 原理分析一下(bond运行在mode 0下):
    mode 0下bond所绑定的网卡的IP都被修改成相同的mac地址,如果这些网卡都被接在同一个交换机,
    那么交换机的arp表里这个mac地址对应的端口就有 多 个,那么交换机接受到发往这个mac地址的包应该往哪个端口转发呢?
    正常情况下mac地址是全球唯一的,一个mac地址对应多个端口肯定使交换机迷惑了。所以 mode0下的bond如果连接到交换机,
    交换机这几个端口应该采取聚合方式(cisco称 为 ethernetchannel,foundry称为portgroup),因为交换机做了聚合后,
    聚合下的几个端口也被捆绑成一个mac地址。解决办法是:两个网卡接入不同的交换机即可。
    mode6模式下无需配置交换机,因为做bonding的这两块网卡是使用不同的MAC地址。

  • 相关阅读:
    java枚举常见用法
    redis初使用
    Linux上搭建svn资源库
    redis集群创建
    大数据学习之Hadoop运行模式
    集群时间同步
    ssh免密登录
    mvc项目问题清单以及解决方法
    Memcached分布式缓存初体验
    Asp.Net 一个请求的处理流程
  • 原文地址:https://www.cnblogs.com/kylingx/p/11623773.html
Copyright © 2011-2022 走看看