当前位置 : 主页 > 操作系统 > centos >

华为交换机配置链路聚合(手工模式链路聚合和lacp模式聚合)UBUNTU 20.04 服务器配置多网卡链路聚合

来源:互联网 收集:自由互联 发布时间:2023-08-21
一.华为交换机配置链路聚合 (Eth-Trunk),是将多个物理接口捆绑为一个逻辑接口,实现增加链路带宽、提高可靠性、提供负载分担的目的。 链路聚合两种模式:手工负载分担模式(默

一.华为交换机配置链路聚合

(Eth-Trunk),是将多个物理接口捆绑为一个逻辑接口,实现增加链路带宽、提高可靠性、提供负载分担的目的。

链路聚合两种模式:手工负载分担模式(默认模式,默认负载均衡方式src-dst-ip 适用于:交换机与服务器之间),​​LACP​​模式(适用于:网络设备之间 推荐 )。

1,交换机 手工模式下.

Eth-Trunk的建立、成员接口的加入由手工配置,没有LACP的参与。手工模式下所有活动链路都参与数据的转发,平均分担流量。如果某条活动链路发生故障,链路聚合组会自动在剩余的活动链路中平均分担流量。

当需要在两个直连设备之间提供一个较大的链路带宽,而其中一端或两端设备都不支持LACP协议时,可以配置手工模式链路聚合。

拓扑:

华为交换机配置链路聚合(手工模式链路聚合和lacp模式聚合)UBUNTU 20.04 服务器配置多网卡链路聚合_Ethernet

开始配置:

SW1配置

SW1

[SW1]interface Eth-Trunk 1
[SW1-Eth-Trunk1]mode manual load-balance //选择为手动负载分担,缺省即为手工模式,可不配置

[SW1-Eth-Trunk1]load-balance ? //查看可配置的模式,缺省为src-dst-ip,
dst-ip According to destination IP hash arithmetic
dst-mac According to destination MAC hash arithmetic
src-dst-ip According to source/destination IP hash arithmetic //缺省的配置
src-dst-mac According to source/destination MAC hash arithmetic
src-ip According to source IP hash arithmetic
src-mac According to source MAC hash arithmetic

[SW1-Eth-Trunk1]load-balance src-dst-ip //此处使用src-dst-ip

[SW1-Eth-Trunk1]trunkport GigabitEthernet 0/0/1 to 0/0/2 //把GE0/0/1到GE0/0/2加入
配置Eth-Trunk 1为trunk模式,并放通vlan 10 和20
[SW1]interface Eth-Trunk 1
[SW1-Eth-Trunk1]port link-type trunk
[SW1-Eth-Trunk1]port trunk allow-pass vlan 10 20

SW2配置:

SW2
[SW2]interface Eth-Trunk 1
[SW2-Eth-Trunk1]mode manual load-balance

[SW2-Eth-Trunk1]load-balance src-dst-ip

[SW2-Eth-Trunk1]trunkport GigabitEthernet 0/0/1 to 0/0/2

配置Eth-Trunk 1为trunk并放通vlan10和20
[SW2]interface Eth-Trunk 1
[SW2-Eth-Trunk1]port link-type trunk
[SW2-Eth-Trunk1]port trunk allow-pass vlan 10 20

检查

使用命令display eth-trunk 1查看

2,交换机 LACP模式

当需要在两个直连设备间提供一个较大的链路带宽并且设备都支持LACP协议时,建议使用LACP模式。 LACP模式不仅可以实现增加带宽、提高可靠性、负载分担的目的,而且可以提高Eth-Trunk的容错性、提供备份功能。 在LACP模式下,部分链路是活动链路,所有活动链路均参与数据转发。如果某条活动链路故障,链路聚合组自动在非活动链路中选择一条链路作为活动链路,来参与数据转发。

如下图SW1和SW2各自的GE0/0/1、GE0/0/2、GE0/0/3加入链路聚合中,GE0/0/3作为备份链路。

拓扑:

华为交换机配置链路聚合(手工模式链路聚合和lacp模式聚合)UBUNTU 20.04 服务器配置多网卡链路聚合_Ethernet_02

SW1配置:

SW1

[SW1]interface Eth-Trunk 2 //创建eth-trunk 2聚合口
[SW1-Eth-Trunk2]mode lacp-static //配置模式为lacp静态模式
[SW1-Eth-Trunk2]trunkport GigabitEthernet 0/0/1 to 0/0/3 //把GE0/0/1 到GE0/0/3加入到聚合组

在SW1上配置系统优先级为100,使其成为LACP主动端
[SW1]lacp priority 100

在SW1上配置活动接口上限阈值为2
[SW1]interface Eth-Trunk 2
[SW1-Eth-Trunk2]max active-linknumber 2

在SW1进入物理接口配置接口优先级,确定活动链路,此处只配置GE1和GE2口,GE3口保持默认值32768。
[SW1]interface GigabitEthernet 0/0/1
[SW1-GigabitEthernet0/0/1]lacp priority 100
[SW1]interface GigabitEthernet 0/0/2
[SW1-GigabitEthernet0/0/2]lacp priority 100

配置Eth-Trunk2接口为trunk,并允许VLAN10和VLAN20通过(vlan配置过程省略)
[SW1]interface Eth-Trunk 2
[SW1-Eth-Trunk2]port link-type trunk
[SW1-Eth-Trunk2]port trunk allow-pass vlan 10 20

SW2配置:

SW2

[SW2]interface Eth-Trunk 2
[SW2-Eth-Trunk2]mode lacp-static //配置模式为lacp静态模式

分别把GE0/0/1、GE0/0/2、GE0/0/3加入到聚合口(此处采用的另一种方法,不是批量加入了)

[SW2]interface GigabitEthernet 0/0/1
[SW2-GigabitEthernet0/0/1]eth-trunk 2

[SW2]interface GigabitEthernet 0/0/2
[SW2-GigabitEthernet0/0/2]eth-trunk 2

[SW2]interface GigabitEthernet 0/0/3
[SW2-GigabitEthernet0/0/3]eth-trunk 2

SW2上优先级保持默认,在SW2上配置活动接口上限阈值为2
[SW2]interface Eth-Trunk 2
[SW2-Eth-Trunk2]max active-linknumber 2

配置Eth-Trunk2接口为trunk,并允许VLAN10和VLAN20通过(vlan配置过程省略)
[SW2]interface Eth-Trunk 2
[SW2-Eth-Trunk2]port link-type trunk
[SW2-Eth-Trunk2]port trunk allow-pass vlan 10 20

使用命令display eth-trunk 2分别在SW1和SW2上查看接口情况

3,交换机和其它设备常用的链路聚合采用的模式

1,和服务器互联时, 服务器和接入设备的链路聚合模式要匹配。当服务器选择静态链接聚合方式,对应接入设备应该选择手工模式;当服务器选择IEEE 802.3ad动态链接聚合方式,对应接入设备应该选择LACP模式。

2,和堆叠设备互联时, 交换机与堆叠系统通过链路聚合互联,同时使能Eth-Trunk接口流量本地优先转发功能,在保证数据流量可靠传输的同时可以减小堆叠设备之间的带宽承载压力,提高了流量转发效率。

二、UBUNTU 20.04 服务器配置多网卡链路聚合:(手动模式  mode: balance-rr     交换机为静态模式 )


说明 (bonding一共有7种工作模式):

bonding一共有7种工作模式(mode):

1)、mode=0,(balance-rr)(轮询均衡模式)
传输数据包顺序是依次传输,直到最后一个传输完毕,此模式提供负载平衡和容错能力,服务器对外只有一个MAC地址,其物理网卡是没有MAC地址的,因此需要交换机做链路聚合,否则不知道要将数据包发送给哪个网卡.

2)、mode=1,(active-backup)(主备模式)
只有一个主设备处于活动状态。一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得。此模式提供了容错能力。不需要交换机特别配置,配置access端口就可以了。

3)、mode=2,(balance-xor)(平衡策略)
特点:基于指定的传输HASH策略传输数据包。此模式提供负载平衡和容错能力。

4)、mode=3,(broadcast) (广播策略)
特点:在每个网卡上传输每个数据包,广播包太多,一般不使用此模式。将所有数据包传输给所有设备。此模式提供了容错能力。

5)、mode=4,(802.3ad) IEEE 802.3ad Dynamic link aggregation. IEEE 802.3ad 动态链接聚合
创建共享相同的速度和双工设置的聚合组。此模式提供了容错能力。每个设备需要基于驱动的重新获取速度和全双工支持;如果使用交换机,交换机也需启用 802.3ad 模式。

6)、mode=5,(balance-tlb) Adaptive transmit load balancing(适配器传输负载均衡)
特点:不需要任何特别的switch(交换机)支持的通道bonding。在每个网卡上根据当前的负载(根据速度计算)分配外出流量。如果正在接受数据的网卡出故障了,另一个网卡接管失败的网卡的MAC地址。交换机上可见多个网卡的MAC,因此不需要交换机做链路聚合配置。

7)、mode=6,(balance-alb) Adaptive load balancing: (适配器适应性负载均衡)
特点:该模式包含了balance-tlb模式,同时加上针对IPV4流量的接收负载均衡(receiveload balance, rlb),而且不需要任何switch(交换机)的支持。交换机上也是可见多个网卡的MAC,不需要做链路聚合配置。

以下部分是mode=6实现原理,了解一下:

1.bond接收负载均衡是通过ARP协议实现的。bonding驱动截获本机发送的ARP应答,并把源MAC地址改写为bond中某个网卡的MAC地址,从而使得交换机上学习到的ARP是服务器想要分配流量的MAC地址,向服务器发送的流量则会发送到相对应的MAC地址。

2.bond发送负载均衡也是通过ARP协议实现的。当服务器发起ARP请求时,bonding驱动把对端的IP信息从ARP包中复制并保存下来。当ARP应答从对端到达时,bonding驱动把它的MAC地址提取出来,并伪造一个ARP应答给bond中的某个网卡,以此实现从指定的网卡发出数据包。

3.当有网卡出现故障或ARP过期时,bond都会重新计算,将流量重新分配到各个网卡。
inux bonding一共有7种工作模式(mode),如果是想要加大网卡的吞吐量,通常会使用mode=6的模式,如果是注重网络的稳定,通常会使用mode=1的模式

查看绑定的网卡信息

root@it:~# ip add
- eth1 为以后需要聚合的端口
- eth2 为以后需要聚合的端口
root@it:~# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:2d:79:40 brd ff:ff:ff:ff:ff:ff
inet 192.168.121.21/24 brd 192.168.121.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe2d:7940/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 00:0c:29:2d:79:4a brd ff:ff:ff:ff:ff:ff
4: eth2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 00:0c:29:2d:79:54 brd ff:ff:ff:ff:ff:ff

在 /etc/netplan/ 目录下新建一个以 .yaml 结尾的文件

root@it:~# cd /etc/netplan/
root@it:/etc/netplan# touch bond.yaml

编辑该文件

root@it:/etc/netplan# vim bond.yaml
network:
version: 2
ethernets:
eth1:
addresses: [] #绑定单网卡不需要写IP地址
dhcp4: no
eth2:
addresses: []
dhcp4: no
bonds:
bond0:
addresses:
- 192.168.121.100/24
gateway4: 192.168.121.2
nameservers:
addresses:
- 114.114.114.114
interfaces:
- eth1
- eth2
parameters: #参数
mode: balance-rr #bond模式

加载配置

root@it:/etc/netplan# netplan apply

检查bond0
root@it:/etc/netplan# ip add
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:0c:29:2d:79:40 brd ff:ff:ff:ff:ff:ff
inet 192.168.121.21/24 brd 192.168.121.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe2d:7940/64 scope link
valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc fq_codel master bond0 state UP group default qlen 1000
link/ether 3e:ba:29:6c:0d:e4 brd ff:ff:ff:ff:ff:ff
4: eth2: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 1500 qdisc fq_codel master bond0 state UP group default qlen 1000
link/ether 3e:ba:29:6c:0d:e4 brd ff:ff:ff:ff:ff:ff
5: bond0: <BROADCAST,MULTICAST,MASTER,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 3e:ba:29:6c:0d:e4 brd ff:ff:ff:ff:ff:ff
inet 192.168.121.100/24 brd 192.168.121.255 scope global bond0
valid_lft forever preferred_lft forever
inet6 fe80::3cba:29ff:fe6c:de4/64 scope link
valid_lft forever preferred_lft forever

三、UBUNTU 20.04 mode=1,(active-backup)(主备模式) 交换机 access 即可不需要其他链路聚合配置 )

root@node70:~# vim /etc/netplan/00-installer-config.yaml
network:
version: 2
ethernets:
ens33:
dhcp4: no
dhcp6: no
ens38:
dhcp4: no
dhcp6: no
bonds:
bond0:
interfaces:
- ens33
- ens38
addresses: [10.0.0.70/8]
gateway4: 10.0.0.254
nameservers:
addresses: [223.5.5.5]
parameters:
mode: active-backup
mii-monitor-interval: 100

四、UBUNTU 20.04 bond mode4 802.3ad模式 交换机 需要LADP 模式

注意:交换机也需启用 802.3ad 模式

1.开始配置服务器

查看服务器版本
# cat /etc/issue
Ubuntu 20.04.2 LTS \n \l
modinfo bonding | more
加载模块、
modprobe bonding

查看
lsmod|grep bonding
bonding 167936 0

备份原网络配置文件

cp 00-installer-config.yaml 00-installer-config.yaml_backup

新建网络配置文件bond0.yaml        (enp1s0f0 - enp1s0f1 为绑定的两个网卡名)

vim bond0.yaml

如下内容
network:
ethernets:
enp1s0f0:
addresses: []
dhcp4: true
dhcp6: true
enp1s0f1:
addresses: []
dhcp4: true
dhcp6: true
bonds:
bond0:
addresses: [192.168.2.3/24]
gateway4: 192.168.2.1
nameservers:
addresses: [8.8.8.8,114.114.114.114]
interfaces:
- enp1s0f0
- enp1s0f1
parameters:
lacp-rate: fast
mode: 802.3ad
transmit-hash-policy: layer2

从启动网络、

sudo netplan apply
# ifconfig
bond0: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST> mtu 1500
inet 192.168.2.3 netmask 255.255.255.0 broadcast 192.168.40.255

五、UBUNTU 20.04 mode=6 模式 交换机 需要LADP 模式

推荐内容
2、配置步骤
以下步骤为配置mode=6的双网卡绑定步骤,其他模式的方法一样;

2.1、安装ifenslave软件
fenslave为一种粘合和分离式的软件,可以将数据包有效的分配到bonding驱动

sudo apt install ifenslave

2.2、/etc/modules文件
在/etc/modules文件中加入以下配置

bonding mode=6 miimon=100

mode=6 表示采用模式6;
miimon是用来进行链路监测的。比如miimon=100,表示系统每100ms监测一次链路连接状态,如果有一条线路不通就切换另一条线路。

2.3、修改/etc/network/interfaces文件配置
首先需要确定网卡接口的名称,可以通过ifconfig命令查看,当前是网卡接口分别是ens33和ens34;在/etc/network/interfaces文件增加如下配置

# 双网卡配置
auto ens33
iface ens33 inet manual
bond-master bond0

auto ens34
iface ens34 inet manual
bond-master bond0

auto bond0
iface bond0 inet static
address 192.168.20.10
netmask 255.255.255.0
gateway 192.168.20.2
dns-nameservers 192.168.20.1 119.29.29.29
bond-slaves ens33 ens34
bond-lacp-rate 1
bond-mode 6
bond-miimon 100

2.4、加载binding模块

# 载入模块
$ sudo modprobe bonding
# 查看模块,如果模块已经加载,显示出来
$ sudo lsmod|grep bonding
bonding 163840 0

2.5、查看状态
查看网络配置

$ ifconfig
bond0 Link encap:以太网 硬件地址 00:0c:29:34:7a:4a
inet 地址:192.168.20.10 广播:192.168.20.255 掩码:255.255.255.0
inet6 地址: fe80::20c:29ff:fe34:7a4a/64 Scope:Link
UP BROADCAST RUNNING MASTER MULTICAST MTU:1500 跃点数:1
接收数据包:964 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:4205 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:75022 (75.0 KB) 发送字节:300032 (300.0 KB)

ens33 Link encap:以太网 硬件地址 00:0c:29:34:7a:4a
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 跃点数:1
接收数据包:2740 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:3416 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:3899473 (3.8 MB) 发送字节:278409 (278.4 KB)

ens34 Link encap:以太网 硬件地址 00:0c:29:34:7a:54
UP BROADCAST RUNNING SLAVE MULTICAST MTU:1500 跃点数:1
接收数据包:1369 错误:0 丢弃:0 过载:0 帧数:0
发送数据包:2125 错误:0 丢弃:0 过载:0 载波:0
碰撞:0 发送队列长度:1000
接收字节:106846 (106.8 KB) 发送字节:139061 (139.0 KB)

查看binding状态

$ cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: adaptive load balancing
Primary Slave: None
Currently Active Slave: ens33
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: ens33
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0c:29:34:7a:4a
Slave queue ID: 0

Slave Interface: ens34
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 0
Permanent HW addr: 00:0c:29:34:7a:54
Slave queue ID: 0

2.6、验证测试
物理上关闭一个网卡(拔网线)

# 关闭前,速率是2000Mb/s
$ ethtool bond0
Settings for bond0:
Supported ports: [ ]
Supported link modes: Not reported
Supported pause frame use: No
Supports auto-negotiation: No
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Speed: 2000Mb/s
Duplex: Full
Port: Other
PHYAD: 0
Transceiver: internal
Auto-negotiation: off
Cannot get wake-on-lan settings: Operation not permitted
Link detected: yes

# 关闭后,速率速率变成1000Mb/s
$ ethtool bond0
Settings for bond0:
Supported ports: [ ]
Supported link modes: Not reported
Supported pause frame use: No
Supports auto-negotiation: No
Advertised link modes: Not reported
Advertised pause frame use: No
Advertised auto-negotiation: No
Speed: 1000Mb/s
Duplex: Full
Port: Other
PHYAD: 0
Transceiver: internal
Auto-negotiation: off
Cannot get wake-on-lan settings: Operation not permitted
Link detected: yes

注意:不可以使用ifdown 关闭网卡,会导致网络中断
3、总结
L






上一篇:用户画像分析的应用及搭建
下一篇:没有了
网友评论