使用nmcli配置主备模式链路聚合

摘要:
活动/待机模式下的链路聚合将其中一个接口置于备份状态,并仅在活动接口断开连接时使活动接口处于活动状态。
主备模式的链路聚合将其中一个接口置于备份状态,并且仅当活动接口断开链接时才会使其处于活动状态。

现在让我们在CentOS 7中配置网卡绑定,运行ip link命令查看可以使用的网卡

[root@localhost ~]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:7b:d3:32 brd ff:ff:ff:ff:ff:ff
3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
    link/ether 08:00:27:81:d3:be brd ff:ff:ff:ff:ff:ff

使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合
在这里使用enp0s3和enp0s8两个网卡配置 主备模式的链路聚合。

创建Team接口
[root@localhost ~]# nmcli connection add type team con-name team0 ifname team0 config '{"runner":{"name":"activebackup"}}' 
Connection 'team0' (4df78635-b9fc-4539-ab02-27db11c656fe) successfully added.

使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合
运行nmcli con show查看team0的配置

[root@localhost ~]# nmcli con show
NAME                UUID                                  TYPE      DEVICE 
team0               4df78635-b9fc-4539-ab02-27db11c656fe  team      team0  
enp0s3              5005942f-a7fd-4e55-b8e7-77928d8da72d  ethernet  enp0s3 
Wired connection 1  45dee64a-53b3-3e2a-b2d4-e377f3e668a2  ethernet  enp0s8

使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合

添加Slave接口

在这里使用enp0s3和enp0s8两个网卡作为team0的slave接口:

[root@localhost ~]# nmcli connection add type team-slave con-name team0-port1 ifname enp0s3 master team0 
Connection 'team0-port1' (15183c4a-2053-4b53-ad58-de5a07ae3ae9) successfully added.
[root@localhost ~]# nmcli connection add type team-slave con-name team0-port2 ifname enp0s8 master team0
Connection 'team0-port2' (a34e20b0-3422-46e5-a947-bb2eaa6c0622) successfully added.

使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合
查看端口配置信息:

[root@localhost ~]# nmcli connection show 
NAME                UUID                                  TYPE      DEVICE 
team0               4df78635-b9fc-4539-ab02-27db11c656fe  team      team0  
enp0s3              5005942f-a7fd-4e55-b8e7-77928d8da72d  ethernet  enp0s3 
Wired connection 1  45dee64a-53b3-3e2a-b2d4-e377f3e668a2  ethernet  enp0s8 
team0-port1         15183c4a-2053-4b53-ad58-de5a07ae3ae9  ethernet  --     
team0-port2         a34e20b0-3422-46e5-a947-bb2eaa6c0622  ethernet  --     

使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合

分配IP地址

给team0分配一个静态的IP地址并启动team0配置:

[root@localhost ~]# nmcli connection modify team0 ipv4.method manual ipv4.addresses 192.168.0.200/24 ipv4.gateway 192.168.0.1 ipv4.dns 202.102.128.68
[root@localhost ~]# nmcli connection up team0 
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/4)

查看连接配置信息,发现team0-port1没有绑定在enp0s3这个网卡接口上

[root@localhost ~]# nmcli connection 

使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合
这是以内ifcfg-team0-port1配置文件和ifcfg-enp0s3两个配置文件都设置为开机启动了
使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合
所以我们需要关闭enp0s3的开机启动,在这里我们把enp0s3和Wired connection 1这两个配置都关掉开机启动

[root@localhost ~]# nmcli connection modify enp0s3 autoconnect no
[root@localhost ~]# nmcli connection modify Wired connection 1 autoconnect no

使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合
然后重启一下网络服务,查看链接配置:

[root@localhost ~]# systemctl restart network
[root@localhost ~]# nmcli connection
[root@localhost ~]# ip ad

可以看到team0-port1和team0-port2都绑定在对应的网卡上面了,team0的ip地址显示的是手动设置的192.168.0.200
使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合

验证

查看team0的状态:

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

使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合
现在活动的端口是enp0s8,我们断开这个端口,看一下主备模式配置是否工作:

[root@localhost ~]# nmcli device disconnect enp0s8 
Device 'enp0s8' successfully disconnected.
[root@localhost ~]# teamdctl team0 state
setup:
  runner: activebackup
ports:
  enp0s3
    link watches:
      link summary: up
      instance[link_watch_0]:
        name: ethtool
        link: up
        down count: 0
runner:
  active port: enp0s3

看到活动接口切换到enp0s3上面了。
使用nmcli配置主备模式链路聚合使用nmcli配置主备模式链路聚合

总结

主备模式的链路聚合将其中一个接口置于备份状态,并且仅当活动接口断开链接时才会使其处于活动状态。

免责声明:文章转载自《使用nmcli配置主备模式链路聚合》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇get****Context各个方法分析java解析xml字符串为实体(dom4j解析)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

接口测试和功能测试的区别

接口测试和功能测试的区别: 本文主要分为两个部分:   第一部分:主要从问题出发,引入接口测试的相关内容并与前端测试进行简单对比,总结两者之前的区别与联系。但该部分只交代了怎么做和如何做?并没有解释为什么要做?   第二部分:主要介绍为什么要做接口测试,并简单总结接口持续集成和接口质量评估相关内容。   第一部分: 首先,在做接口测试的过程中,经常有后端开...

RESTFul API

目录 一、前言 二、获取所有数据 三、获取详情 四、新增数据 五、修改数据 六、删除数据 七、特性路由 (1) 基本路由映射 (2) 路由映射参数 (3) 多重特性路由 (4) 缺省参数路由 (5) 参数约束路由 (6) 通配符(*)路由变量 (7) 路由映射复杂参数 (8) 路由前缀 一、前言 RESTful API 是基于HTTP协议...

GOF设计模式快速学习

这段时间,学习状态比较一般,空闲时基本都在打游戏,和研究如何打好游戏,终于通过戏命师烬制霸LOL,玩笑了。为了和"学习"之间的友谊小船不翻,决定对以往学习过的GOF设计模式做一个简单的回顾,这儿俺只是"知识的搬运工"哈。程杰老师的《大话设计模式》一书非常的棒,虽然出版有小10年了,但知识点清晰易懂,尤其是最后的虚拟的设计模式选美大赛,非常精辟的对设计模式行...

接口测试常见bug

一、接口参数数据类型:1. 数值型2. 字符串类型3. 数组或者 链表类型4. 结构体二、接口测试常见bug:1. 特殊值处理不当导致程序异常退出或者崩溃2. 类型边界溢出,导致数据读出和写入不一致3. 取值边界外值未返回正确的错误信息4. 参数 为null或空字符串“”等5. 权限未处理,可以访问其他用户的信息例如:无权限可以访问,或者 一般用户可以访问...

设计原则~

1. 单一职责原则(Single Responsibility Principle - SRP) 原文:There should never be more than one reason for a class to change. 译文:永远不应该有多于一个原因来改变某个类。 理解:对于一个类而言,应该仅有一个引起它变化的原因。说白了就是,不同的...

java-中的代理

静态代理:  例子: 接口: public interface InterfaceBase { void proxy(); } 接口实现类: public class InterfaceBaseReal implements InterfaceBase{ public void proxy() { System.out.p...