高级网络配置(bond、team网络接口)

####bond(链路聚合)####

一、链路聚合:

以太网链路聚合简称链路聚合,它通过将多条以太网物理链路捆绑在一起成为一条逻辑链路,从而实现增加链路带宽的目的。同时,这些捆绑在一起的链路通过相互间的动态备份,可以有效地提高链路的可靠性。

链路聚合的功能:
  1、增加了带宽---将多个链路的容量组合到一个逻辑链路中。
    2、自动故障转移/故障恢复---将来自故障链路的通信转移到聚合中的工作链路。
    3、负载均衡---传入和外发通信都是根据用户选择的负载均衡策略(如源和目标 MAC 或 IP 地址)进行分配的。

二、工作模式:

1、roundrobin平衡轮询模式:

两块网卡轮流接收数据包。由于两块网卡都正常工作,它能提供两倍的带宽,在这种情况下出现一块网卡失效,仅仅会是服务器出口带宽下降,也不会影响网络使用

2、ctivebackup主动备份模式:

只有主网卡 eth0 工作,eth1 作为备份网卡是不工作的,只有当一个网络接口失效时 ( 例如主交换机掉电等 ),为了不会出现网络中断,系统会按照配置指定的网卡 顺序启动工作,保证机器仍能对外服务,起到了失效保护的功能。

3、broadcast广播容错模式:

所有数据包都通过接口广播

三、实验操作

!!!注意:前提必须有两块网卡
在这里插入图片描述
为了保证实验纯净,需要删除以前设备。
nmcli connection show #查看
在这里插入图片描述
nmcli connection delete “System eth0” # 你的设备名称叫什么你就删什么
在这里插入图片描述

1、创建bond0

[root@station ~]# nmcli connection add con-name bond0 ifname bond0 type bond mode active-backup ip4 172.25.254.227/24 

con-name bond0         # 配置文件链接名
ifname bond0           # 指定接口
type bond              # bond类型
mode active-backup     #选定bond工作模式为active-backup
active-backup          # 使接口更加稳定
ip4 172.25.254.227/24  #设定ip

在这里插入图片描述
查看ifconfig已成功,bond0已存在。
在这里插入图片描述
cat /proc/net/bonding/bond0 # 查看接口状态信息
在这里插入图片描述

nmcli connection add con-name eth0 ifname eth0 type bond-slave master bond0  #将eth0网卡添加到bond接口中
nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0  #将eth1网卡添加到bond接口中
nmcli connection show    #查看

在这里插入图片描述
在这里插入图片描述
cat /proc/net/bonding/bond0 # 查看接口信息
在这里插入图片描述

2、ifconfig eth0 down # 模拟工作的网卡损坏

在这里插入图片描述
cat /proc/net/bonding/bond0 # 查看到eth1接替工作
在这里插入图片描述
ifconfig eth0 up
cat /proc/net/bonding/bond0 #查看到eth0变成备用
在这里插入图片描述

nmcli connection delete bond0   # 删除接口
nmcli connection delete eth0    # 删除接在bond0接口网卡eth0
nmcli connection delete eth1    # 删除接在bond0接口网卡eth1
nmcli connection show		#查看

在这里插入图片描述

3、用文件的方式添加

打开 vim /etc/sysconfig/network-scripts/ifcfg-bond0
在这里插入图片描述

添加:
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.254.227
NETMASK=255.255.255.0
TYPE=Bond     # 设备类型
BONDING_OPTS=mode=active-backup  # 设备的模块

在这里插入图片描述
打开 vim /etc/sysconfig/network-scripts/ifcfg-eth0
在这里插入图片描述

添加:
DEVICE=eth0
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0

在这里插入图片描述
打开 vim /etc/sysconfig/network-scripts/ifcfg-eth1
在这里插入图片描述

添加:
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
MASTER=bond0

在这里插入图片描述
systemctl restart network#重启网络
在这里插入图片描述
查看:
nmcli connection show
在这里插入图片描述

bond只支持数量轮询(轮到谁谁工作),不支持负载均衡(谁闲着,谁工作),对ipv6的支持比较差,不能进行hash加密

!!!注:以文件的方式添加接口时,就必须以文件的方式删除

[root@station Desktop]# rm -fr /etc/sysconfig/network-scripts/ifcfg-bond0 
[root@station Desktop]# rm -fr /etc/sysconfig/network-scripts/ifcfg-eth0
[root@station Desktop]# rm -fr /etc/sysconfig/network-scripts/ifcfg-eth1
[root@station Desktop]# systemctl restart network

在这里插入图片描述

####team(负载均衡)####

bond 的管理方式比较单一,选择更高级的管理方式team

1、team:

网卡绑定bond可以提高网络的冗余,保证网络可靠性,提高网络速度。为了提高网络容错或吞吐量,一般服务器都会采取多网卡绑定的策略,在RHEL5/RHEL6中使用的是Bond。而RHEL7提供了一项新的实现技术Team,用来实现链路聚合的功能,但是在RHEL7中,不会使用team替换bond,它们是并存的,我们可以选择Team,也可以选择Bond。

该接口与bond接口功能类似,但该接口可以支持八块网卡,不需要手动加载相应内核模块该接口比bond接口多一个
模式。

2、team的种类
broadcast               # 广播容错
roundrobin              # 平衡轮叫
activebackup            # 主备
loadbalance             # 负载均衡模式,判断不同网卡的负载,给负载最少的网卡发送数据包
3、实验操作
nmcli connection add con-name team0 ifname team0 type team config '{"runner":{"name":"activebackup"}}' ip4 172.25.254.142/24   # runner 是指定工作类型
nmcli connection add con-name eth0 ifname eth0 type team-slave master team0 #将eth0网卡添加到team接口中
nmcli connection add con-name eth1 ifname eth1 type team-slave master team0 #将eth1网卡添加到team接口中
nmcli connection show  ##查看

在这里插入图片描述
ifconfig
在这里插入图片描述
teamdctl team0 stat # 查看team0的接口详细信息
在这里插入图片描述
ifconfig eth0 down # 模拟工作网卡损坏
在这里插入图片描述
ifconfig eth0 up # 恢复网卡
teamdctl team0 stat
在这里插入图片描述
还原环境

[root@station Desktop]# nmcli connection delete team0     # 删除team0接口
[root@station Desktop]# nmcli connection delete eth0      # 删除接在team0接口网卡eth0
[root@station Desktop]# nmcli connection delete eth1      # 删除接在team0接口网卡eth1

在这里插入图片描述

文件方式

打开vim /etc/sysconfig/network-scripts/ifcfg-team0
在这里插入图片描述
添加:

DEVICE=team0
TEAM_CONFIG="{\"runner\":{\"name\":\"activebackup\"}}"
DEVICETYPE=Team
BOOTPROTO=none
IPADDR=172.25.254.227
PREFIX=24
NAME=team0
ONBOOT=yes

在这里插入图片描述
打开vim /etc/sysconfig/network-scripts/ifcfg-eth0
在这里插入图片描述
添加;

BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
TEAM_MASTER=team0
DEVICETYPE=TeamPort

在这里插入图片描述
打开vim /etc/sysconfig/network-scripts/ifcfg-eth1
在这里插入图片描述
添加:

BOOTPROTO=none
NAME=eth1
DEVICE=eth1
ONBOOT=yes
TEAM_MASTER=team0
DEVICETYPE=TeamPort

在这里插入图片描述
systemctl restart network #重启网络服务
nmcli connection show #查看
在这里插入图片描述
teamdctl team0 stat #查看接口信息
在这里插入图片描述
恢复环境

[root@station Desktop]# nmcli connection delete team0
[root@station Desktop]# nmcli connection delete eth0
[root@station Desktop]# nmcli connection delete eth1

在这里插入图片描述

####bond 和team的区别####

red hat 官方给出的team和bond特性对比
A Comparison of Features in Bonding and Team
Feature	                                                Bonding	                   Team
broadcast Tx policy 	                                   Yes       	           Yes
round-robin Tx policy 	                                   Yes          	   Yes
active-backup Tx policy 	                           Yes 	                   Yes
LACP (802.3ad) support 	                                   Yes (active only) 	   Yes
Hash-based Tx policy 	                                   Yes 	                   Yes    
User can set hash function (哈希加密)	                   No 	                   Yes
Tx load-balancing support (TLB) 	                   Yes 	                   Yes
LACP hash port select 	                                   Yes 	                   Yes
load-balancing for LACP support(负载均衡)                  No 	                   Yes
Ethtool link monitoring 	                           Yes                     Yes
ARP link monitoring 	                                   Yes 	                   Yes
NS/NA (IPv6) link monitoring(Ipv6) 	                   No 	                   Yes
ports up/down delays 	                                   Yes 	                   Yes
port priorities and stickiness (“primary”option enhancement)  	No 	           Yes
separate per-port link monitoring setup 	             No 	           Yes
multiple link monitoring setup          	           Limited 	           Yes
lockless Tx/Rx path 	                                   No (rwlock) 	           Yes (RCU)
VLAN support 	                                           Yes 	                   Yes
user-space runtime control 	                           Limited 	           Full
Logic in user-space 	                                   No 	                   Yes
Extensibility 	                                           Hard 	           Easy
Modular design 	                                           No 	                   Yes
Performance overhead 	                                   Low 	                   Very Low
D-Bus interface 	                                   No 	                   Yes
multiple device stacking                	           Yes 	                   Yes
zero config using                                          LLDP 	           No 	(in planning)
NetworkManager support 	                                   Yes 	                   Yes

猜你喜欢

转载自blog.csdn.net/weixin_43275140/article/details/84332807