#链路聚合基础概念
链路聚合:
指将多个物理端口汇聚在一起,形成一个逻辑端口,用于分担端口的负载压力。
链路聚合模式:
1)balance-rr:轮循模式(传输速率变快)
2)active-back一块网卡损坏,另一块才会开始工作(使传输变得稳定)
一.配置链路聚合的两种方式
1.bonding方式
实验一:命令方式完成链路聚合配置(一块网卡损坏,备用网卡自动开始工作,网络不会断开)
环境:
server,添加至两块网卡,nm-connetcion-editor删除所有网络配置
监控命令:
watch -n 1 cat /proc/net/bonding/bond0 ---接口状态信息文件
检测一:真机ping虚拟机server
检测二:查看监控窗口
步骤:
1)nmcli connecion add con-name bond0 ifname bond0 type bond mode active-backup ip4 172.25.254.162/24 ---bonding方式添加链路聚合接口,这是一个虚拟接口,此时没有真实设备,所以无法ping通
网络名称 设备名称 网络工作模式bond 聚合接口工作模式
查看监控窗口,链路聚合接口状态信息中,当前的设备为None
此时没有真实设备,所以无法ping通
2)nmcli connection add con-name eth0 ifname eth0 type bond-slave master bond0 ---将eth0添加到链路聚合接口的物理设备,此时真机可以ping通server
网络名称 设备名称 网络工作模式 从属于bond0
查看监控窗口,正在工作的设备是eth0
此时可以ping通服务器server
3)nmcli connection add con-name eth1 ifname eth1 type bond-slave master bond0 ---将eth1添加到链路聚合接口的物理设备,查看监控窗口
查看监控窗口,eth1为备用网卡,eth0为正在工作的网卡
4)ifconfig eth0 down ---此时server工作的网卡是eth0,模拟eth0损坏,将eth0停掉,此时监控窗口中看到eth1成为工作的网卡,而真机也可以ping通,证明链路聚合可以保证在一块网卡损坏时,网络可以正常服务。
查看监控窗口,eth0状态为down,eth1成为工作的网卡
此时eth0模拟损坏,但是网络依然正常工作,证明链路聚合方式可以提高网络稳定性
5)ifconfig eth0 up ---此时eth0修理后重启,查看监控窗口,工作的网卡是eth1,eth0变为备用的网卡。
也有可能会出现两块网卡通时损坏的情况,但是一般是人为的,比较少见
此时eth0为up状态,eth1为正在工作的网卡,当eth1损坏时,eth0又会开始工作
实验二:
文件编辑方式来完成链路聚合配置
环境:
将之前所设网络配置清空
nmcli connection delete bond0
nmcli connection delete eth0
nmcli connection delete eth1
监控命令:
watch -n 1 cat /proc/net/bonding/bond0
检测:
查看监控窗口
步骤:
1)cd /etc/sysconfig/network-scripts
2)vim ifcfg-bond
DEVICE=bond0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.254.162
NETMASK=255.255.255.0
TYPE=Bond ---类型为Bond
BONDING_OPTS=mode=active-backup ---指定工作模式
systemctl restart network
接口bond配置信息
查看监控窗口,链路聚合接口添加成功
3)vim ifcfg-eth0
DEVICE=eth0
ONBOOT=yes
NETMASK=255.255.255.0
MASTER=bond0 ---eth0为bond0服务
systemctl restart network
查看监控窗口,添加eth0到链路聚合的物理接口,eth0正在工作
此时可以server可以ping通
4)vim ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
NETMASK=255.255.255.0
MASTER=bond0 ---eth1为bond服务
systemctl restart network
查看监控窗口,添加eth1到链路聚合的物理接口,eth1成为备用的物理接口
2.team方式
team方式支持hash加密,负载均衡,支持ipv6
负载均衡是轮循方式中的一种,哪块物理设备没有工作,哪块干活
而bonding的轮循方式是简单轮循,物理接口轮流干活,不分工作量的大小,可以
是eth0干活1,eth1干活2,eth1做完,但是eth0还没有做完工作,此时系统需要等待eth0做完工作,再继续进行分配
实验三:
命令完成team方式的链路聚合接口配置设定
环境:
cd /etc/sysconfig/network-scripts
rm -fr ifcfg-bond0 ifcfg-eth0 ifcfg-eth1
nm-connection-editor ---进入图形界面删除所有网络配置
监控命令:
watch -n 1 teamdctl team0 stat ---查看team0接口状态命令
步骤:
1)nmcli connetcion add con-name team0 ifname team0 type team config '{"runner":{"name":"activebackup"}}' ip4 172.25.254.162/24
ifconfig ---team方式添加链路聚合接口,这是一个虚拟接口,此时没有真实设备,所以无法ping通(大括号有特殊含义,所以用单引号,工作类型用双引号)
查看监控窗口,team方式添加成功,但是没有真实设备
所以不能ping通server
2)nmcli connection add con-name eth0 ifname eth0 type team-slave master team0 ---将eth0添加到链路聚合接口的物理设备,此时真机可以ping通server
查看监控窗口,eth0成为正在使用的物理网卡
此时server可以ping通
3)nmcli connection add con-name eth1 ifname eth1 type team-slave master team0 ---将eth1添加到链路聚合接口的物理设备,此时真机可以ping通server
查看监控窗口,此时eth0为正在使用的网卡,eth1为备用的网卡
4)ifconfig eth0 down ---模拟工作的接口损坏,将eth0停掉
当eth0损坏,备用的eth1开始工作
检测:
查看监控窗口,此时备用的eth1自动开始工作,真机可以ping通server,说明team方式添加的链路聚合接口能够提高网络的稳定性
5)ifconfig eth0 up ---将eth0重新开启工作,此时eth0成为备用的物理接口
查看监控窗口,eth1是正在时用的网卡,eth0为备用的网卡,当eth1损坏时,eth0又开始工作
实验四:
文件编辑完成team方式的链路聚合接口某配置设定
环境:将网络配置清空
nmcli connection delete team0
nmcli connection delete eth0
nmcli connection delete eth1
监控:watch -n 1 teamdctl team0 stat ---查看team方式链路聚合接口接口状态信息
检测:
1.查看监控窗口
2.真机ping虚拟i机server
步骤:
1)vim /etc/sysconfig/network-scripts/ifcfg-team0 ---编辑team方式链路聚合接口信息文件
DEVICE=team0
TEAM_CONFIG="{\"runner\":{\"name\":\"activebackup\"}}" ---指定工作模式为activebackup
DEVICETYPE=Team ---设备类型为team
BOOTPROTO=none
IPADDR=172.25.254.162
PREFIX=24
NAME=team0
ONBOOT=yes
systemctl restart network
查看监控窗口,链路聚合接口添加成功,但是没有真实设备
此时不能ping通,没有真实设备
2)vim /etc/sysconfig/network-scripts/ifcfg-eth0 ---配置网卡eth0
BOOTPROTO=none
ONBOOT=yes
TEAM_MASTER=team0 ---eth0为team0服务
DEVICE=eth0
DEVICETYPE=TeamPort ---设备类型为teamport
systemctl restart network
此时可以ping通,查看监控窗口,此时链路聚合接口有了真实设备eth0工作
3)vim /etc/sysconfig/network-scripts/ifcfg-eth1 ---配置网卡eth1
BOOTPROTO=none
ONBOOT=yes
TEAM_MASTER=team0
DEVICE=eth1
DEVICETYPE=TeamPort
systemctl restart network
查看监控窗口,此时eth1为备用的网卡
4)ifconfig eth0 down
设备eth0损坏,网络依然正常,备用设备eth1正在工作
5)ifconfig eth0 up
eth0成为备用网卡
二.桥接
桥接是对真实主机的配置,当主机中的虚拟机需要传输数据到其他主机时,如果没有开启桥接,那么每一个数据包都需要经过nat地址转换(数据传到真实内核,再传输到真实网卡)。
网桥的作用就是将虚拟机的网卡与真实主机的网卡连接起来,不经过地址转换
1.文件编辑方式配置网桥
环境:
真机切换到超级用户
1)nm-connection-editor
将所有的网卡都删掉,删不掉的就保留
2)ifconfig查看真级的网卡名称是什么,上课时的网卡名称为enp0s25,下面用的是enp9s0
3)cd /etc/sysconfig/network-scripts ---此时网络配置都被删除
4)vim ifcfg-enp9s0 ---给物理网卡配置ip172.25.254.62
DEVICE=enp9s0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.254.62
PREFIX=24
5)systemctl restart network
6)ifconfig
桥接步骤:
1)vim /etc/sysconfig/network-scripts/ifcfg-enp9s0 ---指定物理网卡的桥接端口是br0
DEVICE=enp9s0
ONBOOT=yes
BOOTPROTO=none
BRIDGE=br0
2)vim /etc/sysconfig/network-scripts/ifcfg-br0 ---配置br0的网络
DEVICE=br0
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.254.62
NETMASK=255.255.255.0
TYPE=Bridge ----网卡类型是Bridge
3)systemctl restart network
检测:
1)ifconfig
2)brctl show
3)再http新建虚拟机,查看虚拟机网卡有多少选项,多出br0选项,虚拟机安装速度也会大大提升
2.命令方式建立桥接
环境:
server,nm-connection-editor将所有网络配置删除
步骤:
1)brctl addbr br0 ---添加桥接网卡br0
ifconfig ---查看到多出br0的网卡信息
2)ifconfig br0 172.25.254.162/24 ---给br0配置ip
ifconfig ---查看br0的ip
3)ping 172.25.254.62 ---此时不能ping通真机
brctl show ---因为此时桥接网卡还没有物理设备使用
4)brctl addif br0 eth0 ---把桥接网卡br0插在eth0
brctl show ---查看桥接网卡控制信息
检测:
ping 172.25.254.62 ---真机ip地址
3.命令方式删除桥接
1)ifconfig br0 down ---关闭桥接网卡
ifconfig ---此时没有br0的信息
brctl show ---查看桥接网卡的控制信息
2)brctl delif br0 eth0 ---将桥接网卡从eth0上取下来
brctl show ---查看桥接网卡控制信息
3)brctl delbr br0
检测:
brctl show ---查看桥接网卡控制信息