一文理解VXLAN与虚拟机之间的关系

【前言】

我们在初次学习VXLAN时,几乎所有的资料都会解释VXLAN是为了在三层网络中打通一条二层隧道,用于对虚拟机进行迁移等操作。这样的解释虽然是正确的,然而对于不了解虚拟化的网络工程师来说,这种解释就显得有点不知所云,因此本文将站在VMware vSphere的角度来阐明VXLAN在包括虚拟机迁移、FT实时复制中的地位和作用
当然,除了虚拟机之外,VXLAN在SDN(软件定义网络)中也起了很大的作用,针对于VXLAN和SDN的关系,请参见:https://blog.csdn.net/muxia_jhy/article/details/109674829

【本文所用到的虚拟化知识】

在这里插入图片描述

1、物理服务器——我们看到的实体服务器,不做解释;
2、vSwitch——vSwitch是运行在VMware中的虚拟交换机,充当的是外界物理网络和虚拟机之间的中间媒介,ESXi直接使用物理服务器网卡,而ESXi和虚拟机(VM)之间则需要虚拟网卡连接,然后虚拟网卡和物理网卡连接,从而实现和外界的通信,而vSwitch就为虚拟机提供了相应的虚拟网卡。和实体交换机一样,vSwitch同样支持VLAN划分,但与实体交换机不同的是,vSwitch不支持生成树协议(STP),为了达到防环目的,vSwitch从设计之初就不支持vSwitch和vSwitch之间建立连接
3、ESXi——通俗点讲ESXi可以视作一个轻量级的类Unix操作系统,可以安装在裸机上,它占用物理资源极低,本身没有直接的业务运行环境,ESXi专门用于用户在上面创建各种虚拟机,因此它充当的是一个宿主操作系统。类比于我们个人所用VMware Workstation,VMware Workstation需要真实电脑本身的操作系统作为宿主操作系统;
4、VM——即我们所熟知的虚拟机。

【创建一个简单的虚拟机】

1、安装和配置ESXi——安装ESXi有两种安装方式——交互安装脚本安装,具体的安装步骤可以在互联网上很容易找到,此处不再累述,在ESXi安装完成后,我们可以看到以下界面:
在这里插入图片描述
2、本文的实验环境有单独的DHCP服务器,因此ESXi自动获取了IP地址,如果您的现网环境中没有DHCP,则需要在ESXi界面中按F2,输入管理员用户名和密码后,然后选择“Configure Management Network”配置静态IP地址
在这里插入图片描述
3、在客户端上安装好VMware vSphere Client,启动并连接至该ESXi主机,即可按照提示创建虚拟机(此处创建一个CentOS7虚拟机),本实验环境中所使用的是VMware vSphere Client5.5,而vSphere6.0以上版本已经没有单独的客户端,他们都是使用web界面操作:
在这里插入图片描述

4、登录成功后,在左侧侧边栏选中相应的物理主机,然后选择“配置”选项卡,最后选择“网络”,即可看到一个vSphere标准交换机(vSwitch的一种,另一种被称之为vSphere分布式交换机,主要用于vCenter中,其作用为简化操作,避免用户反复创建相同的vSphere标准交换机),通过这个vSwitch,我们就可以理解虚拟机和VXLAN之间的关系了
在这里插入图片描述

【vSwitch各接口作用及迁移原理】

如上图所示,一个vSwitch有三种接口——虚拟机端口物理适配器接口VMKernel接口,其工作原理如下:
1、物理适配器接口——承担对外的业务通信和VMware高可用相关的通信;
2、虚拟机端口——一是用于虚拟机和虚拟机之间的业务通信;二是虚拟机接口和物理适配器接口结合起来对外进行业务通信;
3、VMKernel接口——结合物理适配器接口进行VMware高可用相关、存储、运管相关的通信,如:vMotion(用于虚拟机迁移)、iSCSI、NFS、FT(用于虚拟机同步复制)、主机管理等。
在这里插入图片描述
虚拟机迁移的精髓在于,迁移前后,包括业务IP地址在内的所有配置都不会因为迁移而发生改变,如果发生改变,原有业务将会中断。我们以业务IP地址为例,虚拟机系统下的虚拟网卡是与vSwitch中的虚拟机端口相连接的,这个接口承担的是业务流量,因此我们保证的是这个IP地址不变,这也就意味着,如果发生的是跨物理主机的迁移,那么两台主机承担迁移任务的VMKernel接口就必须处在同一个网段中,由于VMKernel接口IP地址等同于ESXi配置的IP地址,而该IP地址和物理接口是高度绑定的,这也就决定了两台物理服务器的IP地址必须在同一个网段
这样的需求与现实的矛盾在于,在数据中心里,出于隔离广播域和网络规划的考虑,节点和节点之间的网络都是走的三层路由,是跨网段通信,在这样的情况下,要想实现两台物理服务器通过二层进行通信是完全不可能的,由此,在三层网络中实现二层隧道的VXLAN技术就诞生了。

【虚拟机如何与VXLAN对接】

最后,我们可以通过下面一张图来解释虚拟机如何与VXLAN对接:
在这里插入图片描述
上图中,为便于理解,我们可以将ESXi和vSwitch视作一个整体,然后通过vSphere将服务器物理接口设置为trunk接口与VTEP交换机连接,这同时也就解释了为什么实际项目中,交换机和服务器对接时,很多情况下会用trunk接口而非书本上的access接口。


版权声明:本文为muxia_jhy原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
THE END
< <上一篇
下一篇>>