计算和存储的融合是所有在虚拟化市场这几天的愤怒。你看它在微软的在Windows Server 2012 R2有Hyper-V和存储空间。你可以在第三方平台上看到它,比如Nutanix。而你看到它在VMware的vSphere旗舰随着虚拟SAN的添加,ESXi hypervisor中内置的一种新功能可以将vSphere集群节点中的直接连接存储转换为高可用性、高性能的共享存储。
后面的虚拟SAN或VSAN的目标,都是以降低整体存储成本,并消除了我与网络存储相关联/ O延迟。VSAN通过复制整个群集存储对象(虚拟机磁盘,快照图像,VM交换磁盘),从而允许管理员指定在每个VM基础被容忍故障(节点,驱动器或网络)的数量实现高可用性。它通过利用基于闪存的存储设备写入缓冲和读缓存,与万兆以太网网络连接支持,一起解决了延迟。
[虚拟化对决:微软Hyper-V 2012 vs VMware vSphere 5.1|评论:VMware vSphere的5.5增加了速度和可用性|得到来自事项高科技新闻的最新见解InfoWorld的技术观察博客。]
VSAN至少需要三个vSphere节点来形成集群数据存储。集群中的每个节点必须同时具有SSD和HDD存储才能连接。要打开VSAN,需要从vSphere集群的设置页面启用一个复选框。然后选择Automatic或Manual将磁盘添加到VSAN存储池,就完成了。就是这么简单。
VSAN,至少在它的初始版本中,目标是一个简短的用例列表。不出意外,VDI(虚拟桌面基础设施)是展示场景,VMware的Horizon View产品首先利用了这个新产品。VMware甚至在Horizon View 6的高级和企业sku中包含了VSAN。从版本5.3.1开始,Horizon View是专门为与虚拟SAN 5.5数据存储一起使用而设计的,这意味着您将需要最新的ESXi 5.5 Update 1来同时运行这两个版本。
在这次评测中,我使用了Supermicro和Lenovo提供的硬件。超微系统是一个超级服务器SYS-F627R3-R72B+,在一个4U机箱中有四个独立节点。每个节点有两个Intel Xeon 2420 cpu, 256GB内存,5个2TB的Seagate SAS 10K hdd,一个400GB的Intel S3700系列SATA SSD,以及两个10GbE和两个1GbE网络接口。除了超级服务器,超微还提供了一个SSE-X3348T 48-port 10GBase-T交换机来连接这四个节点。联想提供了3台ThinkServer RD340 1U服务器,每台服务器有1个Intel Xeon E5-2420 CPU、64GB内存、1TB东芝SAS 7200RPM硬盘、1 100GB STEC M161SD2-100UCM SATA SSD和3个1GbE网络接口。
请注意,虽然支持VMware,但不建议在联想集群的每个节点上使用单个HDD。即使是一个低端的VSAN节点(每个节点最多支持15个VMs和2K个IOPS), VMware也推荐至少5个1TB的hdd (NL-SAS)。你可能需要更多的内存,更大的SSD和更多的网络。我的联想节点也没有。
VSAN架构与其他“软件定义存储”解决方案相比,理解VSAN如何工作非常重要。首先也是最重要的是,VSAN与ESXi内核紧密集成。与ESXi的紧密集成意味着存储是直接通过hypervisor提供的,而不是通过单独的VM提供的(就像在Nutanix,例如)。这还意味着VSAN除了VMware vSphere(即ESXi管理程序)和VMware vCenter服务器之外,不需要额外的软件安装。
另一个重要的体系结构点与集群的硬件需求有关。VSAN至少需要3个节点才能形成集群,最多支持32个节点。对于三个节点,您可以容忍单个节点出现故障,但集群中仍然有两个节点。虽然系统将以降级模式运行,但是如果没有三个节点,就不能创建集群。默认的自动提供模式创建一个单独的VSAN数据存储,该存储由每个节点上所有未提供的硬盘上的所有可用空间组成。
集群中的每个节点必须至少有一个硬盘驱动器和一个固态驱动器才能加入集群。在加入VSAN集群之前,不能提供这些磁盘,并且必须能够单独寻址。这意味着磁盘控制器或HBA(主机总线适配器)必须配置为直通模式,或者每个驱动器必须单独配置为RAID 0模式。这里需要注意的最后一点是,VSAN数据存储只对VSAN集群中的节点可用。
VSAN支持SAS、近线SAS和SATA硬盘驱动器,以及SAS、SATA和PCI Express固态驱动器。你要检查一下VSAN硬件兼容性列表以确定是否测试了特定的设备。SATA的加入为VSAN集群中使用的各种设备开辟了广阔的空间。
在每个主机或节点上,驱动器被安排到多达5个磁盘组中,每个组中最多有一个SSD和7个hdd。每个磁盘组中的SSD充当缓存层;它不影响数据存储的总容量。VSAN将集群文件系统上的所有内容存储为一个对象,因此在这方面与Nutanix解决方案类似(参见myNutanix回顾)。
VSAN 1.0中的用户设置保持在最低限度:
忍受失败的次数。这是集群可以容忍的并发主机、网络或磁盘故障的数量,并且仍然可以确保对象(例如虚拟机磁盘)的可用性。这个值默认为1,这意味着系统只允许出现一次故障。增加这个数量需要更多的硬件。
每个对象的磁盘条带的数量。这个值定义物理磁盘的数量,存储对象的每个副本在这些物理磁盘上进行条带化。默认值是1。将此值设置为大于1可能会提高性能(当请求导致缓存丢失时),但不能保证这样做。
闪存读取缓存预订。这是在SSD上为存储对象保留的闪存容量,默认为零。VSAN调度器在默认情况下处理缓存分配,但也可以在对象的基础上增加分配,以解决性能问题。
对象空间预留。VSAN为所有对象使用瘦配置模型,在第一次初始化时保留特定的数量。此设置的值表示为对象逻辑大小的百分比,并将根据对象的不同而有所不同。VM交换的值默认为100%,以保留全部金额,而虚拟机磁盘的值默认为零。
力供应。此设置允许您设置,即使政策要求不被VSAN数据存储满足时(如可用节点的数量不再足以满足对象的高可用性需求)的存储对象。
安装VSAN创建VSAN集群是创建vSphere集群的最后一步,相当于单击vCenter Server中的复选框。当然,如果您完全从头开始,就像我一样,您需要安装vSphere和vCenter。
的vSphere / ESXi初始引导和安装,我使用的超微IPMI管理控制台和连接在所述的VMware .ISO文件作为远程介质驱动器。接下来,我安装到USB密钥和反复的另外三个节点上的进程。Supermicro的箱具有SATA硬盘在模块除了内置USB端口用作引导设备。联想服务器有DVD驱动器,USB一起。
使用VSAN的所有本地附加驱动器的一个副作用是,在VSAN集群启动并运行之前,您不会有任何驱动器用于数据存储。在vSphere 5.5中,您必须使用vCenter Server执行所有集群管理任务,这是一个先有鸡还是先有蛋的问题。我最终使用了一个Thecus N7710-G NAS存储盒作为外部源,它同时提供iSCSI和NFS,直到我启动并运行VSAN集群。
一对VSAN的要求是,每个磁盘驱动器必须是独立寻址的。对于某些控制器,这涉及到一个简单的设置,以使通过模式。然而,对于超微节点,我不得不使用LSI控制器固件创建单独的驱动器组为每个驱动器,并设置可靠性无法比拟的。这RAID 0,单驱动器配置有分别为五个2TB驱动器和SSD的所有四个节点上要完成的。这个过程本质上是联想节点的相同。
简而言之,一旦安装了VMware vSphere和vCenter Server,启用VSAN就再简单不过了。最难的部分可能是配置磁盘控制器。如果幸运的话,您的磁盘控制器使JBOD成为一个简单的复选框项。
图1:VSAN配置细节可以通过vSphere Web客户端轻松获得。
VSAN管理自从引入以来,vSphere Web客户端已经得到了很多改进。对于vSphere 5.5,您必须使用新的Web客户端完成大部分管理功能,包括VSAN管理。旧的基于windows的客户端仍然存在,但是除了基本的VM管理之外,您无法用它做很多事情。您仍然可以向任何VM启动远程控制台,这似乎比从Web客户机启动相同的进程工作得更好、更一致。
我发现在vSphere Web Client的最新演绎比足以满足大多数管理任务更加。与此同时,我发现老,要花一些时间来适应新的之间的差异。对于某些操作,它需要多点击几下鼠标,通过用户界面来浏览和获取到的地步,你其实可以做出改变。这么说,我真的很喜欢通过监测页面所呈现的细节(见图1)两个主机和单个虚拟机。
VMware提供工具专门用于窥视到VSAN的各个移动部件的整体性能。例如,VSAN观察员提供了一个基于Web的仪表板,显示延迟,IOPS,带宽和健康VSAN磁盘的统计数据。图2显示了VSAN观察仪表盘与缩略图图表为VSAN集群中的每个节点。点击“全尺寸图”链接打开了每个单独的节点详细的图表。
VSAN支持用于存储感知的VMware api VASA,允许vCenter Server报告大量统计数据并实现存储策略(以确保满足虚拟机或虚拟磁盘的存储需求)。当然,VSAN不支持用于数组集成的VMware api VAAI,因为没有机会从主机上卸载存储操作;使用unmap进行就地克隆或回收空间不会显著提高性能。在这方面,来自EMC或NetApp的传统SAN将明显优于VSAN解决方案。
PowerCLI是VMware的PowerShell管理单元,用于从命令行驱动vSphere。PowerShell是微软的非机密自动化武器,这意味着您需要一台Windows机器来实际运行任何脚本或使用命令行。PowerCLI使命令的重复更少痛苦,更不容易出错。我能够使用PowerCLI和PowerShell自动化32个虚拟机的创建、修改、启动和停止操作,这些操作是为下一节描述的所有性能测试配置32个虚拟机所必需的。
VSAN性能我在测试VSAN时的目标之一是比较低成本硬件(联想三节点集群)和高端硬件(超微四节点集群)的性能水平,并尝试确定可以通过升级改进的硬件特定问题。我通过使用VMware的I / O分析仪,这是一个可以从VMware Labs免费下载的工具,它结合了一个常用的工具(的Iometer)与漂亮的,基于Web的控制魔法。
VMware I/O Analyzer (IOA)的1.6版由一个64位的Suse Linux Enterprise Server 11 SP2虚拟机和两个附加的虚拟磁盘组成。第一个磁盘包含操作系统和测试软件,而第二个磁盘用作测试的目标。所有Iometer流量都以raw模式将目标指向第二个磁盘,因此它将直接写入设备,绕过任何文件系统。
图2:VSAN观察仪表板显示所有VSAN节点和驱动器相关的统计数据。
为了产生大量流量,VMware的建议使用多个I / O分析仪的VM的VSAN集群中的每个节点上。为了测试四节点超微簇和三节点联想集群两者,我使用了八个虚拟机的每个节点上 - 这三个节点的群集上的四个节点的群集上的总共32级工人的VM,和24 -用额外的I / O分析仪VM上的每个用作控制器节点。
I/O Analyzer附带一个不同工作负载类型的列表,支持从512字节到512KB的各种I/O大小。Iometer提供了指定I/O操作的类型和百分比、读取和写入,以及运行每个测试的时间量的能力。