美文网首页运维
Centos7 网卡绑定(链路聚合)

Centos7 网卡绑定(链路聚合)

作者: 运维开发_西瓜甜 | 来源:发表于2018-12-01 07:13 被阅读61次

    链路聚合 多网卡 bonding

    内核参数调优

    • net.ipv4.tcp_low_latency=1 优化反应速度,低延时,用户的感受度好
    • net.ipv4.tcp_low_latency=0 优化吞吐量(default) , RHEL6就是面向高吞吐设计的

    1. 创建bonding 网卡设备 bond0

    [root@ansible network-scripts]$ sudo cat ifcfg-bond0 
    DEVICE=bond0
    TYPE=Ethernet  
    ONBOOT=yes     # 启动网络服务自动激活
    NM_CONTROLLED=no
    BOOTPROTO=none # 此选项是设置IP地址为静态 ,设置为 staitc 也行
    IPADDR=192.168.56.130
    PREFIX=24      # 24 位掩码
    IPV6INIT=no
    USERCTL=no
    GATEWAY=192.168.56.2  # 自己的网关地址
    

    2. 备份并修改原来网卡的配置

    [root@ansible network-scripts]$ sudo cp ifcfg-eth0{,.bak}
    [root@ansible network-scripts]$ sudo ls ifcfg-*
    ifcfg-bond0  ifcfg-eth0  ifcfg-eth0.bak  ifcfg-eth1  ifcfg-lo
    [root@ansible network-scripts]$ sudo cp ifcfg-eth1{,.bak}
    [root@ansible network-scripts]$ sudo vi ifcfg-eth0
    [root@ansible network-scripts]$ sudo cat ifcfg-eth0
    DEVICE=eth0
    TYPE=Ethernet
    ONBOOT=yes
    NM_CONTROLLED=no
    BOOTPROTO=none
    USERCTL=no
    MASTER=bond0
    SLAVE=yes
    [root@ansible network-scripts]$ sudo cat ifcfg-eth0 > ifcfg-eth1
    [root@ansible network-scripts]$ sudo sed -ir 's/eth0/eth1/g' ifcfg-eth1
    [root@ansible network-scripts]$ sudo cat ifcfg-eth1
    DEVICE=eth1
    TYPE=Ethernet
    ONBOOT=yes
    NM_CONTROLLED=no
    BOOTPROTO=none
    USERCTL=no
    MASTER=bond0
    SLAVE=yes
    

    3. 重启网络服务

    [root@ansible network-scripts]$ sudo service network restart
    

    查看详情

    [root@ansible network-scripts]$ sudo cat /proc/net/bonding/bond0 
    Ethernet Channel Bonding Driver: v3.6.0 (September 26, 2009)
    
    Bonding Mode: load balancing (round-robin)
    MII Status: up
    MII Polling Interval (ms): 100
    Up Delay (ms): 0
    Down Delay (ms): 0
    
    Slave Interface: eth0
    MII Status: up
    Speed: 1000 Mbps
    Duplex: full
    Link Failure Count: 0
    Permanent HW addr: 00:0c:29:99:78:8a
    Slave queue ID: 0
    
    Slave Interface: eth1
    MII Status: up
    Speed: 1000 Mbps
    Duplex: full
    Link Failure Count: 0
    Permanent HW addr: 00:0c:29:99:78:94
    Slave queue ID: 0
    

    必要时修改一下bonding 的参数

    linux系统下bond mode参数说明:

    mode=4 在交换机支持LACP时推荐使用,其能提供更好的性能和稳定性

    • mode=0
      轮询模式,所绑定的网卡会针对访问以轮询算法进行平分。
    • mode=1
      高可用模式,运行时只使用一个网卡,其余网卡作为备份,在负载不超过单块网卡带宽或压力时建议使用。

    • mode=2

      基于HASH算法的负载均衡模式,网卡的分流按照xmit_hash_policy的TCP协议层设置来进行HASH计算分流,使各种不同处理来源的访问都尽量在同一个网卡上进行处理。

    • mode=3
      广播模式,所有被绑定的网卡都将得到相同的数据,一般用于十分特殊的网络需求,如需要对两个互相没有连接的交换机发送相同的数据。

    • mode=4

      802.3ab负载均衡模式,要求交换机也支持802.3ab模式,理论上服务器及交换机都支持此模式时,网卡带宽最高可以翻倍(如从1Gbps翻到2Gbps)

    • mode=5

      适配器输出负载均衡模式,输出的数据会通过所有被绑定的网卡输出,接收数据时则只选定其中一块网卡。如果正在用于接收数据的网卡发生故障,则由其他网卡接管,要求所用的网卡及网卡驱动可通过ethtool命令得到speed信息。

    • mode=6

      适配器输入/输出负载均衡模式,在”模式5″的基础上,在接收数据的同时实现负载均衡,除要求ethtool命令可得到speed信息外,还要求支持对网卡MAC地址的动态修改功能。

    • miimon

      指定MII链路监控频率,单位是毫秒(ms)。这将决定驱动检查每个slave链路状态频率。0表示禁止MII链路监控。100可以作为一个很好的初始参 考值。

    # 配置文件默认没有,vi 一个即可
    [root@ansible network-scripts]$ sudo vi /etc/modprobe.d/bond0.conf
    alias bond0 bonding
    options bonding mode=0 miimon=100
    

    相关文章

      网友评论

        本文标题:Centos7 网卡绑定(链路聚合)

        本文链接:https://www.haomeiwen.com/subject/aizkcqtx.html