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

本文涉及的产品
传统型负载均衡 CLB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 【链路聚合】Linux系统配置链路聚合详细步骤

前言


链路聚合(英语: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、查看目前网卡的名称和状态


nmcli device status

640.png

2、创建bond0口


nmcli connection add type bond con-name bond0 ifname bond0

640.png

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

nmcli connection add type bond-slave ifname ens33 master bond0 
nmcli connection add type bond-slave ifname ens37 master bond0

640.png

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

nmcli connection modify bond0 ipv4.addresses ‘192.168.10.200/24’ipv4.gateway ‘192.168.10.2’

640.png

nmcli connection modify bond0 ipv4.method manual

640.png

5、启动

nmcli connection up bond0

640.png

6、验证

ip addr show bond0

640.png

ip route

640.png

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

640.gif


二、team


1.查看网卡的连接信息


nmcli connnection show

640.png

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“为例”

nmcli con add type team con-name team0 ifname team0 config '{"runner":{"name": "roundrobin"}}'

640.png

3.设置team0的ip、gateway、dns


nmcli con modify team0 ipv4.address '192.168.10.188/24' ipv4.gateway '192.168.10.2'

640.png

nmcli con modify team0 ipv4.dns 114.114.114.114

640.png


4.设置team的属性为manual

nmcli con modify team0 ipv4.method manual

640.png

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

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

640.png

6.启动team0

nmcli con up team0

640.png

7,查看team0状态

teamdctl team0 state view

640.png

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

8,测试是否正常工作

640.gif

相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
25天前
|
Ubuntu Linux 开发工具
【事件中心 Azure Event Hub】在Linux环境中(Ubuntu)安装Logstash的简易步骤及配置连接到Event Hub
【事件中心 Azure Event Hub】在Linux环境中(Ubuntu)安装Logstash的简易步骤及配置连接到Event Hub
|
25天前
|
存储 监控 Ubuntu
在Linux中,如何规划⼀台 Linux 主机,步骤是怎样?
在Linux中,如何规划⼀台 Linux 主机,步骤是怎样?
|
4月前
|
Ubuntu Linux 编译器
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
|
26天前
|
安全 Linux Shell
在Linux中,如何使用脚本进行系统配置和部署?
在Linux中,如何使用脚本进行系统配置和部署?
|
23天前
|
JavaScript Linux API
【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤
【Azure 应用服务】NodeJS Express + MSAL 应用实现AAD集成登录并部署在App Service Linux环境中的实现步骤
|
24天前
|
Ubuntu 安全 Linux
在Linux中,编译内核的意义与步骤?
在Linux中,编译内核的意义与步骤?
|
25天前
|
Linux 网络安全 数据安全/隐私保护
在Linux中,ptables是否支持time时间控制用户行为,如有请写出具体操作步骤。
在Linux中,ptables是否支持time时间控制用户行为,如有请写出具体操作步骤。
|
27天前
|
运维 监控 Java
在Linux中,当遇到系统卡顿时,你会采取哪些步骤来定位原因?
在Linux中,当遇到系统卡顿时,你会采取哪些步骤来定位原因?
|
1月前
|
Oracle Java 关系型数据库
简单记录在Linux上安装JDK环境的步骤,以及解决运行Java程序时出现Error Could not find or load main class XXX问题
本文记录了在Linux系统上安装JDK环境的步骤,并提供了解决运行Java程序时出现的"Error Could not find or load main class XXX"问题的方案,主要是通过重新配置和刷新JDK环境变量来解决。
63 0
|
3月前
|
应用服务中间件 Linux 网络安全
LINUX安装nginx详细步骤
LINUX安装nginx详细步骤