centos7.6 网卡做bond

实验环境:centos7.6 ,网卡 ens1,ens2

bond类型说明:

网卡绑定mode共有七种(0~6) bond0、bond1、bond2、bond3、bond4、bond5、bond6

常用的有四种

  • mode=0:(balance-rr) Round-robin policy(平衡抡循环策略)平衡负载模式,有自动备援,但需要”Switch”支援及设定。
  • mode=1,(active-backup) Active-backup policy(主-备份策略)只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得,从外面看来,bond的MAC地址是唯一的。
  • mode=5,(balance-tlb) Adaptive transmit load balancing(适配器传输负载均衡)不需要任何特别的switch(交换机)支持的通道bonding。
  • mode=6,(balance-alb) Adaptive load balancing(适配器适应性负载均衡)该模式包含了balance-tlb模式,同时加上针对IPV4流量的接收负载均衡(receive load balance, rlb),而且不需要任何switch(交换机)的支持。接收负载均衡是通过ARP协商实现的

方法1:修改配置文件做 bond0 (证实有效)

  • 1、创建 bond0 配置文件
[root@localhost sysconfig]# cat /etc/sysconfig/network-scripts/ifcfg-bond0 
DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
TYPE=Ethernet
IPADDR=192.168.1.3
GATEWAY=192.168.1.1
PREFIX=24
IPV6INIT=no
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
BONDING_OPTS="mode=1"
DNS1=199.29.29.29
NDS2=223.5.5.5
  • 2、修改网卡 em1、em2 配置文件
[root@localhost sysconfig]# cat /etc/sysconfig/network-scripts/ifcfg-em1
DEVICE=em1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0          
SLAVE=yes
IPV6INIT=no

[root@localhost sysconfig]# cat /etc/sysconfig/network-scripts/ifcfg-em2
DEVICE=em2
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0          
SLAVE=yes
IPV6INIT=no
  • 3、重启网络
systemctl restart network
  • 4、检测
[root@localhost sysconfig]# cat /proc/net/bonding/bond0 

Bonding Mode: load balancing (round-robin)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: em2
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 18:66:da:4d:c3:e8
Slave queue ID: 0

Slave Interface: em1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 18:66:da:4d:c3:e7
Slave queue ID: 0

#######################我是分割线#######################

方法2:使用 nmcli 命令做 bond1

网卡 eth0、eth1 做 bond1

  • 1.添加 bond
nmcli connection add type bond con-name bond0 ifname bond0 mode active-backup ip4 172.25.254.136/24 
  • 2.监测bond变动以及网络状态(新开一个终端)

watch -n 1 cat /proc/net/bonding/bond0

  • 3.分别绑定两块网卡到bond上去:
nmcli connection add con-name eth0 ifname eth0 type bond-slave master bond0

nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0
  • 4.通过停掉其中一块网卡观察bond反应以及网络变化
 ifconfig eth0 down       #停掉eth0
 nmcli connection delete eth0    #将eth0从bond解绑
 nmcli connection add con-name eth0 ifname eth0 type bond-slave master bond0    #加上eth0
 ifconfig eth1 down        #停掉eth1

#######################我是分割线#######################

方法3,使用 nmcli 命令做 team (证实有效)

  • 1、设置绑定模式 loadbalance
nmcli con add type team con-name team0 ifname team0 config '{"runner":{"name":"loadbalance"}}' 
  • 2、设置 team0 的 ip,掩码,网关,手工模式
nmcli con modify team0 ipv4.addresses '10.2.5.117/24' ipv4.gateway '10.2.5.254' ipv4.method manual
  • 3、将 em1 和 em2 分别加入 team0 组
nmcli con add type team-slave con-name team0-port1 ifname em1 master team0
nmcli con add type team-slave con-name team0-port2 ifname em2 master team0
  • 4、查看网卡信息,若发现有橙色的要启动
nmcli con sh

*5、若发现有橙色的要启动

nmcli con up team0
  • 6、重启网络
systemctl restart network
  • 7、查看服务启动,确保 active
systemctl status network
systemctl status NetworkManager
  • 8、查看teaming绑定结果
teamdctl team0 st
ethtool team0

team 与 bond 区别

team 可以理解为 bond 的升级

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容