teaming技术
所谓teaming技术就是把同一台服务器上的多个物理网卡通过软件绑定成一个虚拟的网卡,也就是说,对于外部网络而言,这台服务器只有一个可见的网卡。对于任何应用程序,以及本服务器所在的网络,这台服务器只有一个网络链接或者说只有一个可以访问的IP地址。
之所以要利用Teaming 技术,除了利用多网卡同时工作来提高网络速度以外,还有可以通过Teaming 实现不同网卡之间的负载均衡(Load balancing)和网卡冗余(Fault tolerance)。
teaming与bonding的关系
网卡绑定bonding可以提高网络的冗余,保证网络可靠性,提高网络速度。为了提高网络容错或吞吐量,一般服务器都会采取多网卡绑定的策略,在RHEL5/RHEL6中使用的是Bonding。而RHEL7提供了一项新的实现技术Teaming,用来实现链路聚合的功能,但是在RHEL7中,不会使用teaming替换bonding,它们是并存的,我们可以选择Teaming,也可以选择Bonding。
配置team链路聚合
1.创建team0设备和team0会话
[root@localhost ~]# nmcli connection add type team con-name team0 ifname team0 config '{"runner": {"name": "activebackup"} }'
2.查看创建好的team0会话
[root@localhost ~]# nmcli connection show
3.修改team0会话的IP地址和网关
[root@localhost ~]# nmcli connection modify team0 ipv4.addresses 192.168.43.12/24
[root@localhost ~]# nmcli connection modify team0 ipv4.gateway 192.168.43.1
4.更改IP地址获取方式为手动
[root@localhost ~]# nmcli connection modify team0 ipv4.method manual
5.查看修改后的team0会话
[root@localhost ~]# nmcli connection show team0 | grep method
6.添加设备到team0
[root@localhost ~]# nmcli connection add type team-slave con-name team0-port1 ifname eno33554984 master team0
[root@localhost ~]# nmcli connection add type team-slave con-name team0-port2 ifname en050332408 master team0
7.激活从设备
[root@localhost ~]# nmcli connection up team0-port1
[root@localhost ~]# nmcli connection up team0-port2
8.激活主设备
[root@localhost ~]# nmcli connection up team0
9.查看启动后的team0状态
[root@localhost ~]# teamdctl team0 state
10.验证——物理主机ping team0地址
11.测试——停用一个从设备会话来检验效果
[root@localhost ~]# nmcli connection down team0-port1
测试分别停一个端口的变化/ 两个端口都停掉的变化/在停掉一个真实物理网卡的变化
在这还可以ping通原因是192.168.192. 段的地址都可以ping通。
13.停用一个从设备真实网卡来检验效果
[root@localhost ~]# nmcli device disconnect eno50332208
配置软件桥接
1.创建一个软件桥接设备和会话
[root@localhost ~]# nmcli connection add type bridge con-name br1 ifname br1
2.添加从设备和会话到桥接设备
[root@localhost ~]# nmcli connection add type bridge-slave con-name br1-port0 ifname eno3554984 master br1
3.启动从设备会话
[root@localhost ~]# nmcli connection up br1-port0
#启动桥接会话
[root@localhost ~]# nmcli connection up br1
4.或者 配置软件桥接网卡的IP地址、网关和地址获取方式
[root@localhost ~]# nmcli connection modify br1 ipv4.addresses 192.168.171.151/24
[root@localhost ~]# nmcli connection modify br1 ipv4.gateway 192.168.171.1
[root@localhost ~]# nmcli connection modify br1 ipv4.method manual
配置桥接 team0
1.创建team1设备和team1会话
[root@localhost ~]# nmcli connection add type team con-name team1 ifname team1 config '{"runner": {"name": "activebackup"} }'
2.添加设备到team0
[root@localhost ~]# nmcli connection add type team-slave con-name team1-port1 ifname eno33554984 master team1
[root@localhost ~]# nmcli connection add type team-slave con-name team1-port2 ifname eno50332208 master team1
3.激活从设备
[root@localhost ~]# nmcli connection up team1-port1
[root@localhost ~]# nmcli connection up team1-port2
4.激活主设备
[root@localhost ~]# nmcli connection up team1
5.查看team状态
[root@localhost ~]# teamdctl team1 state
6.断掉team1设备
[root@localhost ~]# nmcli device disconnect team1
7.停用NetworkManager服务/network
[root@localhost ~]# systemctl stop NetworkManager.service nmcli
8.配置br0配置文件
[root@localhost network-scripts]# vim ifcfg-br0
DEVICE=br0
ONBOOT=yes
TYPE=Bridge
IPADDR=192.168.171.152
PREFIX=24
9.切换到网卡配置目录
[root@localhost ~]# cd /etc/sysconfig/network-scripts/
10.编辑team1配置文件
[root@localhost network-scripts]# vi ifcfg-team1
11.追加如下内容:
BRIDGE=br0
12.重启网络服务
[root@localhost ~]# systemctl restart NetworkManager
[root@localhost ~]# nmcli device connet team1
.
.
心