网络组Network Team

网络组Network Team

网络组team:是将多个网卡聚合在一起,从而实现容错和提高吞吐量

1 创建网络组接口

nmcli connection add type team con-name TEAMname ifname INTname [config JSON]

TEAMname 指定连接名,INname指定接口名,

JSON指定runner方式,格式为:'{“runner”:{“name”:”METHOD”}}’

METHOD 可以是broadcast、roundrobin、activebackup、loadbalance、lacp

(1)创建网络接口组team0

[root@centos7 ~]# nmcli connection add type team con-name team0 ifname team0 config '{"runner":{"name":"loadbalance"}}'
Connection 'team0' (e70483a1-2688-4eb2-9466-8e732360291d) successfully added.

(2)给网路组team0配置IP地址

[root@centos7 ~]# nmcli connection modify team0 ipv4.method manual ipv4.addresses 200.200.200.200/24 gw4 200.200.200.1

2 创建port接口(SLAVE)

既就是生成组TEAM组成员的配置文件。

注意:这个配置文件和网卡配置文件是相互独立的。

nmcli connection add type team-slave con-name SLAVEname ifname INname master TEAMname

SLAVEname 指定连接名,INTname指定网络接口名(相当于指定要加入网络组的网卡名),TEAMnmae指定所属网络组。

若连接名不指定,默认为team-slave-IFACE

创建接口组

这里使用ens34、ens38两块网卡

[root@centos7 ~]# nmcli connection add con-name team0-ens34 type team-slave ifname ens34 master team0
Connection 'team0-ens34' (a481fb6d-bf61-413d-a2c7-289966bee1a7) successfully added.
[root@centos7 ~]# nmcli connection add con-name team0-ens38 type team-slave ifname ens38 master team0
Connection 'team0-ens38' (758d0eba-1625-46b2-b539-1d853a45be6b) successfully added.

3 启用网络组

启用网络组:nmcli connection up team0

启用组成员:nmcli connection up SLAVEname

[root@centos7 ~]# nmcli connection up team0
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/20)
[root@centos7 ~]# nmcli connection up team0-ens34
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/23)
[root@centos7 ~]# nmcli connection up team0-ens38
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/24)

4 查看网络组状态

teamdctl TEAMname state

[root@centos7 ~]# teamdctl team0 state
setup:
runner: loadbalance
ports:
ens34
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

5 网络组配置文件

(1)MASTER配置文件

[root@centos7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-team0
DEVICE=team0
TEAM_CONFIG="{"runner":{"name":"loadbalance"}}"
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=team0
UUID=e70483a1-2688-4eb2-9466-8e732360291d
ONBOOT=yes
DEVICETYPE=Team
IPADDR=200.200.200.200
PREFIX=24
GATEWAY=200.200.200.1

(2)组成员(SLAVE)配置文件

[root@centos7 ~]# cat /etc/sysconfig/network-scripts/ifcfg-team0-ens34
NAME=team0-ens34
UUID=a481fb6d-bf61-413d-a2c7-289966bee1a7
DEVICE=ens34
ONBOOT=yes
TEAM_MASTER=team0
DEVICETYPE=TeamPort

6 删除网络组

(1)断开连接

[root@centos7 ~]# nmcli connection down team0
Connection 'team0' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)

查看下状态

[root@centos7 ~]# teamdctl team0 state
Device "team0" does not exist
[root@centos7 ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens33 be9d1f2f-20e0-4282-9cb5-0da4c8b0fc7c 802-3-ethernet ens33
virbr0 8b1532d4-d99b-4201-8163-44d733302230 bridge virbr0
team0 e70483a1-2688-4eb2-9466-8e732360291d team --
team0-ens34 a481fb6d-bf61-413d-a2c7-289966bee1a7 802-3-ethernet --
team0-ens38 758d0eba-1625-46b2-b539-1d853a45be6b 802-3-ethernet --

可以看到已经关闭成功

(2)删除TEAM组成员

[root@centos7 ~]# nmcli connection delete team0-ens34
Connection 'team0-ens34' (a481fb6d-bf61-413d-a2c7-289966bee1a7) successfully deleted.
[root@centos7 ~]# nmcli connection delete team0-ens38
Connection 'team0-ens38' (758d0eba-1625-46b2-b539-1d853a45be6b) successfully deleted.

(3)删除TEAM组

[root@centos7 ~]# nmcli connection delete team0
Connection 'team0' (e70483a1-2688-4eb2-9466-8e732360291d) successfully deleted.

查看一下

[root@centos7 ~]# nmcli connection show
NAME UUID TYPE DEVICE
ens33 be9d1f2f-20e0-4282-9cb5-0da4c8b0fc7c 802-3-ethernet ens33
virbr0 8b1532d4-d99b-4201-8163-44d733302230 bridge virbr0

已经看不到team0 相关的内容,说明删除成功

原创文章,作者:linux is not unix,如若转载,请注明出处:http://www.178linux.com/74910

(0)
linux is not unixlinux is not unix
上一篇 2017-05-07
下一篇 2017-05-07

相关推荐

  • SHELL流程控制之循环

    当进行脚本编程时,语句执行的流程控制通常有三种: l  顺序执行 l  选择执行 l  循环执行   条件选择if: if语句可以进行嵌套 if 判断条件;then          条件为真的分支代码 elif  判断条件;th…

    Linux干货 2016-08-18
  • Windows和Linux关于一块网卡绑定多个网络地址的解决之道

    Windows和Linux关于一块网卡绑定多个网络地址的问题解决之道   在不同场合用不同ip地址访问网络,而且都是固定ip。是一件很头疼的问题。不过,Windows和Linux系统都提供了解决方法。接下来我们先谈Windows系统下操作,再说Linux如何操作。 一、Windows设置   1. 我以Windows7为例,首先鼠标左键点击你电脑左下角有网络…

    Linux干货 2016-09-07
  • Http协议中的各种长度限制总结

    HTTP1.0的格式 request(HTTP请求消息)结构:一个请求行.部分消息头,以及实体内容,其中的一些消息内容都是可选择的.消息头和实体内容之间要用空行分开. GET /index.html HTTP/1.1 //请求头,下面都是消息头.Accept: */*Accept-Languang:en-usConnection:keep-aliveHost…

    Linux干货 2015-04-04
  • keepalived实现lvs的高可用

    lvs可以做到内核级别的四层负载均衡,具有非常强悍的负载均衡能力。但是,当我们构建lvs的负载均衡集群的时候也会面临一些很严重的问题: lvs的单点故障:当lvs负载均衡器出现故障的时候,那么后端所有的服务器都将无法访问; lvs对后台服务器没有健康监测机制:当后台服务器宕机之后lvs还是会调度服务到后台的服务器; 所以我们就需要一款工具来解决以上问题。 k…

    2017-07-03
  • find查找命令及压缩

    文件查找     在文件系统上查找符合条件的文件;     文件查找: locate, find         非实时查找(数据库查找): locate    &nbs…

    Linux干货 2016-08-18