一、虚拟交换机的网络介绍

在物理环境之中,主机是通过pSwitch连接到网络当中。而在虚拟化环境中,ESX提供了vswitch和dvswitch。ESX的虚拟主机通过vSwitch来连接网络。vSwitch是通过主机上的物理网卡作为上行链路与外界网络进行连接。

如图所示:

跟普通服务器设备一样,每个虚拟机有着自己的虚拟网卡(virtual NIC),每个 virtual NIC有着自己的MAC地址和IP地址。 Virtual Switch(vSwitch)相当于一个虚拟的二层交换机, ABCDE便是交换机上的虚拟端口vPort,该交换机连接虚拟网卡和物理网卡,将虚拟机上的数据报文从物理网口转发出去。根据需要,vSwitch 还可以支持二层转发、安全控制、端口镜像等功能。

每个vSwitch与物理交换机一样,包含一定数量的端口,相同特性的虚拟端口vPort集合就是端口组;vSwitch端口逻辑上可分为三种类型:

  1. 虚拟机端口组,用于虚拟网络连接

  2. VmKernel端口:用于VMotion网络、iSCSI/NFS网络、ESX/ESXi管理网络(ESXi中没有Service Console)

  3. Service Console端口:用于ESX Service Console管理网络,如:vSphere Client和vCenter就是使用此网络管理ESX

二、虚拟交换机的功能及配置

ESX的vSwitch是当前虚拟化产品中功能较为全面和易于管理的一款虚拟化交换机。他主要有以下几个功能:

ESX/ESXi    Standard Vswitch
功能 说明
多网络管理 在vSwitch作为全局的虚拟交换机管理基础上,vNetwork细分了每个vlan下的虚拟主机的安全管理,流量控制及网卡绑定规则
流量控制 定义vPort(端口组)中的流量进行控制策略
安全管理 简单的网络安全管理
网卡绑定 主要用于网络冗余及负载均衡

多网络管理

我们知道在数据中心中不可能只有一个网络,比如为webgame服务器和注册站reg服务器分配在不同的vlan;那么在虚拟网络环境中如何做到多个网络环境并存? vSwitch与物理交换机一样可通过配置Vlan实现多网络并存。

物理交换机上配置Vlan后,两台交换机之间通过Trunk通道传输vlan标记信息;与物理交换机相似,在vSwitch中可在虚拟机端口组vNetwork、VMkernel端口上配置Vlan信息,与外界物理网络Vlan间的通信也需要在vSwitch上行链路上配置Trunk通道。

以下以实例介绍配置步骤:

ESX的vSwitch0和vSwitch1的上联分别由两张物理网卡连接组成的teaming,接入交换机并配置vSwitch0上不同的vlan网络分别为ESX管理网络,iscsi,vSwitch1上不同的vlan网络分别为 webgame,reg。通过不同的vNetwork来细化虚拟机的流量策略,网络绑定策略,安全控制等

在交换机上配置与ESX服务器相连的端口为TRUNK

Switch(config)#interface range TenGigabitEthernet 1/11-14

Switch(config-if-range)#switchport mode trunk

Switch(config-if-range)#switchport trunk allowed vlan all

流量控制

控制vSwitch下的虚拟机简单流量策略,支持虚拟机平均流量控制,虚拟机流量峰值管理,突发流量控制等。也可以在vNetwork中进行配置,vNetwork的优先级高于vswitch。

安全控制

Promiscuous Mode虚拟交换机的混杂模式。开启该模式,所有vNic的报文会复制到vSwitch的所有vPort上面

MAC Address Changes:是否允许虚拟机的网卡变更,如果禁止的话,在修改了MAC地址的vm所有报文将不能够被转发。

Forged Transmits:一个和MAC地址相关的安全配置,当允许了MAC address changes后,修改了MAC地址的VM,可以成功的转发报文。

在NLB的单播模式,需要允许MAC address changes 和 forged transmits 因为单播模式会修改主机的MAC地址。如果禁止的话,会被vSwitch过滤。

网卡绑定

VMware建议ESX中的三种网络类型最好配置不同的Vlan,并且使用不同的上行物理链路分配流量,并且为了保证故障冗余,每个网络类型至少关联2块网卡。这就需要在vSwitch进行网卡绑定。

ESX NIC teaming,相当于vSwitch与交换机的聚合,通过下图可以看到,vSwitch网卡绑定主要功能有:

  1. 网络的负载均衡

  2. 网络故障切换检测

  3. 交换机通知

  4. 故障恢复

1.  ESX的网络负载均衡的3种方式

(1) 基于端口的负载均衡(默认) (Route based on the originating virtual port ID)

这种方式下,负载均衡是基于vPort ID的。一个vPort和ESX主机上的一个pNIC(从vSwitch角度看就是某个uplink)捆绑在一起,只有当这个pNIC失效的时候,才能切到另外的pNIC链路上。这种方式的负载均衡只有在vPort数量大于pNIC的数量时才生效。

什么是vPort呢?形象的说就是vSwitch交换机上的一个端口

因为基于vPort id的负载均衡,VM是vNIC绑定在其中的一个PNIC上,他的uplink速率不可能大于单个PNIC,只有当VM的数量大于PNIC的时候,所以vPort的负载均衡就是VM各个vPort之间的负载均衡。
(2) 基于源MAC的负载均衡(Route based on source MAC hash

这种方式下,负载均衡的实现是基于源MAC地址的。因为每个vNIC总是具有一个固定的MAC地址,因此这种方式的负载均衡同基于端口的负载均衡具有同样的缺点。同样是要求vPort数量大于pNIC的时候才会有效。同样是vNIC的速率不会大于单个pNIC的速率。
(3) 基于IP hash的负载均衡(Route based on IP hash)

这种方式下,负载均衡的实现是根据源IP地址和目的IP地址的。因为同一台VM(源IP地址总是固定的)到不同目的的数据流,就会因为目的IP的不同,走不同的pNIC。只有这种方式下,VM对外的流量的负载均衡才能真正实现。但是VMware的负载均衡(Load Balancing)只是出站(Outbound)的负载均衡,入站流量的负载均衡就需要在物理交换机上配置静态AP。 VMware不支持动态链路聚合协议(例如802.3ad LACP或者Cisco的PAgP).

交换机配置:

Switch(config)#interface range TenGigabitEthernet 1/13-14

Switch(config-if-range)#port-group 1

Switch(config-if-AggregatePort 1)#switch mode trunk

Switch(config-if-AggregatePort 1)#exit

Switch(config)#aggregateport load-balance src-dst-ip

ESX的三种负载均衡优缺点:

负载均衡方式 优点 缺点
基于端口的负载均衡

配置容易,

不需要配置pSwitch,可以跨pSwitch实现链路冗余

Vnetwork还可以选择SMAC的负载均衡方式

对于某个VM,最大的带宽就是某个PNIC的带宽

基于源MAC的负载均衡

配置容易不需要配置pSwitch,可以跨物理交换机实现链路冗余

Vnetwork还可以选择vport的负载均衡方式

对于某个VM,最大的带宽就是某个PNIC的带宽

基于IP hash的负载均衡

能够真正的利用网卡多链路的冗余及扩容

需要在pSwitch配置静态AP

不能够跨交换机实现冗余

Vnetwork必须和vswitch配置相同的负载均衡策略

2.  网络故障切换检测(Network failover Detection)

ESX提供了两种方式的网络故障检测分别为link status only(仅链路状态) 和 beacon probing(信标探测),下面用图表来说明两者的主要优缺点:

a.  Link status only:仅判断网络链路的up 和down状态

b. Beacon probing: vswitch的每个物理网卡周期性的发送广播信号报文,实现网络链路检测。

beacon报文如下:

网络故障检测方式 优点 缺点
link status only(仅链路状态) 

能够检测链路状态的up和down状态

不会造成额外的网络开销

需要交换机支持“Link state tracking”

无法判断链路的配置是否正确,报文是否正常转发

 beacon probing(信标探测)

能够检测链路状态

能够确保网络的连通情况

发送信号广播报文,有额外的网络开销

只有两个网卡绑定的物理网络无法使用

3.    交换机通知(Notify switches)

ESX的交换机通知是用于在VM发生链路变更及vm迁移的时候,用来通告物理交换机,保障物理交换机上能够感知虚拟机的端口变化并更新MAC地址表。

4.    故障恢复(Failback)

ESX默认配置Failback为YES,当Teaming中的网卡恢复后,会依照failover设定好的故障切换顺序,还原Teaming中的PNIC优先级。

三、分布式虚拟交换机

Dvswitch:分布式虚拟交换机是主要是为了简化数据中心的虚拟网络连接,它可以将跨多个 ESX/ESXi主机将网络连接聚合到一个集中的集群级别。 Distributed Switch 可对各个虚拟机的配置进行抽象化处理,并通过Vcenter实现集中部署、管理和监控。原来每ESX标准交换机分别配置,现在vCenter Distributed vSwitch可在数据中心级别集中配置、管理,并且在vSphere 4.0中除了可以使用VMware内置的Distributed vSwitch外,还支持加载第三方厂商的交换模块,比如Cisco针对vSphere虚拟网络环境开发的nexus 1000v 和 nexus 1010。Dvswitch逻辑架构图:

通过dvswitch,配置不同类型的dvport模板,将数据中心中同一类型vnetwork中的vm迁移到对应的dvport,大大提高了虚拟机的管理效率。

下面我们通过实例将vm接入Dvswitch:

实验目的:在虚拟数据中心lixukai,创建一个dvswitch,并将数据中心的vm1和vm2服务器中的虚拟机,由vswitch迁移至dvswitch。

  1. VM1迁移前:

2. VM2迁移前

3. 迁移后

通过上图,不仅可以很清楚的看到数据中心的网络情况,并且通过定义了多个不同的分布式端口组的方式,大大提搞了vSwitch的布署效率。

Dvswitch优点:

数据中心布署环境 布署10台ESX,每个ESX有10个vnetwork 耗时(假设每个vnetwork需要10min)
vswitch 分别创建vnetwork,一共需要创建100个vnetwork 耗时= 1000min
Dvswitch 通过vCenter一次性创建10个dv_network,并将10台ESX接入dvswitch即可 耗时100min

四、总结:

本章介绍的仅仅是虚拟化的一个很小的方面。随着虚拟化技术蓬勃兴起,它正在走向数据中心的各个领域,服务器虚拟化,交换机虚拟化桌面虚拟化。最终还是要落实到如何实实在在的应用上。

  1. 如何提高业务用户的访问速度

  2. 提高业务访问的稳定性

  3. 节省业务的带宽成本

  4. 增加业务持续运行时间,增加可靠性

  5. 减少业务的数据丢失风险

  6. 降低业务异常的维护时间

  7. 减少业务计划内的维护时间

  8. 减少业务硬件成本

  9. 给业务运营分析,业务改进提供数据支持

带着这些问题,我们更深入的去了解、学习和应用虚拟化,一起努力把我们的虚拟化产品做好。

转载于:https://blog.51cto.com/52czy/1429529

vmware虚拟化之vswitch详细资料相关推荐

  1. 【VMware虚拟化解决方案】服务器虚拟化案例

    文章来源:http://blog.51cto.com/crazy123/1388784 服务器虚拟化建议方案 前 言 1公司IT现状 1.1服务器资源利用率不高 1.1.1 CPU资源利用率 1.1. ...

  2. 【VMware虚拟化解决方案】 基于VMware虚拟化平台VDI整体性能分析与优化

    一.说一说 本来打算将前期项目里面出现的问题的分析思路与解决方法写出来,第一.疏导一下自己的思路,第二.分析并找出自身在技术层面所存在欠缺.但由于每个人都有一根懒经所以迟迟未动.今天突然发现51CTO ...

  3. 【VMware虚拟化解决方案】配置和部署VMware ESXi5.5

    [VMware虚拟化解决方案]配置和部署VMware ESXi5.5 马博峰 在安装ESXi5.5之前,需要对要对整个环境进行设计和规划,由于虚拟化涉及服务器技术.网络技术和存储技术等多项技术,所以虚 ...

  4. VMware虚拟化--ESXi安装时考虑因素

    VMware虚拟化--ESXi安装时考虑因素 虚拟化不仅仅是将服务器虚拟化了,同时包括了网络,存储等,所以在搭建虚拟化环境之前一定要规划好虚拟化的架构. 搭建虚拟化环境首先要解决几个问题: 1. 安装 ...

  5. vmware虚拟化(二)安装vsphere5.1

    vmware虚拟化(二)安装vsphere5.1 安装前的准备(环境) 一台域控制器 一台sql2008数据库 二.安装vCenter服务 在数据库里创建一个数据库,名字就叫vCenter 1.添加数 ...

  6. VMware 虚拟化编程(15) — VMware 虚拟机的恢复方案设计

    目录 目录 前文列表 将已存在的虚拟机恢复到指定时间点 恢复为新建虚拟机 灾难恢复 恢复细节 恢复增量备份数据 以 RDM 的方式创建虚拟磁盘 创建虚拟机 Sample of VirtualMachi ...

  7. VMware 虚拟化编程(14) — VDDK 的高级传输模式详解

    目录 目录 前文列表 虚拟磁盘数据的传输方式 Transport Methods Local File Access NBD and NBDSSL Transport SAN Transport Ho ...

  8. VMware 虚拟化编程(13) — VMware 虚拟机的备份方案设计

    目录 目录 前文列表 备份思路 备份算法 备份细节 连接到 vCenter 还是 ESXi 如何选择快照类型 是否开启 CBT 如何获取备份数据 如何提高备份数据的传输率 备份厚置备磁盘和精简置备磁盘 ...

  9. VMware 虚拟化编程(12) — VixDiskLib Sample 程序使用

    目录 目录 前文列表 vixDiskLibSample 安装 Sample 程序 Sample 程序使用方法 前文列表 VMware 虚拟化编程(1) - VMDK/VDDK/VixDiskLib/V ...

最新文章

  1. R.Java文件报错
  2. 监听UIWebView点击视频播放的事件
  3. Ubuntn系统忘记密码的解决方法(虚拟机下同样处理)
  4. 板邓:PHP获取当前页面url地址、参数
  5. Day38:进程与线程
  6. seaborn 教程_使用Seaborn进行数据可视化教程
  7. android滑屏设计规范,安卓设计如何实现滑动屏幕出现如图的效果
  8. Android 存储学习之在内部存储中读写文件
  9. js调用Bartender
  10. linux dos2unix
  11. python自带的库有哪些_python自带库
  12. DRAM原理-Storage Cell
  13. 阴阳师服务器维护2月20,阴阳师2月20日官方更新公告 阴阳师2月20日更新内容汇总...
  14. Unable to open JDBC Connection for DDL execution
  15. 【Office】Office小技巧
  16. 8K播放网络全终端播放器H5播放器网页直播/点播播放器EasyPlayer和vlc播放RTSP流地址不兼容问题排查解决
  17. 【操作系统】CSAPP学习笔记
  18. Ceph Octopus新版新功能:图形化Dashboard
  19. 360网站卫士 PHP-DOS攻击脚本专杀工具使用笔记
  20. springboot的RestTemplate客户端模式取得uaa的token

热门文章

  1. 国产激光雷达厂商禾赛科技B轮融资2.5亿元,光速中国和百度领投
  2. 如何查看linux中的ssh端口开启状态
  3. 一个优雅地探索相关性的新可视化方法
  4. POJ 1065 Wooden Sticks(LIS,最少链划分)
  5. windows 下eclipse 连HBASE
  6. IE6layout元素自动包含浮动元素
  7. Linux下PCI设备驱动程序开发[转]
  8. java中常用的一些方法
  9. 我的Ubuntu7.10安装后的配置
  10. 《剑指Offer》题目:合并两个排序的链表