前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【链路聚合】Linux系统配置链路聚合详细步骤

【链路聚合】Linux系统配置链路聚合详细步骤

作者头像
释然
发布2020-11-06 11:19:36
5.5K0
发布2020-11-06 11:19:36
举报
文章被收录于专栏:释然IT杂谈释然IT杂谈

前言

链路聚合(英语:Link Aggregation)将多个物理端口汇聚在一起,形成一个逻辑端口,以实现出/入流量吞吐量在各成员端口的负荷分担

网卡的链路聚合就是将多块网卡连接起来,当一块网卡损坏,网络依旧可以正常运行,可以有效的防止因为网卡损坏带来的损失,同时也可以提高网络访问速度。 网卡的链路聚合一般常用的有"bond"和"team"两种模式,"bond"模式最多可以添加两块网卡,"team"模式最多可以添加八块网卡。

一、bond

bond的七种模式介绍:

  • 1、mode=0(balance-rr)(平衡抡循环策略)
  • 2、mode=1(active-backup)(主-备份策略)
  • 3、mode=2(balance-xor)(平衡策略)
  • 4、mode=3(broadcast)(广播策略)
  • 5、mode=4(802.3ad)(IEEE 802.3ad 动态链接聚合)
  • 6、mode=5(balance-tlb)(适配器传输负载均衡)
  • 7、mode=6(balance-alb)(适配器适应性负载均衡)

各模式信息,可以查看链接非常详细:

https://blog.51cto.com/linuxnote/1680315

1、查看目前网卡的名称和状态

代码语言:javascript
复制
 nmcli device status

2、创建bond0口

代码语言:javascript
复制
nmcli connection add type bond con-name bond0 ifname bond0

3、将接口ens33、ens37加到bond0里去

代码语言:javascript
复制
nmcli connection add type bond-slave ifname ens33 master bond0 
nmcli connection add type bond-slave ifname ens37 master bond0 

4、静态配置bond0口地址、网关

代码语言:javascript
复制
nmcli connection modify bond0 ipv4.addresses ‘192.168.10.200/24’ipv4.gateway ‘192.168.10.2’ 
代码语言:javascript
复制
nmcli connection modify bond0 ipv4.method manual 

5、启动

代码语言:javascript
复制
nmcli connection up bond0 

6、验证

代码语言:javascript
复制
ip addr show bond0 
代码语言:javascript
复制
ip route

测试断开一块网卡,可以看到切换时会丢失几个包后网络依旧连通着。

二、team

1.查看网卡的连接信息

代码语言:javascript
复制
nmcli connnection show

2.创建team,名称为team0

按照下面的语法,用 nmcli 命令为网络组接口创建一个连接。

# nmcli con add type team con-name CNAME ifname INAME [config JSON]

CNAME 指代连接的名称,INAME 是接口名称,JSON (JavaScript Object Notation) 指定所使用的处理器(runner)。JSON语法格式如下:

'{"runner":{"name":"METHOD"}}'

METHOD 是以下的其中一个:broadcast、activebackup、roundrobin、loadbalance 或者 lacp。

最常见的双网卡绑定模式: (1) roundrobin - 轮询模式 所有链路处于负载均衡状态,这种模式的特点增加了带宽,同时支持容错能力。 (2) activebackup - 主备模式 一个网卡处于活动状态,另一个处于备份状态,所有流量都在主链路上处理,当活动网卡down掉时,启用备份网卡。

这里我们创建“”roundrobin“为例”

代码语言:javascript
复制
nmcli con add type team con-name team0 ifname team0 config '{"runner":{"name": "roundrobin"}}'

3.设置team0的ip、gateway、dns

代码语言:javascript
复制
nmcli con modify team0 ipv4.address '192.168.10.188/24' ipv4.gateway '192.168.10.2' 
代码语言:javascript
复制
nmcli con modify team0 ipv4.dns 114.114.114.114

4.设置team的属性为manual

代码语言:javascript
复制
nmcli con modify team0 ipv4.method manual

5.添加网卡ens33、ens37到team0中

代码语言:javascript
复制
nmcli con add type team-slave con-name team0-port1 ifname ens33 master team0nmcli con add type team-slave con-name team0-port1 ifname ens37 master team0

6.启动team0

代码语言:javascript
复制
nmcli con up team0

7,查看team0状态

代码语言:javascript
复制
teamdctl team0 state view

通过以上就完成了通过nmcli创建roundrobin的网络team

8,测试是否正常工作

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-10-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 释然IT杂谈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档