首页 > 系统相关 >centos 7 2009 Linux系统之多网卡Team链路聚合配置

centos 7 2009 Linux系统之多网卡Team链路聚合配置

时间:2023-08-17 14:33:13浏览次数:44  
标签:centos nmcli team0 up 网卡 link Team ethernet

Linux系统之Team链路聚合配置

操作步骤
一、Team链路聚合介绍
     1. Teaming技术简介
     2. 网卡的bonding和Teaming技术
     3. Team常用工作模式
 二、实践环境规划
 三、添加物理网卡
     1. 新增物理网卡
     2. 查看网卡信息
 四、Team链路聚合配置
     1. 查看team的工作模式
     2. 创建team0的网络接口
     3. 配置team0接口的IP地址
     4. 添加team0的子接口
     5. 激活网卡
     6. 检查team0接口的状态
 五、测试Team链路聚合
     1. 测试team0接口的网络连通情况
     1. 停用ens37网卡
     3. 测试网络情况
 六、删除子接口操作
     1. 删除子接口
     2. 查看网卡信息
     3. 重启team0
     
     来自:https://blog.51cto.com/u_14664141/7060447

一、Team链路聚合介绍

  1. Teaming技术简介
1. 1.Teaming技术就是把同一台服务器上的多个物理网卡通过软件绑定成一个虚拟网卡;
2.我们可以通过Teaming技术做链路聚合,实现不同网卡的网卡的负载均衡和冗余;
  1. 网卡的bonding和Teaming技术
1. 1.一般在在RHEL5/RHEL6中使用的是Bonding,而RHEL7提供了一项新的实现技术Teaming,
用来实现链路聚合的功能。
2.网卡的链路聚合一般常用的有"bond"和"team"两种模式,"bond"模式最多可以添加两块网卡,
"team"模式最多可以添加八块网卡。
  1. Team常用工作模式
3. Team常用工作模式如下:
roundrobin: 以轮循的模式传输所有端口的包
activebakup:主备模式这是一个故障迁移程序,监控链接更改并选择活动的端口进行传输
loadbalance: 监控流量并使用哈希函数以尝试在选择传输端口的时候达到完美均衡
broadcast: 广播容错,设备通过所有端口传输数据包

二、实践环境规划

本次实践规划:

centos 7 2009 Linux系统之多网卡Team链路聚合配置_链路

hostname team接口IP地址 物理网卡 操作系统版本 jeven 192.168.200.126 ens37/38/39/40 centos 7.6 三、添加物理网卡

  1. 新增物理网卡
    给虚拟机新增四张物理网卡 需要注意的是添加的网络适配器需网络模式一致,添加的个数为2的指数。

centos 7 2009 Linux系统之多网卡Team链路聚合配置_IP_02

Linux系统之Team链路聚合配置_docker

  1. 查看网卡信息
    查看新增的4张网卡ens37/38/39/40,已正常添加。
[root@localhost ~]# ip add  |grep ens
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    inet 10.10.201.222/24 brd 10.10.201.255 scope global noprefixroute ens33
3: ens37: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    inet 10.10.201.127/24 brd 10.10.201.255 scope global noprefixroute dynamic ens37
4: ens38: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    inet 10.10.201.101/24 brd 10.10.201.255 scope global noprefixroute dynamic ens38
5: ens39: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    inet 10.10.201.229/24 brd 10.10.201.255 scope global noprefixroute dynamic ens39
6: ens40: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    inet 10.10.201.138/24 brd 10.10.201.255 scope global noprefixroute dynamic ens40

centos 7 2009 Linux系统之多网卡Team链路聚合配置_IP_03

四、Team链路聚合配置

  1. 查看team的工作模式
    通过teamd.conf查看team的工作模式
man teamd.conf

centos 7 2009 Linux系统之多网卡Team链路聚合配置_IP_04

翻译:

runner.name(字符串)

团队设备的名称。以下跑步者可用:


broadcast—简单的runner,它指导团队设备通过所有端口传输数据包。


roundrobin——简单的runner,它指导团队设备以roundrobing的方式传输数据包。


random——简单的runner,它指导团队设备在随机选择的端口上传输数据包。


activebackup--监视链接更改并选择用于数据传输的活动端口。


loadbalance——要进行被动负载平衡,runner只设置BPF散列函数,该函数将确定数据包的端口

传输为了进行主动负载平衡,runner在可用端口之间移动散列,试图达到完美的平衡。


lacp——实现802.3ad lacp协议。可以使用与负载平衡运行程序相同的Tx端口选择可能性。


默认值:循环

Linux系统之Team链路聚合配置链路02

  1. 创建team0的网络接口
使用 nmcli 命令,添加一个 team 网络接口 team0,我们选择的team模式是activebakup主备模式。
1.创建team0网络接口
[root@localhost ~]# nmcli connection add type team con-name team0 ifname team0 config '{"runner": {"name": "activebackup"}}'

显示如下成功
Connection 'team0' (d53b931e-3f20-4ff0-b883-ea25e6c9b6fc) successfully added.

2.显示网络设备连接状态:

nmcli device status

centos 7 2009 Linux系统之多网卡Team链路聚合配置_IP_05

centos 7 2009 Linux系统之多网卡Team链路聚合配置_IP_06

3.配置team0接口的IP地址

配置team0接口的IP地址为10.10.201.211/24

命令如下

mcli connection modify team0 ipv4.addresses 10.10.201.211/24 ipv4.method manual

下面是nmcli其他一些命令也许以后用得到

一、基本命令 (也可以使用缩写:如nmcli dev status)

1、查询操作:

显示网络设备连接状态:nmcli device status

显示所有网络设备的详情:nmcli device show

显示所有网络连接:nmcli connection show

 

2、开关操作

启用网络连接:nmcli connection up ens30

停用网络连接:nmcli connection down ens30

禁用网卡:nmcli device disconnect ens30

启用网卡:nmcli device connect ens30

启用所有的网络连接:nmcli networking on

关闭所有的网络连接:nmcli networking off

 

3、创建与删除网卡连接配置

动态获取IP:nmcli connection add type ethernet con-name ens30 ifname ens30

静态获取IP:nmcli connection add type ethernet con-name ens30 ifname ens30 autoconnect yes ipv4.addresses 192.168.1.13/24 ipv4.gateway 192.168.1.1

删除网络配置文件:nmcli connection delete ens30

 

4、修改网卡连接配置

设置自动连接:nmcli connection modify ens30 connection.autoconnect yes
  1. 添加team0的子接口
    将物理网卡ens37、ens38、ens39、ens40作为team0的子接口。

注意下面一一对应:

team0-port1 ifname ens37 

team0-port2 ifname ens38

team0-port3 ifname ens39

team0-port4 ifname ens40

命令如下

[root@localhost ~]# nmcli connection add type team-slave con-name team0-port1 ifname ens37 master team0 


[root@localhost ~]# nmcli connection add type team-slave con-name team0-port2 ifname ens38 master team0 


[root@localhost ~]# nmcli connection add type team-slave con-name team0-port3 ifname ens39 master team0 


[root@localhost ~]# nmcli connection add type team-slave con-name team0-port4 ifname ens40 master team0
  1. 激活网卡
    重启网络服务
1.重启动网卡
[root@localhost ~]# nmcli con reload 
2.激活网卡
[root@localhost ~]# nmcli con up team0-port1
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)
[root@localhost ~]# nmcli con up team0-port2
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/8)
[root@localhost ~]# nmcli con up team0-port3
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/9)
[root@localhost ~]# nmcli con up team0-port4
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/10)
  1. 检查team0接口的状态
    检查team0接口的状态,当前活动的网卡为ens37。
[root@localhost ~]# teamdctl team0 state
setup:
  runner: activebackup
ports:
  ens37
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
  ens38
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
  ens39
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
  ens40
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
runner:
  active port: ens37

五、测试Team链路聚合

  1. 测试team0接口的网络连通情况
    在宿主机,ping其team0的IP地址,网络正常。


ping 10.10.201.211 -t

Linux系统之Team链路聚合配置

  1. 停用ens37网卡
    在本机停用ens37网卡,在局域网其他主机测试其连通性。
    本机停用ens37网卡


1.
ifdown ens37 
或者
nmcli device disconnect ens37
显示如下
Device 'ens37' successfully disconnected.

2.
查看当前team接口状态,可以看到现在ens40网卡接管服务。

[root@localhost ~]# teamdctl team0 state
setup:
  runner: activebackup
ports:
  ens38
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
  ens39
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
  ens40
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
runner:
  active port: ens40

centos 7 2009 Linux系统之多网卡Team链路聚合配置_3d_07

如果启用网卡命令:
nmcli device connect ens37
  1. 测试网络情况
    继续查看网络连通性,网络正常,网络没有中断即可。


六、删除子接口操作

  1. 删除子接口
    查看网卡连接信息


[root@localhost ~]# nmcli con show
显示如下
NAME                UUID                                  TYPE      DEVICE 
ens33               a61ae827-15bb-44cd-acc3-8025b97abedd  ethernet  ens33  
team0               d53b931e-3f20-4ff0-b883-ea25e6c9b6fc  team      team0  
team0-port2         3fdee742-6e83-4e4d-a846-fc4e858241df  ethernet  ens38  
team0-port3         b0546ac9-3ca5-4e12-ae4a-da94f8f0499a  ethernet  ens39  
team0-port4         593652e3-3cbe-4d47-871a-06ba53461dbe  ethernet  ens40  
team0-port1         aebb661a-5836-4ee4-9c49-175a717bf4fa  ethernet  --     
team0-port1         f01db18b-bd22-4174-a1d8-978799c8b7b9  ethernet  --     
team0-port1         74506247-02c4-476b-b942-9e44084a6c43  ethernet  --     
team0-port1         3daaa4b9-8e4d-4818-af36-64b1c53ed43d  ethernet  --     
team0-port1         1c526bd5-16f2-4953-9def-a3b9bb745f1c  ethernet  --     
team0-port1         2553fccc-a125-49e8-9f06-65d2ad9d677b  ethernet  --     
Wired connection 1  b151e0c3-44dc-3b0f-bfbf-1c12ba9907f0  ethernet  --     
Wired connection 2  3998995e-c0a0-30c3-afc6-c489e27bbcbb  ethernet  --     
Wired connection 3  de1ee7b2-d972-3b2a-8b18-8f0eafd623de  ethernet  --     
Wired connection 4  59cedfe2-8df6-3627-a535-aa0c6feaae0d  ethernet  --
删除子接口team0-port4  team0-port3 留team0-port1 team0-port2 
命令如下
[root@localhost ~]# nmcli con delete team0-port4 
显示如下
Connection 'team0-port4' (593652e3-3cbe-4d47-871a-06ba53461dbe) successfully deleted.

[root@localhost ~]# nmcli con delete team0-port3
显示
Connection 'team0-port3' (b0546ac9-3ca5-4e12-ae4a-da94f8f0499a) successfully deleted.
  1. 查看网卡信息
    查看网卡连接信息

    只有两个了

   team0-port1         3daaa4b9-8e4d-4818-af36-64b1c53ed43d  ethernet  ens40  

  team0-port2         3fdee742-6e83-4e4d-a846-fc4e858241df  ethernet  ens38  )

[root@localhost ~]# nmcli con show
NAME                UUID                                  TYPE      DEVICE 
ens33               a61ae827-15bb-44cd-acc3-8025b97abedd  ethernet  ens33  
team0               d53b931e-3f20-4ff0-b883-ea25e6c9b6fc  team      team0  
team0-port1         74506247-02c4-476b-b942-9e44084a6c43  ethernet  ens39  
team0-port1         3daaa4b9-8e4d-4818-af36-64b1c53ed43d  ethernet  ens40  
team0-port2         3fdee742-6e83-4e4d-a846-fc4e858241df  ethernet  ens38  
team0-port1         aebb661a-5836-4ee4-9c49-175a717bf4fa  ethernet  --     
team0-port1         f01db18b-bd22-4174-a1d8-978799c8b7b9  ethernet  --     
team0-port1         1c526bd5-16f2-4953-9def-a3b9bb745f1c  ethernet  --     
team0-port1         2553fccc-a125-49e8-9f06-65d2ad9d677b  ethernet  --     
Wired connection 1  b151e0c3-44dc-3b0f-bfbf-1c12ba9907f0  ethernet  --     
Wired connection 2  3998995e-c0a0-30c3-afc6-c489e27bbcbb  ethernet  --     
Wired connection 3  de1ee7b2-d972-3b2a-8b18-8f0eafd623de  ethernet  --     
Wired connection 4  59cedfe2-8df6-3627-a535-aa0c6feaae0d  ethernet  --
  1. 查看team接口状态
[root@localhost ~]# teamdctl team0 state 
setup:
  runner: activebackup
ports:
  ens38
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
  ens39
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
  ens40
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
runner:
  active port: ens40
  1. 重启team0,查看当前网络连接状态,ens39/40两张网卡已停止使用。
[root@localhost ~]# nmcli con reload 
[root@localhost ~]# nmcli con up team0
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/13)
[root@localhost ~]# nmcli con show


标签:centos,nmcli,team0,up,网卡,link,Team,ethernet
From: https://blog.51cto.com/u_64214/7122468

相关文章

  • CentOS7.6安装VMware Tools小白保姆级教程
    一.安装环境1.操作系统CentOS-7.6-x86_64-DVD-1810.isoRoot用户!!!2.虚拟机设置二.安装步骤1.进入root用户后,右键挂载的ISO镜像文件,点击弹出!!!(若不弹出无法正常安装VMwareTools)2.点击虚拟机->重新安装VMwareTools3.耐心等待桌面出现VMwareTools的ISO镜像文件4.打开VMwa......
  • centos7离线安装postgres
    官网下载源码包https://www.postgresql.org/ftp/source/v12.10/postgresql-12.10.tar.gz 上传到/usr/local目录tar-zxvfpostgresql-12.10.tar.gz 解压文件cdpostgresql-12.10依次执行如下命令 ./configure makesudomakeinstall如果执行中报如下错误则需要安装......
  • centos7安装mariadb-10.10.6-linux-systemd-x86_64.tar.gz
    [root@kht100data]#mysql_install_db--user=root--basedir=/usr/local/mariadb--datadir=/usr/local/mariadb/dataInstallingMariaDB/MySQLsystemtablesin'/usr/local/mariadb/data'...2023-08-1711:07:360[Note]StartingMariaDB10.10.6-MariaDB......
  • centos7离线安装docker
    1.下载docker安装包: https://download.docker.com/linux/static/stable/x86_64/2.解压文件docker-20.10.9.tgz 3.复制到/usr/bin文件夹下cpwork/docker/*/usr/bin/4.注册Docker为服务,进入 /etc/systemd/system/ 目录,并创建 docker.service 文件。vi/etc/sys......
  • CentOS8 2种方式安装redis
    方式一1、安装yuminstallredis2、编辑配置文件vim/etc/redis.conf#requirepass那行并打开注释,在后面写自己的密码,如下requirepassyourpassword将bind后127.0.0.1改为内网IP #为安全起见,请勿使用0.0.0.0protected-modeyes改为protected-modeno #关闭保护模式daemoniz......
  • centos7yum安装syslog-ng
    1.安装epel源yum-yinstallhttps://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm2.安装syslog-ngyum-yinstallsyslog-ng3.修改syslog-ng配置文件vim/etc/syslog-ng/syslog-ng.conf  ......
  • centos7.9安全加固
    centos7.9安全加固 1、限制用户登陆vim/etc/hosts.deny,若禁止192.168.0.158对服务器进行ssh的登陆,添加如下内容sshd:192.168.0.158添加完毕后就生效了,直接用192.168.0.158访问主机,就无法连接了,显示Connectionclosing...Socketclose.Connectionclosedbyforeignhost.......
  • 从0开始,Cloudreve开源云盘在centos7上部署,并可在外网访问(资料整合)
    全程我在网络上收集这些资料,太零碎了,每一个一看就会,一动手就废,而且很多都不能实现我白嫖的梦想我一个人折腾了快一周,现在可以正常访问手机电脑多端访问给个赞再走吧此处为没有公网IP(回去折腾你家宽带去,不知道可以去搜索如何获得)和域名的办法简单的说就是想完全白嫖的那种(甚至......
  • 在Teams/Outlook全局通讯簿中隐藏AAD帐户和组
    背景需求出于安全考虑,某些AzureAD中的组和用户,需要在通讯簿中隐藏,而不被其他用户搜索到。操作步骤隐藏用户使用如下命令查看用户ShowInAddressList属性:Get-AzureADUser-ObjectIduser@contoso.onmicrosoft.comShowInaddresslist=Null代表账号默认不隐藏使用如下命令修改ShowIn......
  • CF932E Team Work 题解
    Description给定\(n,k\),求:\[\displaystyle\sum_{i=1}^{n}{\binom{n}{i}\timesi^k}\]\(1\leqk\leq5000,1\leqn\leq10^9\)。Solution看到那个\(i^k\)很不爽,但是\(k\)很小,考虑用斯特林数改写一下:\[i^k=\sum_{j=0}^{k}{\binom{i}{j}\left\{{\begin{matrix}k......