(1)简单的说就是多个物理的端口绑定在一起当成一个逻辑端口来使用,以便提高带宽,实现负载平衡或高可用的功能在rhel7里面是通过runner来实现不同的目的。
(2)配置的基本过程就是配置一个逻辑端口的连接,视作 master;然后把需要的物理端口配置 成 slave 连接,绑定到组。然后把这个逻辑端口分配 IP 就可以用了。
(3)网卡的链路聚合就是将多块网卡连接起来,当一块网卡损坏,网络依旧可以正常运行,可以有效的防止因为网卡损坏带来的损失,同时也可以提高网络访问速度。
(4)网卡的链路聚合一般常用的有"bond"和"team"两种模式,"bond"模式最多可以添加两块网卡,"team"模式最多可以添加八块网卡。
原理如下图所示:
链路聚合的几种模式
broadcast | 传输所有端口进来的数据包 |
roundrobin | 随机计算发送数据 |
activebackup | 高可用性 |
loadbalance | 负载均衡 |
配置链路聚合高可用性:即一个网卡失效了,另外一块网卡可以正常工作。
1.检查网卡和连接
首先看有几张网卡和网卡是否绑定了连接名,要求网卡不能绑定连接,如果绑定要解除网卡和连接的绑定。状态要是disconnected的。
确保要做端口聚合的网卡没有任何,如果要取消绑定使用下面的命令。
nmcli connection del 连接名字
2.创建端口组json
可以看到这里比第一步的图片虚拟出了一张网卡叫做team0,设备名字和ifname对应,连接名为team0。
3.给第二步虚拟出来的端口配置ip和网关。
4.将虚拟出来的端口team0绑定实际第一步的两个物理网卡,这两个实际的物理网卡是不要配置IP地址的
可以看到两块实际的物理网卡都有连接了,team0状态也是connected。
再仔细看看两块物理网卡的地址也是一样的,都是00:0c:29:144:5a:df
5.最后就是验证了
查看端口组中存在的接口
teamnl team0 port
查看目前正在工作的接口
teamnl team0 getoption activeport
显示所有的端口组属性
teamnl team0 options
如果要修改聚合链路模式用
nmcli connection modify team0 team.config '{"runner":{"name":"loadbalance"}}