overlay 网络是在underlay网络之上构建的一个逻辑网络,旨在满足数据中心构建大规模二层网络的需求。
overlay 网络通过在现有的underlay网络上叠加一个软件定义的逻辑网络,来解决数据中心网络中大规模虚拟机或容器之间的二层互通问题。
在k8s集群中,容器网络模式定义了一个“扁平”网络,具有以下特征:
每个Pod都拥有一个独立的IP地址,运行在不同计算节点上的Pod之间可以不使用网络地址转换(Network Address Translation,NAT)的情况下互相通信。容器网络接口插件需要解决的问题包括:
为每个Pod分配IP地址,并保证该IP地址在集群内唯一。确保Pod与Pod之间可以相互通信。主流的网络接口插件包括:
Flannel网络插件、Calico网络插件、Cilium网络插件以及虚拟局域网(VLAN)。
在本地局域网(LAN,Local Area Network)中,计算机通常通过Hub和Switch连接。通常,两台计算机连接到同一个Hub或Switch时,它们就在同一个LAN中。一个LAN表示一个广播域,意味着LAN中所有成员都会收到任意一个成员发出的广播包。
虚拟局域网(VLAN,Virtual LAN)表示一个带有VLAN功能的Switch将其端口划分为多个LAN,计算机发出的广播包可以被同一个LAN中的其他计算机收到,但位于其他LAN的计算机则无法收到。简单来说,VLAN是在逻辑上将一个交换机分成了多个交换机,从而限制了广播的范围,在二层计算机隔离到不同的VLAN中。
例如,在两组机器Group A和B中,我们希望A中的机器可以相互访问,B中的机器也可以相互访问,但A和B中的机器无法相互访问,有两种方法。一种方法是使用两个交换机,A和B分别连接到一个交换机。另一种方法是使用带VLAN功能的交换机,将A和B中的机器分别放到不同的VLAN中。
说明:
VLAN实现的只是二层的隔离,A和B无法相互访问指的是二层广播包(如ARP)无法跨越VLAN的边界,但在三层上(如IP地址)可以通过路由器让A和B互通。
不同的VLAN由VLAN tag(VID)标明,IEEE 802.1Q规定了VLAN的tag格式。因此在Linux上使用VLAN,需要加载802.1q的内核模块。
modprobe 8021q
ip link add link eno1 name eno1.10 type vlan id 10
VXLAN模式
VXLAN模式是Flannel推荐使用的一种数据包封装转发方式,是Linux内核默认支持的一种虚拟化网络技术。与UDP模式相比,它可以在内核态完成所有数据包封装和解封工作,减少内核态和用户态之间切换的次数。VXLAN模式使用二层网络连接不同的主机,并允许主机上的Pod之间互相通信。
以上就是虚拟网络学习的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号