在之前的 vSphere虚拟网络01中,提到了vSphere中的两种虚拟交换机类型:标准交换机和分布式交换机。这篇里就虚拟交换机的知识进行一些深入的了解。

首先,虚拟交换机就是从软件层面来模拟一个Layer2的交换机。在物理网络中,交换机在Layer2利用它维护的CAM表来做点到点的数据包传输。在虚拟网络中,虚拟交换机检测到连接到它的虚拟端口的虚拟机,然后用MAC来转发流量到正确的目的地(点到点)。虚拟交换机基本上是用来在虚拟网络和物理网络之间建立连接的。

这里可以再看一下上一篇中用到的示意图

vSphere虚拟网络示意图

在ESXi安装之后,默认的配置有一个标准虚拟交换机,一个叫VM Network的端口组和一个作为ESXi管理口的叫vmk0的VMkernel port。这个默认配置可以用来实现基本的虚拟网络和物理网络的连通,如果你有更复杂的虚拟网络需求,我们就要自己来创建额外的VMkernel port,端口组或者虚拟交换机。

那么我们来查看下vSphere7版本的虚拟网络的一些限制https://configmax.vmware.com/guest?vmwareproduct=vSphere&release=vSphere%207.0&categories=2-0

从中我们能看到,ESXi主机支持最多4096个端口,其中8个作为预留口,但是最多活动端口是1024,其中8个作为预留口,那么最多可用并且活动端口就是1016。

关于隔离

在之前的vSphere虚拟网络01中提到了虚拟网络中的隔离,可以通过一个虚拟交换机的不同端口组设置不同VLAN ID来隔离,如下图

单虚拟交换机 - VLAN

那么也可以通过多个虚拟交换机来直接做“物理隔离”,如下图

多虚拟交换机 - 无VLAN

两种方式都可以做到隔离,但有什么不同呢?

首先,虚拟交换机是通过软件来模拟物理交换机的行为。那么在ESXi上创建越多的虚拟交换机就应该需要越多的资源来做交换功能。

其次,如果我们想做流量隔离,在单虚拟交换机上就需要配置VLAN,或者不用VLAN,用多虚拟交换机来“物理隔离”。因为在很多网络中,可能物理网络中也没有配置VLAN来做隔离,比如部门1连接物理交换机01,部门2连接物理交换机02,这样的物理隔离,那么我们就可以把部门1要用的虚拟资源连在虚拟交换机01上并且通过上行链路->物理网卡连接到物理交换机01上,然后部门2要用的虚拟资源连在虚拟交换机02上并且通过上行链路->物理网卡连接到物理交换机02上,这样部门1和部门2所需要的虚拟资源就“物理隔离”了,同时,Management和vMotion连接不同的物理交换机也可以实现管理和迁移的“物理隔离”。从整体上来说,我们也做到了业务部门的流量(部门1和部门2)和IT管理的流量(Management和vMotion)隔离。

最后我们看到图中每个虚拟交换机我们都设置了2个上行链路(冗余),这样单虚拟交换机需要2个物理网卡,4个虚拟交换机就需要8个物理网卡,这时候我们就要考量这台服务器是否有能力通过PCI插槽来接入这么多网卡了,因为PCI插槽还可能有连接阵列卡等设备的需求。

Tips:

不要因为你能创建多个虚拟交换机就去创建,要根据实际需求和硬件设备来具体分析,建议通过尽量少的虚拟交换机来实现需求。

标准交换机

标准交换机是通过ESXi主机来创建和管理的,这就意味着当你有多台ESXi主机时,你就要分别去每一台ESXi上创建标准交换机里的端口组等设置,可能这个工作量还不算什么,但是当一年之后你要去修改端口组,或者扩展端口组呢?(这种需求应该可以叫做Day2 operation吧)。

因为标准交换机不能集中管理,也许我们可以通过一些自动化脚本来实现,但自动化脚本也要适应上面提到的Day2 operation, 所以管理员的开销还是挺大的。

通过创建或者编辑标准交换机的操作界面,我们大致能了解到一些它的功能:

Layer2交换

IPv6

VLAN

网卡绑定

出口流量整形

安全策略

绑定和故障切换策略

总的来说,标准交换机可以解决大部分小型部署中的虚拟网络需求,我们应该避免在中型或大型部署中使用标准交换机,或者可以保留的使用有限的功能。更多的虚拟网络需求通过分布式交换机或者NSX来实现。

分布式交换机

分布式交换机在标准交换机的基础上,增加了一些额外的功能,而且提供了集中管理的接口。

比如:

入口流量整形

网卡绑定和故障切换策略中基于负载的绑定

端口洪泛控制

私有VLANs

以端口为单位的策略设置

端口镜像

NetFlow监控

端口状态监控

分布式交换机示意图

如图是个基于2台ESXi主机设置的分布式交换机示意图

所谓的集中管理,分布式交换机不是在ESXi主机上创建的,而是vCenter。在vCenter中在数据中心的Actions菜单中可以选择分布式交换机,然后创建或者导入。分布式交换机上的流量并不会通过vCenter来转发,来看一个分布式交换机的架构图。

分布式交换机架构图

从图中我们可以看到,vCenter上是分布式交换机的一个模板,设定了端口组,上行链路的个数。需要把ESXi主机加入分布式交换机,这时候就把交换机的模板推送到了加入的ESXi主机上,并且可以指定ESXi上的哪个物理网卡为分布式交换机的上行链路使用。ESXi主机上有一个Host proxy switch,它用来接收vCenter推送的模板,这样交换功能其实还是在ESXi主机上实现的。Day2 operation需要的设置可以在vCenter的模板上修改,就会推送到各个连接该分布式交换机的ESXi主机上,这就是集中管理。

这种架构,在vCenter上的分布式交换机实例被叫做控制平面/Control plane,交换机的管理是在这里实现的。在ESXi上的Host proxy switch被叫做数据平面/Data plane,交换机的数据交换是在这里发生的。

最后,来看一个多台ESXi所连接的分布式交换机的拓扑图吧。

分布式交换机拓扑图

左侧为端口组,我把vCenter自己单独放了一个端口组,把VMkernel放在一个端口组,剩余VM放在一个端口组。因为没有设置VLAN,实际上这几个端口组是可以互通的。

右侧为上行链路,这里我每个ESXi主机只设置了一个上行链路,对应一个ESXi上的vmnic。

如果win10这台虚拟机在esxi01这台主机上,u2004这台虚拟机在esxi02这台主机上,两台同在一个端口组的虚拟机,从拓扑图看来,直接在虚拟交换机就能交换数据,实际上,还是要通过各自的上行链路走到物理交换机才能交换数据的。

vSphere虚拟网络02 - 虚拟交换机相关推荐

  1. 节点服务器虚拟网络,虚拟网络功能节点放置研究

    摘要: 在互联网时代虚拟网络研究成为拓展延伸计算机网络的主要技术,主要应用于网络技术和构架,既能够突破网络交换问题,又能够灵活性的利用网络技术实现网络共享.虚拟网络功能节点的有效放置可以有效突破物理底 ...

  2. 保证业务高效运营 专有云虚拟网络是关键

    随着越来越多的企业用户上云,且客户业务场景多种多样的情况下,云计算面临的挑战也越来越多.如企业多 IDC.异地办公区.远程运维人员接入到企业内网需要一致的体验等场景下,还要提供高可靠.安全和易维护的网 ...

  3. Hyper-V应用指南之3-理解并配置Hyper-V虚拟网络[转]

    3 理解并配置Hyper-V虚拟网络 在Hyper-V中,虚拟网络分为三种"外部"."内部"."专用",这些虚拟网络与主机.虚拟机以及网络中 ...

  4. VMware-重要设置-虚拟网络编辑器

    一.概述 虚拟网络编辑器是VMWare中一个比较容易被忽视的强大功能组件. 您可以使用虚拟网络编辑器执行以下操作:查看和更改关键网络连接设置,添加和移除虚拟网络以及创建自定义虚拟网络连接配置.在虚拟网 ...

  5. oracle ldom ipmp,在 Oracle VM Server for SPARC 虚拟网络中使用基于链路的 IPMP

    在 Oracle VM Server for SPARC 虚拟网络中使用基于链路的 IPMP 虚拟网络设备和虚拟交换机设备支持网络堆栈的链路状态更新.默认情况下,虚拟网络设备会报告其虚拟链路(到虚拟交 ...

  6. 使用VMware搭建虚拟网络

    一.实验目的 通过本实验可以: ① 了解VMware虚拟机软件的应用和特点: ② 掌握利用VMware 搭建单一子网的方法: ③ 掌握利用VMware 搭建具有路由功能的多个子网的方法: 为网络安全基 ...

  7. 使用 Azure CLI 管理 Azure 虚拟网络和 Linux 虚拟机

    Azure 虚拟机使用 Azure 网络进行内部和外部网络通信. 本教程将指导读者部署两个虚拟机,并为这些 VM 配置 Azure 网络. 本教程中的示例假设 VM 将要托管包含数据库后端的 Web ...

  8. 使用 Azure PowerShell 管理 Azure 虚拟网络和 Windows 虚拟机

    Azure 虚拟机使用 Azure 网络进行内部和外部网络通信. 本教程介绍了如何在虚拟网络中创建多个虚拟机 (VM),以及如何在虚拟机之间配置网络连接. 你将学习如何执行以下操作: 创建虚拟网络 创 ...

  9. 计算机虚拟网络拨号技术,虚拟技术计算机网络论文

    1计算机网络技术的应用领域 1.1虚拟网络技术 虚拟网络技术是世界上最广泛使用的网络技术之一,是一种非常先进的技术,受到大家广泛的认可,在一定程度上推动了计算机网络技术的发展.例如,企业或组织可以利用 ...

  10. Linux网络知识详解以及demo(Centos6、7)——OSI、TCP、UDP、IP、子网掩码/划分、网关、路由、广播、虚拟网络、网卡、交换机、DNS、ARP

    ip地址:网络通讯标识信息 子网掩码:在局域网中可以有多少个主机 网关:从一个局域网到另一个局域网的必经之路 网络号:主机位全为0 广播地址:主机位全为1 子网掩码:网络位全为1,主机位全为0 虚拟软 ...

最新文章

  1. 重磅推荐:中国人工智能趋势报告(完整版)
  2. Python中将dict转换为kwargs
  3. Everything的下载
  4. java安装的时候无效参数,spring-boot 打成jar把后 启动时指定参数无效
  5. 尝试AD19从焊盘中间出线
  6. GIT更新一其中一个提交版本
  7. 接口自动化测试框架搭建(9、自动化测试case的编写)--python+HTMLTestRunnerCN+request+unittest+mock+db
  8. 【互动出版网】央视热播BBC纪录片同名图书买二赠一活动
  9. iOS最全学习资源汇总
  10. 终于找到淘口令的坑了
  11. AAC MP3音频帧采样点大小
  12. 从全面了解高级计量经济学体系+stata实操+实证研究前沿+论文+大数据机器学习+空间计量......._Stata高级计量经济学 陈强
  13. Windows获取本机公网ip脚本
  14. 【前端用法】html5实现地理位置定位(JS获取当前地理位置的方法)
  15. 【论文】学术论文写作总结
  16. android otg 挂载流程,android USB OTG功能如何打开及实现
  17. 2.石头游戏(坑爹)
  18. 【图像分割】基于麻雀算法优化Kmeans实现图像分割附Matlab代码
  19. linux卸载gdb命令,Linux_Unix卸载gdb调试工具出现问题的解决方法,  Unix系统通过命令能够卸载 - phpStudy...
  20. Cris 玩转 Linux 之 Deepin 迁移全过程记录

热门文章

  1. s3f9454可c语言编程,微处理器S3F9454BZZ-DK94
  2. 微信 小程序 python 渲染_微信小程序python用户认证的实现
  3. 微信小程序data-xx 的使用
  4. shell获取本机ip地址
  5. 如何使用css3做简单的动画效果?
  6. php max file uploads,php上传多文件max_file_uploads限制问题
  7. PS全套抠图技法教程,快速抠头发/抠婚纱,带配套素材
  8. 论文的参考文献怎样标注?
  9. SVN 配置ip访问
  10. 【Uly】团队&团队博客成立典礼~~