《精通VMware vSphere 6》——第1章 VMware vSphere 6 简介 1.1VMware vSphere 6初探

本节书摘来自异步社区《精通VMware vSphere 6》一书中的第1章,第1.1节,作者:【美】Nick Marshall(马歇尔) , Grant Orchard(欧查德) , Josh Atwell(特威尔)著,更多章节内容可以访问云栖社区“异步社区”公众号查看

第1章 VMware vSphere 6 简介

VMware vSphere 6是基于上一代VMware的企业级虚拟化产品。vSphere 6进行了扩展,现在可以对更多资源类型进行精细的资源分配控制,从而使VMware管理员能够更好地控制虚拟工作负载的资源分配方式和使用方式。由于在套件中整合了动态资源控制、高可用性、史无前例的容错特性、分布式资源管理和备份工具,IT管理员可以获得管理不同规模企业环境(从几台至上千台服务器)所需要的工具。

1.1 VMware vSphere 6初探

VMware vSphere产品套件是一个包含多个产品与特性的集合,它们一起提供了完整的企业虚拟化功能。vSphere产品套件包括以下产品与特性:

  • VMware ESXi;
  • VMware vCenter Server;
  • vSphere更新管理器(Update Manager);
  • VMware vSphere客户端和vSphere Web客户端;
  • VMware vCenter Orchestrator;
  • vSphere虚拟对称多路处理(Virtual Symmetric Multi-Processing,vSMP);
  • vSphere vMotion和Storage vMotion;
  • vSphere分布式资源调度器(Distributed Resource Scheduler,DRS);
  • vSphere Storage DRS;
  • Storage I/O Control和Network I/O Control;
  • 基于策略的存储管理(Storage-Based Policy Management,SBPM);
  • vSphere高可用性(High Availability, HA);
  • vSphere对称多处理容错(vSphere Symmetric Multi-Processing Fault Tolerance,SMP-FT);
  • vSphere存储API;
  • 虚拟SAN(VSAN);
  • vSphere复制(vSphere Replication);
  • vSphere Flash Read Cache;
  • vSphere内容库(vSphere Content Library)。

这些产品与特性将会在本书后面的章节中介绍,但在此之前,本章的后面几节中将会简要介绍每一种产品或特性,并将借此介绍每一种产品或特性对虚拟基础架构设计、安装和配置的影响。在简要介绍完vSphere套件的特性与产品之后,读者就能够更好地把握每一种产品或特性在虚拟化设计及整体架构中的作用。

在vSphere产品之外还有一些附加产品,它们用新的功能扩充了vSphere产品线。这些附加产品包括:VMware Horizon View、VMware vRealize Automation和VMware vCenter Site Recovery Manager等。VMware甚至将vSphere和vCloud 套件中的其他产品捆绑为一个套件,让客户在环境中购买和使用产品时更加便捷。然而,由于这些产品的大小与范围的原因,本书不会介绍这些产品。

在编写本书时,VMware vSphere 6.0是VMware vSphere产品家族中的最新版本。虽然本书主要介绍版本6.0的功能,但在可能的情况下,也会尽量说明vSphere版本之间的差别。关于VMware vSphere 5.0的详细信息,请参考同样由Sybex于2011年出版的“Mastering VMware vSphere”系列图书。
1.1.1 认识vSphere套件的产品
本节将介绍vSphere产品套件中的产品。

1.VMware ESXi
vSphere产品套件的核心产品是虚拟机管理程序,作为一个虚拟化层次,它是产品线中的其他产品所依赖的基础。在vSphere 5及后续版本(包括vSphere 6)中,虚拟机管理程序就是VMware ESXi。

VMware vSphere的长期用户会发现,这是VMware提供虚拟机管理程序的方式的一种转变。在之前的vSphere 5中,虚拟机管理程序有两种形式:VMware ESX和VMware ESXi。虽然这两种产品都使用同一个核心虚拟化引擎,都支持相同的虚拟化特性和使用相同的授权方式,而且都支持裸机安装虚拟管理程序(也称为类型1虚拟管理程序;参考类型1和类型2的虚拟管理程序),但它们在架构上仍然存在显著差别。在VMware ESX中,VMware使用Linux衍生服务控制台(Service Console)来提供交互环境,用户可以通过这个交互环境使用虚拟机管理程序。基于Linux的服务控制台还包含传统操作系统中的服务,如防火墙、简单网络管理协议(SNMP)代理和Web服务器。

类型1与类型2的虚拟机管理程序
 

虚拟机管理程序一般分成两类:类型 1 和类型 2。类型 1 虚拟机管理程序直接运行在系统硬件之上,因此通常也称为裸机虚拟机管理程序。类型2虚拟机管理程序则需要使用主机操作系统,由主机操作系统负责提供I/O设备支持和内存管理。VMware ESXi是类型1的裸机虚拟机管理程序(在旧版本的vSphere中,VMware ESX也被认为是一种类型1裸机虚拟机管理程序)。其他的类型1裸机虚拟机管理程序还包括KVM(开源Linux内核的一部分)、微软Hyper-V和基于开源Xen虚拟机管理程序的产品,如Citrix XenServer和Oracle VM。
另一方面,VMware ESXi是下一代VMware虚拟化平台。与VMware ESX不同,ESXi的安装和运行并不需要基于Linux的服务控制台。这使得ESXi体积超小,仅有130MB。尽管没有服务控制台,但是ESXi提供了VMware ESX早期版本所支持的全部虚拟化特性。当然,ESXi 6.0相对于旧版本进行了功能升级,支持更多的功能,本章及后面的章节将会介绍这些功能。

VMware ESXi之所以能够在不使用服务控制台的前提下支持VMware ESX的诸多原有虚拟化功能,其关键原因是核心虚拟化功能过去(和现在都)不属于服务控制台。虚拟化进程的基础是VMkernel。VMkernel提供了CPU调度、内存管理和虚拟交换数据处理,从而管理虚拟机对底层物理硬件的访问。图1.1所示为VMware ESXi的结构。

screenshot

前面提到过,VMware ESXi 6.0是旧版本的升级版,其中一个改进的方面就是虚拟管理程序的支持配置限制。表1.2显示了最新版本的VMware ESX/ESXi的配置限额。

这里只列出了部分配置的限额值。后续章节会在恰当的时候介绍VMware ESXi的网络接口卡(NIC)、存储、VM等其他限额值。

由于VMware ESXi是vSphere产品套件的虚拟化基础,因此本书会用大量的篇幅介绍VMware ESXi。表1.2已经列出了本书其他章节将会介绍的VMware ESXi特性。

screenshot

2.VMware vCenter Server
不妨先用短暂的时间考虑一下自己目前的网络。它现在包含Active Directory吗?通常这是很有可能的。现在想象一下,如果网络中没有Active Directory,没有方便的中央管理数据库,没有单点登录功能,也没有简单的群组功能,那么情况会有多糟糕。如果不使用VMware vCenter Server,那么管理VMware ESXi主机也会出现类似的状况—非常麻烦!所以说,vCenter Server就像是Active Directory,可以为所有ESXi主机及其虚拟机提供中央管理平台和架构。vCenter Server允许IT管理员以集中方式部署、管理和监控虚拟基础架构,并实现自动化和安全性。为了帮助实现可扩展性,vCenter Server使用了一个后台数据库(其中支持Microsoft SQL Server和Oracle以及其他的多种数据库),用于存储所有关于主机与虚拟化的数据。

在旧版本的VMware vSphere中,vCenter Server只支持Windows平台。vSphere 6仍然提供了基于Windows的vCenter Server安装程序和一个预构建的vCenter Server设备(实际上是一个虚拟设备,第10章将会介绍)。对于只想管理vSphere环境而不想部署Windows Server实例的组织来说,基于Linux的vCenter Server设备是个很好的选择。

除了vCenter Server的配置与管理功能—其中包括虚拟机模板、虚拟机定制、虚拟机快速分配与部署、基于角色的访问控制和精细资源分配控制等特性,vCenter Server还提供了一些包含更高级特性的工具,如vSphere vMotion、vSphere分布式资源调度器(DRS)、vSphere高可用性(HA)和vSphere容错(FT)。本章将概括介绍所有这些特性,而在后续章节将会对其进行更深入的介绍。

除了vSphere vMotion、vSphere DRS、vSphere HA和vSphere FT,使用vCenter Server管理ESXi主机还有许多的其他特性。

增强的vMotion兼容性(EVC):它利用英特尔和AMD的硬件功能在vSphere DRS集群中各个服务组上实现更大的CPU兼容性。
主机配置文件:它允许管理员在更大型环境中实现更加统一的主机配置,以及发现缺少或不正确的配置。
存储I/O控制:它提供了整个集群范围的服务质量(QoS)控制,使管理员能够保证关键应用程序在拥塞期间仍然能够接收到足够的I/O资源。
vSphere分布式交换机:它是网络设置和跨多个主机和多个集群的第三方虚拟交换机的基础。
网络I/O控制:它允许管理员灵活地为不同种类的流量划分物理NIC带宽并提供QoS。
vSphere存储DRS:它使VMware vSphere能够根据需要动态缩减存储资源,其方式与DRS平衡CPU与内存使用的方式相同。
在各种规模的VMware vSphere实现中,vCenter Server都发挥着中枢作用。第3章不但会介绍vCenter Server的规划与安装,以及保证其可用性的方法,还会介绍vCenter Server的Windows版与Linux版虚拟设备的区别。由于vCenter Server在VMware vSphere部署中发挥中枢作用,本书的各个章节几乎都会提及 vCenter Server。具体可参考表1.1的交叉引用。

vCenter Server包含在下面2款软件包中。

vCenter Server Essentials(入门版)集成在适用于小型办公部署的vSphere Essentials(入门版)套件中。
vCenter Server Standard(标准版)包含了vCenter Server的所有功能,其中包括分配、管理、监控和自动化。
1.1.3节将更详细地介绍VMware vSphere的授权与产品版本等信息。

3.vSphere Update Manager
vSphere更新管理器(Update Manager)是vCenter Server的一个加载项,它能够帮助用户为ESXi主机与所选虚拟机更新最新补丁。VSphere更新管理器包含以下功能:

通过扫描发现不兼容最新更新的系统;
通过用户自定义规则发现过期系统;
为ESXi主机自动安装补丁;
完全兼容其他vSphere特性,如分布式资源调度器。
vSphere更新管理器兼容Windows版本的vCenter Server和预打包的vCenter Server虚拟设备。参考表1.1,了解本书所介绍vSphere更新管理器的更详细信息。

4.VMware vSphere Web客户端和vSphere 客户端
vCenter Server提供了一个VMware ESXi主机的集中管理框架,但是vSphere管理员大多数时间会使用vSphere Web客户端(及其以前的版本,兼容Windows版本的vSphere客户端)。

在vSphere 5发布之后,VMware将主要管理界面转移到了新的vSphere Web客户端上。vSphere Web客户端提供了一个动态的Web用户界面,它可以管理虚拟基础架构,帮助vSphere管理员直接管理基础架构,而不需要在系统上安装基于Windows的vSphere客户端。然而,后续版本­(包括vSphere 6)中的vSphere Web客户端都加强和扩展了vSphere管理员管理vSphere环境时需要用到的所有功能。此外,VMware还声明vSphere Web客户端将最终完全取代基于Windows的vSphere客户端。因此,本书中的所有图例都截取自vSphere Web客户端。

vSphere客户端一个基于Windows的应用程序,它可以管理ESXi主机,方式可以是直接连接,也可以是连接一个vCenter Server实例,但VMware的开发重点则主要在vSphere Web客户端上。浏览ESXi主机或vCenter Server的URL,选择相应的安装链接(在一些时候下载客户端需要互联网连接),就可以安装vSphere客户端。vSphere客户端提供了富图形用户界面(GUI),它可以完成日常管理任务,以及虚拟基础架构的高级配置。虽然vSphere客户端可以直接连接一个ESXi主机,或者连接一个vCenter Server实例,但是只有当vSphere客户端连接到vCenter Server时才能使用完整的管理功能。

如前所述,vSphere Web客户端是VMware vSphere的未来发展方向。因此,本书重点介绍如何使用vSphere Web客户端。vSphere客户端中的任务也是类似的,但请注意,有些任务只能在vSphere Web客户端上执行,而不能在基于Windows的vSphere客户端上完成。

5.VMware vRealize Orchestrator
VMware vRealize Orchestrator是一个工作流自动化引擎,它自动安装在vCenter Server的每一个实例上。使用vRealize Orchestrator,vSphere管理员就可以为vCenter Server中各种任务建立自动化工作流。使用vRealize Orchestrator建立的自动化工作流可以很简单也可以很复杂。VMware还将vRealize Orchestrator设计为插件,可以扩展功能,如操作Microsoft Active Directory、思科的统一计算系统(UCS)和vRealize Automation。这使vRealize Orchestrator成为虚拟化数据中心内强大的自动化工作流创建工具。

前面介绍了VMware vSphere产品套件的具体产品,接下来将更详细地介绍一些重要特性。

1.1.2 认识VMware vSphere的特性
本节将更详细地介绍vSphere产品套件所提供的一些特性。首先是虚拟SMP。

1.vSphere vSMP
vSphere虚拟对称多路处理(Virtual Symmetric Multi-Processing,vSMP或Virtual SMP)产品允许虚拟基础架构管理员创建具有多个虚拟处理器的虚拟机。vSphere vSMP并不是允许将ESXi安装在多处理器服务器的授权产品;它是一种在虚拟机内部使用多处理器的技术。图1.2说明了ESXi主机系统多处理器与多个虚拟处理器之间的区别。

screenshot

通过vSphere vSMP,需要使用多个CPU的应用程序就可以运行在配置多个虚拟CPU的虚拟机上。这样就可以在不影响性能的前提下,虚拟化更多的应用程序,从而达到服务水平协议(SLA)的要求。

vSphere 5还允许用户为每个虚拟CPU指定多个虚拟核心,从而进一步扩展其功能。通过使用这个特性,用户就可以创建一个双处理器虚拟机,由于每个处理器带有2个核心,因此总共有4个虚拟核心。这样用户就可以非常灵活地定制虚拟机的CPU处理能力。

2.vSphere vMotion和vSphere Storage vMotion
了解VMware的读者可能会知道一个非常有用的特性:vMotion。vSphere vMotion也称为动态迁移(Live Migration),它是ESXi和vCenter Server的特性,允许管理员将一台正在运行的虚拟机从一台物理主机迁移到另一台物理主机,而不需要关闭虚拟机。当虚拟机在两台物理主机之间迁移时,完全不会引起停机,也不会中断虚拟机的网络连接。根据需要在物理主机之间拖动迁移一台正在运行的虚拟机,是一个适合现代数据中心且广泛使用的强大特性。

假设有一台物理主机遇到非致命性硬件故障,并且需要修复。那么,管理员可以轻松地创建一系列vMotion操作,删除ESXi主机上的所有需要进入维护的虚拟机。在维护完成之后,服务器会重新启动上线,管理员就可以使用vMotion将虚拟机迁移回原来的服务器。

此外,还有一种情况是需要从一组物理服务器迁移到另一组物理服务器。如果操作细节已经确定(第12章会详细介绍vMotion),那么可以使用vMotion将虚拟机从旧服务器迁移到新服务器上,从而在不中断服务的前提下快速地完成服务器迁移。

即使在日常操作中也可以用到vMotion,例如,同一台主机上有多个虚拟机竞争相同的资源(这最终将影响所有虚拟机的性能)。如果一些虚拟机面临更大资源需求的ESXi主机的竞争,那么vMotion允许管理员将其迁移到其他位置。例如,当两台虚拟机互相竞争CPU资源时,管理员就可以使用vMotion将其中一台虚拟机迁移到具有更多可用CPU资源的ESXi上,从而消除资源争夺。

vMotion可以移动虚拟的执行环境,在物理服务器之间重新分配CPU和内存,但不需要移动存储。存储vMotion(Storage vMotion)基于vMotion的概念与原则,能够在保持物理服务器的CPU与内存不变的前提下,在虚拟机正在运行时候迁移虚拟机的存储。

在环境中部署 vSphere,通常会伴随许多的共享存储,如光纤通道、iSCSI 或 NFS等。如果需要从一台旧的存储阵列迁移到一台新的存储阵列,那么会发生什么情况呢?这个过程会产生多少停机时间呢?另外,如果需要重新调整阵列的容量或性能,又应该怎么做呢?

由于能够迁移位于不同数据存储的虚拟机存储,Storage vMotion使管理员在不产生停机时间的前提下解决这些问题。这个特性可以保证,过快增长的数据存储或迁移到新SAN都不会让相关虚拟机被迫停机,从而使管理员有另一个方法灵活地处理业务需求变化。

3.vSphere DRS
vMotion是一个手工操作,这意味着管理员必须自己发起vMotion操作。如果VMware vSphere能够自动执行vMotion操作,那将会是多好的事情?这就是vSphere分布式资源调度器(Distributed Resource Scheduler,DRS)所采用的基本概念。如果认同vMotion的概念,那么会更加认可DRS。简言之,DRS使用vMotion在配置为集群的多个ESXi主机上实现自动化的资源使用分配。

由于微软Windows服务器在现代数据中心广泛流行,因此集群这个术语通常很容易让IT人员联想到微软的Windows服务器集群。Windows服务器集群通常是主动-被动集群或主动-主动-被动集群。然而,ESXi 集群是完全不同的,它采用双主动模式,将资源集中和聚集到一个共享池中。虽然VMware ESXi集群和Windows服务器集群都采用将物理硬件聚集在一起服务于相同目标的相同概念,但是它们采用的技术、配置和特性集却是完全不同的。

总容量与单个主机容量
 

虽然前面提到DRS集群也会聚集CPU和内存容量,但是一定要注意,虚拟机在任何时刻都只能使用一台物理主机的CPU和RAM。如果一个DRS集群包含2台具有32 GB RAM的ESXi服务器,那么这个集群对外显示总共有64 GB的可用RAM,但是任何一台虚拟机在任何时刻都只能使用不超过32 GB的RAM。
一个ESXi集群聚集了集群中所有主机的CPU和内存。2个或2个以上主机分配给集群之后,就会一起为集群所分配的虚拟机提供CPU和内存(请记住,任何一台虚拟机只能使用一台主机资源;参见总容量与单个主机容量。DRS的目标包含以下2个方面。

在虚拟机启动时,DRS会将每一台虚拟机部署到当时最适合运行该虚拟机的主机上。
当虚拟机运行时,DRS会为该虚拟机提供所需要的硬件资源,同时尽量减小这些资源的争夺,将使用率保持在一定范围内。
DRS的第一部分工作通常称为智慧部署(intelligent placement)。DRS会自动地将集群中启动的每一台虚拟机部署到特定位置,即DRS会将虚拟部署到集群中当时最适合运行该虚拟机的主机上。

但是,DRS不仅能够在虚拟机启动时介入,还能在虚拟机运行时管理虚拟机的位置。例如,假设在启用DRS的ESXi集群中配置了3台服务器,当这些服务器遇到较高CPU争夺问题时,DRS会检测到资源使用失去平衡的集群,然后使用一个内部算法选择将一些虚拟机移动,从而让集群重新回到平衡状态。DRS会模拟迁移每一台虚拟机到主机上,再将结果进行比对,然后根据DRS的配置推荐或自动执行产生平衡集群的迁移方案。

DRS 会利用前面介绍的 vMotion 动态迁移功能,在不引起虚拟机停机或网络连接中断的前提下快速执行这些迁移操作。该特性非常强大,因为DRS允许ESXi集群主机根据集群中虚拟机的变化需求动态地平衡资源使用。

应该用较少的大型服务器还是较多的小型服务器
 

从表1.2可看出,VMware ESXi可以为服务器提供最多320个逻辑 CPU核心和最高6 TB的RAM。但在vSphere DRS中,可以组合多个较小的服务器,以达到管理较大的总容量的目标。这意味着,越大型的服务器可能越不适合作为虚拟化项目的服务器。通常,这些大型服务器的价格要高于小型服务器,而使用大量的小型服务器(通常称为横向扩展)比少量的大型服务器(通常称为纵向扩展)具有更高的灵活性。关键是,大型服务器并不一定是最佳选择。
4.vSphere Storage DRS
vSphere Storage DRS(存储DRS)采用了vSphere DRS的概念,并将其应用到存储上。正如vSphere DRS可以平衡集群中ESXi主机的CPU与内存使用率一样,Storage DRS可以使用与vSphere DRS相同的机制平衡数据存储集群的存储容量和存储性能。

本书前面将vSphere DRS的特性称为智慧部署,是因为它可以自动根据ESXi集群的资源使用情况来确定新虚拟机的部署位置。同样,Storage DRS也有相同的智慧部署功能,它可以自动根据存储使用情况来确定虚拟机虚拟磁盘的位置。Storage DRS是通过使用数据存储集群来实现这个功能。在创建一个新的虚拟机时,只需要将其指定到一个数据存储集群,Storage DRS 会自动将这个虚拟机的虚拟磁盘部署到数据存储集群中恰当的数据存储中。

类似地,正如vSphere DRS使用vMotion动态地平衡资源使用率一样,Storage DRS则基于容量和/或延迟临界值使用Storage vMotion重新平衡存储使用率。因为Storage vMotion通常比vMotion操作更加占用资源,所以vSphere会更严格控制临界值、时间设置等可能触发Storage DRS通过Storage vMotion执行自动化迁移的指标。

5.存储I/O控制与网络I/O控制
VMware vSphere会对虚拟机的CPU与内存资源分配施加密集的控制。在旧版的vSphere 4.1中,vSphere无法对存储I/O和网络I/O执行这样的密集控制。存储I/O控制(Storage I/O Control)和网络I/O控制(Network I/O Control)则可以弥补这个缺点。

存储I/O控制(SIOC)允许vSphere管理员为存储I/O指定相对优先级,也可以虚拟机指定存储I/O限制。这些设置会应用到整个集群范围:当延迟增长并超过用户配置的临界值时,ESXi主机就会检测到存储拥塞,这时它会应用该虚拟机所配置的设置。这样,VMware管理员就可以保证需要优先访问存储资源的虚拟机能够获得所需要的资源。在vSphere 4.1中,存储I/O控制只能应用到VMFS存储上,vSphere 5却能将这个功能扩展到NFS数据存储上。

网络I/O控制(NIOC)也有相同的功能,它通过虚拟机使用物理NIC上的网络带宽为VMware管理员提供更细粒度的控制。由于吉比特以太网的广泛应用,网络I/O控制为VMware管理员提供了一种更可靠的方法,可以保证根据虚拟机的优先级与限制正确分配网络带宽。

6.由配置文件驱动的存储
由配置文件驱动的存储(Profile-Driven Storage),vSphere 管理员能够通过存储功能和虚拟机存储配置来保证存储中的虚拟机达到符合要求的容量、性能、可用性和冗余性。由配置文件驱动的存储包含2个主要组件:

存储功能(使用vSphere的存储感知API);
虚拟机存储配置。
存储功能可以由存储阵列本身提供(如果阵列支持vSphere的存储感知API),也可以由vSphere管理员定义。这些存储功能体现了存储解决方案的各种特性。

虚拟机存储配置文件则定义了虚拟机及其虚拟磁盘的存储要求。选择虚拟机运行时所需要的存储功能,就可以创建虚拟机存储配置文件。在虚拟机存储配置文件中定义所有功能的数据存储要符合虚拟机存储配置文件的要求,也是虚拟机可能存储的位置。

这个功能可以让vSphere管理员更好地了解存储性能,也有利于保证底层存储确实能够为每一台虚拟机提供所需要的功能。使用VVOL或VSAN,这些存储能力会得到进一步增强。

7.vSphere HA
在许多时候,高可用性(High Availability,HA)是虚拟化应用的最大争议。最常见的争议就是:“在应用虚拟化之前,物理服务器的故障仅仅影响一个应用或负载。在应用虚拟化之后,物理服务器的故障将影响服务器上同时运行的多个应用或负载。我们不能将所有鸡蛋装在一个篮子里!”VMware利用ESXi集群的另一个特性来解决这个问题—vSphere HA。同样,由于采用常见的命名方式(集群、高可用性),许多传统Windows管理员对这个概念产生先入为主的理解。然而,不能因为这些概念就将vSphere HA等同于Windows的高可用性配置。当服务器出现故障时(或当其他基础架构出现问题时,第7章将继续介绍),vSphere HA会重新启动运行在ESXi主机的虚拟机。图1.3说明了当启用HA的集群遇到故障时,在ESXi主机中运行的虚拟机所发生的迁移。

screenshot

启动在其中运行的所有虚拟机与DRS不同,vSphere HA并没有使用vMotion技术作为服务器的迁移手段。vMotion只适用于预先规划的迁移,而且要求源与目标的ESXi主机都处于正常运行状态。在vSphere HA故障恢复过程中,没有人能够预知故障;这不是预先规划的停机事件,因此没有足够的时间执行vMotion操作。vSphere HA则适用于解决物理ESXi主机或其他基础架构部件故障造成的计划外停机。更多详细内容请参考第7章。

默认情况下,vSphere HA不支持客户机操作系统故障的故障恢复操作,但是我们可以通过配置让vSphere HA监控虚拟机,当虚拟机不响应内部心跳时自动重启虚拟机。这个特性称为虚拟机故障监控(VM Failure Monitoring),它组合使用了内部心跳和I/O活动,可以检测客户虚拟机的操作系统是否停止运行。如果客户机操作系统停止运行,那么虚拟机会自动重启。

vSphere 5对vSphere HA的改进
 

从vSphere 5开始,vSphere HA已经有了很大的改进。首先,vSphere HA的可扩展性得到显著提升;现在每一台主机最多可以运行 512 台虚拟机(之前最多只有100台),每一个集群最多可以运行3 000虚拟机(之前最多只有1 280台)。其次,vSphere HA现在更紧密地整合了vSphere DRS的智慧部署功能,从而大大增强了vSphere HA重新启动故障主机虚拟机的能力。第三个改进也是最重要的改进,新版本完全重写了vSphere HA的底层架构;这个全新的架构称为故障域管理器(Fault Domain Manager, FDM),它去除了VMware vSphere旧版本的许多限制条件。
在使用vSphere HA时,一定要注意期间会发生服务中断。如果物理主机出现故障,vSphere HA会重启虚拟机,而在虚拟机重启的过程中,虚拟机所提供的应用或服务会中止服务。如果用户需要实现比vSphere HA更高要求的可用性,则可以使用下一节介绍的vSphere FT(vSphere Fault Tolerance,FT)特性。

8.vSphere FT
物理主机出现故障时,vSphere HA为虚拟机提供的高可用性可能不足以满足某些工作负载的要求。vSphere FT可以帮助解决这一问题。

正如上一节所介绍的那样,vSphere HA可以在物理主机出现故障时自动重启虚拟机,从而解决计划外物理服务器故障问题。在出现物理主机故障时才重启虚拟机,这意味着会出现停机时间—通常小于3分钟。vSphere FT则更进一步,可以在出现物理主机故障时不造成停机。vLockstep技术基于VMware之前就实现的“记录与重放”功能,vSphere FT使用这项技术在独立的物理主机上保存虚拟机副本镜像,它与主虚拟机保持同步。主虚拟机(受保护的)所发生的变化都会同步到副本虚拟机(镜像的)上。因此,一旦主虚拟机所在的物理主机出现故障,副本虚拟机就可以马上介入,不需要中断连接就完全接管负载。当副本虚拟机所在的物理主机出现故障时,vSphere FT还会在另一个主机上自动重建副本(镜像)虚拟机,如图1.4所示。这样就可以保证在任何时刻都能够保护主虚拟机。

screenshot

在出现多个主机故障时(例如,运行主副虚拟机的主机同时出现故障),vSphere HA将会在另一台可用服务器上重启主虚拟机,而vSphere FT将自动创建一个新的副本虚拟机。同样,这种方法可以保证主虚拟机在任何时候都能得到保护。

vSphere FT可以与vMotion协同工作。在vSphere 5中,FT现在整合了vSphere DRS,但是这个特性还需要使用增强的vMotion兼容性(Enhanced vMotion Compatibility, EVC)。VMware推荐带有多个vCPU的多台FT虚拟机,在主机之间使用10GbE的网络。

9.VADP与VDP
对于所有网络而言,最重要的方面不仅仅是虚拟化基础架构,而是由公司的灾难恢复和业务持续规划所构成的备份策略。为了解决组织的备份需求,VMware vSphere 6.0提供了2个重要组件:用于数据保护的vSphere存储API(vSphere Storage APIs for Data Protection,VADP)和VMware数据保护(VMware Data Protection,VDP)。

VADP是一组应用编程接口(API),备份供应商可以利用这组API实现增强的虚拟化环境备份功能。VADP还支持文件级备份与恢复等功能;支持增量、差别和全映像备份;原生整合备份软件;支持多种存储协议。

由于VADP本身只是一组接口而已,就像是一个可以实现备份的框架。因此无法真正使用VADP备份虚拟机。此时,就需要一个支持VADP的备份应用程序。现在有越来越多支持VADP的第三方备份应用程序,而VMware也提供了一个自己实现的备份工具,即VMware数据保护(VDP)。VDP是使用VADP和EMC Avamar技术实现面向小型VMware vSphere环境的完整备份解决方案。

VMware Data Recovery(VDR)哪去了?
 

在vSphere 5.1中,VMware淘汰了早期数据保护工具VDR,而改为支持VDP。VDR适用于vSphere 5,但不适用于vSphere 5.1及后续版本,然后由VDP替代。
10.虚拟SAN(VSAN)
VSAN是vSphere 6及后续版本的一项重要的新特性(但授权独立于vSphere),也是VMware近几年的工作演变,它的作用优于vSphere存储设备(vSphere Storage Appliance,VSA)。VSAN允许组织使用个人计算节点上的存储,并将其转换成虚拟SAN。

VSAN需要至少3个节点,最多可扩展至32个。在每个计算节点中还需要有固态存储;目的是改进I/O性能,从而限制计算节点的物理驱动轴数量(注意:服务器中VSAN使用的固态存储器与vSphere Flash Read Cache缓存功能使用的固态存储器是分开的。更多信息请参考本章后面的“12. Flash Read Cache”部分)。VSAN池存储在计算节点,并且允许创建跨多个计算节点的数据存储。VSAN采用某种算法以防数据丢失,如确保数据同一时间存在于多个VSAN节点上。

11.vSphere复制
vSphere复制(vSphere Replication)是硬件存储平台的一项功能,指将数据复制到vSphere中。最早出现在vSphere 5.0版本中,但只能与VMware站点恢复管理器(VMware Site Recovery Manager,SRM)共同使用。但在vSphere 5.1版本中,vSphere 复制可以脱离VMware SRM单独使用。

vSphere复制允许客户将虚拟机从一个vSphere环境复制到另一个vSphere环境。这意味着从一个数据中心(通常是主数据中心或生产数据中心)到另一个数据中心(通常是辅助、备份或灾难恢复[DR]站点)。与基于硬件的解决方法不同,vSphere复制运行在每台虚拟机上,所以对于客户复制哪些工作负载都有着精细的控制。

12.Flash Read Cache
由于2011年vSphere 5.0的发布,行业内开始大量使用固态存储(也称为闪存)。固态存储每秒可提供大量I/O操作(IOPS),以处理虚拟工作负载对I/O的需求。然而,固态存储每千兆字节的成本远远高于传统的硬盘存储,因而经常被部署为缓存机制来加快经常访问的数据。

但是,没有vSphere对于将固态存储作为缓存机制的支持,vSphere架构师和管理员无法在环境中充分使用固态存储。随着vSphere 6的发布,VMware通过vSphere Flash Read Cache这一功能解除了该限制。

vSphere Flash Read Cache为使用固态存储提供了全面支持。管理员可以像为CPU核心、RAM或网络连接分配虚拟机一样为固态缓存空间分配虚拟机。vSphere管理着固态缓存容量如何分配以及如何使用虚拟机。

硬件厂商提供的固态存储设备全部兼容VMware,从而使产品全面支持vSphere Flash Read Cache。

对比:VMware vSphere、Hyper-V和XenServer
 

确实不可能对各种虚拟化解决方案进行对比,因为它们采用完全不同的方法,并且具有截然不同的用途。VMware ESXi与市场中其他虚拟化解决方案也一样。

为了准确对比vSphere与其他虚拟化解决方案,必须只考虑类型1(裸机)虚拟化解决方案。当然,这其中包括ESXi、微软Hyper-V和Citrix XenServer。但是,不能包括VMware Server或微软Virtual Server等产品,它们都属于类型2(托管)虚拟化产品。即使在类型1的虚拟机管理程序中,仍然有一些架构差别,因此很难进行直接对比。

例如,微软Hyper-V和Citrix XenServer会通过“父分区”或“dom0”传输所有虚拟机的I/O。这通常具有更大的硬件兼容性,可以兼容更大范围的产品。由于Windows Server 2012(运行在父分区的通用操作系统)支持特殊的硬件类型,因此 Hyper-V 也一样支持。Hyper-V 基于 Windows 的硬件驱动程序和I/O堆栈。XenServer也一样,只是它的“dom0”运行在Linux,而不是在Windows上。

另一方面,VMware ESXi则在虚拟管理程序中处理I/O。这种方法通常有较高的吞吐量和较低的过载,但是代价就是限制了硬件的兼容性。为了增加更多的硬件支持或最新的驱动程序,虚拟机管理程序必须升级,因为I/O堆栈和设备驱动程序位于虚拟机管理程序之中。

架构差别是根本,同时该差别在ESXi上体现得最为明显:只使用较小的核心就实现了功能全面的虚拟化解决方案。Citrix XenServer和微软Hyper-V都需要在父分区(或dom0)中安装完整的通用操作系统(Hyper-V 需要安装 Windows Server 2012,而XenServer需要安装Linux),才能正常运行。

最后,每一种虚拟化产品都有其自身的优点和缺点,大型组织最终可能会使用多个产品。例如,VMware vSphere可能最适合在大型企业数据中心中使用,而微软Hyper-V或Citrix XenServer可能更适合用于测试、开发或分公司部署。不需要使用VMware vSphere高级特性(如vSphere DRS、vSphere FT或Storage vMotion)的单位可能会发现微软Hyper-V或Citrix XenServer更适用。
因此,VMware vSphere提供了非常强大的特性,它们可以改变我们对于数据中心资源的操作方式。vSphere还扩展了现有特性和功能。但是,某些特性可能并不适合所有组织使用,这也是VMware为各种规模组织制定灵活授权方式的原因所在。

1.1.3 VMware vSphere的授权方式
在发布VMware vSphere 4时,VMware引入了新的授权层次和软件集,其目的是更好地适应各个细分市场。授权方式与vSphere 5相同。然而,在vSphere 5.1(以及后续版本vSphere 6)中,VMware在发布vCloud套件时优化了这种授权方式,其中的附加产品包括vSphere、vRealize Automation、vCenter Site Recovery Manager和vRealize运营管理套件。

通过vCloud 套件授权vSphere是目前的首选方法,但本书不会介绍vCloud 套件中所有的其他附加产品,而是只重点谈论vSphere,并探讨各种特性与vSphere授权模型的对应关系。

vSphere和带Operations Management的vSphere
 

VMware以两种方式销售“独立的”vSphere,带有各种工具包的vSphere以及带有Operations Management的vSphere。带有Operations Management的vSphere和vSphere相同,但是增加了vRealize Operations Management产品。在本小节中,我们只是关注独立的vSphere,但是记住,带Operations Management的Vsphere也以大致相同的方式授权和打包。
前面已经介绍了VMware软件包及VMware vCenter Server的授权方式,在此快速回顾一下。

VMware vCenter Server入门版,捆绑了vSphere基本套件(随后会介绍这些套件)。
VMware vCenter Server标准版,包含所有功能,而且不限制可管理的vSphere数量(但是有普通规模限制)。vRealize Orchestrator只包含在vCenter Server的标准版中。
除了这2个版本的vCenter Server,VMware还提供了3个版本的VMware vSphere:

vSphere标准版;
vSphere企业版;
vSphere企业升级版。
不再有vRAM和vCPU限制
 

熟悉VMware vSphere的用户会注意到VMware引入了为虚拟机配置大量RAM(vRAM)的概念,它在vSphere 5中的作用是授权限制。但在vSphere 5.1及后续版本vSphere 6中,VMware不再使用vRAM作为授权机制,而是将授权限制转移至可分配到虚拟机的大量vCPU中。
这3个版本主要在各版本支持的特性方面存在差别,虽然各个版本的容量限制不同。尤其是vSphere 6.0中缺少的授权在vRAM中是有限制的(参考不再有vRAM和vCpu限制)。

表1.3总结了每一种VMware vSphere 6.0版本所支持的特性。

screenshot
screenshot
screenshot

一定要注意,所有的VMware vSphere 6版本都支持精简配置、vSphere更新管理器和用于数据保护的vSphere存储API。表1.3中没有添加上述内容,是因为所有版本都支持这些特性。因为合作伙伴、区域及其他因素都可能影响价格,所以这里没有提供任何价格信息。

在所有版本的vSphere中,VMware要求购买一年的支持与订阅(SnS)服务。唯一例外的是入门版套件,后文会解释这一点。

除了上面介绍的各个版本,VMware还推出了一些软件集,也称为套件。

入门版套件是面向小型环境的一站式解决方案,最多支持3台vSphere主机,每个主机最多2个CPU。为了在3台主机上配置2个CPU,入门版套件需要6份授权。因此,这些限制都属于强制性产品要求。入门版套件有3种:

VMware vSphere入门版;
VMware vSphere入门升级版;
VMware vSphere零售与分公司入门版。
这些套件不按CPU销售;它们都是包含3台服务器的捆绑解决方案。vSphere入门版包含1年的订阅服务;支持服务则是可选的,按事件方式提供。与其他版本类似,vSphere入门升级版要求购买至少1年的SnS;这部分必须单独购买,不包含在捆绑销售中。

零售与分公司(RBO)套件与“普通”入门版和入门升级版套件的区别仅仅在授权方式上。这些套件按每25台虚拟主机一个包进行授权,客户可以根据需要增加站点。虽然vCenter Server标准版必须单独购买,但是同样可以对所有站点进行集中管理。该套件还包含vCenter Server入门版。

现在,本节已经介绍了VMware vSphere的授权方式,接下来将说明为什么组织要选择使用vSphere,以及这将给组织带来什么好处。