vSAN架构细节-分布式RAID

来源:互联网 发布:网络优化大师.apk 编辑:程序博客网 时间:2024/06/07 09:49

【编者按】

首先祝大家国庆节、中秋节,双节快乐!


先分享一个快讯:

DELL EMC VxRail力压Nutanix,夺得HCIA的桂冠。


根据IDC的数字,2017年第2季度,全球HCI营收达到$763.4M,与去年同期相比增长48.5%

DELL EMC占有29%的份额($221 M),与去年同期相比增长149%;而Nutanix为20.9%($160 M)。


详细信息英文原文参见:

https://www.sdxcentral.com/articles/news/dell-emc-ousts-nutanix-hyperconverged-infrastructure-throne/2017/09/

感谢君迟分享这一最新信息。


不过,这个消息对于我们而言,感觉是迟早会发生的事情。另外,如果从超融合软件的市场份额来看,实际上VMware vSAN早在2016年就夺得了市场营收和用户数的桂冠。详见如下文章:

vSAN 6.6一下子新增了这么多特性! 除此之外,vSAN早就摘取了另外一项桂冠


微信公众号-乐生活与爱IT接下来将转载vSAN架构细节的系列文章,原文摘自《vSAN权威指南(第2版)》,经译者徐炯的授权。欢迎您持续关注这个系列文章。


---Begin---


  本章讲述了Virtual SAN底层的架构细节。我们已经提起过不少vSAN架构的内容,包括使用闪存作为I/O的缓存、将vSAN功能展现出来的VASA角色、虚拟机存储策略、见证盘以及对于直通 RAID控制器的需求等等。

  本章将深入探讨这些特性,并介绍由vSAN引入的一些新的架构概念和术语。尽管大多数vSphere管理员不会接触这些底层的结构,但是对组成vSAN的服务具有一些大致的了解对排错或分析日志文件还是有用的。在探讨这些底层细节之前,让我们首先来介绍一个vSAN的核心概念:分布式RAID。


5.1 分布式RAID



  vSAN通过使用分布式RAID(或换句话说,网络上的RAID),为虚拟机提供高可用性和最佳的性能。从可用性角度来说,分布式RAID意味着vSAN环境可以容忍一台或多台ESXi主机(或主机上的组件例如磁盘)故障而继续为其上所有的虚拟机提供其全部功能。而为了确保虚拟机性能最佳,vSAN分布式RAID提供了将虚拟磁盘散布到多个物理磁盘和主机上去的能力。


  然而,值得说明的一点是,通过使用存储策略,虚拟机的可用性和性能现在可以针对单台虚拟机来设置,事实上,更精确的说法是可以针对单块虚拟磁盘来设置。管理员可以通过存储策略来定义一台虚拟机可以容忍多少主机故障或者多少磁盘故障,并可以定义一块虚拟磁盘可以散布到多少主机和磁盘上。如果通过把允许的故障数设为0来特别选择不在存储策略中配置可用性要求,那么主机或磁盘的故障就肯定会影响虚拟机的可用性。


  在早期的发布版本中,vSAN在主机之间只使用RAID-1(同步镜像)来满足对系统中存储对象的可用性和可靠性的要求。虚拟机存储对象的镜像拷贝(副本)数量取决于虚拟机存储策略,特别是允许的故障数要求。根据虚拟机存储策略的不同,一块虚拟磁盘最多可在一个vSAN上拥有3个副本。默认情况下,vSAN总是会在部署虚拟机的时候将允许的故障数设置为1,即对每个部署在vSAN数据存储上的虚拟机,其虚拟机存储对象都有一个副本拷贝,这就是关联在vSAN数据存储上的默认策略。不过这可以在虚拟机置备时通过选择不同的策略来改变。


  vSAN 6. 2引入了2种新的RAID类型:第一个是RAID-5,第二个是RAID-6。当虚拟机存储策略中的容错方法(failure tolerance method)设置成“容量”而不是默认的“性能”的时候才会被创建出来。引入这些新的分布式RAID类型的目的是为了节省空间使用。RAID-5和RAID-6都不使用镜像而是使用分布式校验机制来保护数据。对于RAID-5,数据分布在3台ESXi主机的3块硬盘上,计算出来的校验数据则存放在第4台ESXi主机的第4块硬盘上。校验数据并不是总存放在同一台主机的同一块硬盘上,而是分布式的,如图5-1所示。

 

图5.1 分布式校验的RAID-5部署


  RAID-5配置可以容忍一个主机故障,RAID-6则是设计用来容忍两个主机故障的。在RAID-6配置中,数据分布在4台ESXi主机上的4块硬盘上,而计算出来的校验数据则保存在另外两台ESXi主机上的另两块硬盘上。这样,如果你想要使用RAID-6配置的话,总共需要6台ESXi主机。校验数据还是分布式存放的,如图5-2所示。

 

图5.2 分布式校验的RAID-6部署


  可以节省的空间计算如下:用RAID-1方式部署一个100GB的VMDK对象来容忍一个故障需要在vSAN数据存储上消耗总共200GB容量;用RAID-5方式会消耗133.33GB。类似的,如果用RAID-1方式部署一个100GB的VMDK对象来容忍两个故障,需要在vSAN数据存储上消耗总共300GB的容量;用RAID-6方式则消耗总共150GB容量。


  如在第四章中讨论过的,管理员现在需要在性能和容量之间进行选择。如果性能是管理员绝对最终目标,那么容错方法应该使用RAID-1(仍是默认值)。如果管理员不需要性能最好,而更关心容量的使用,那么容错方法或许应该选择RAID-5/6。


  根据每个对象的磁盘带数的策略设置,一个虚拟磁盘对象可能会被条带化到很多物理磁盘上来达到期望的性能要求。可以通过RAID-0增强虚拟机存储对象的性能,不过条带配置并不总是增强性能的必要条件。在本章稍后我们将解释原因,并说明在什么时候在虚拟机存储策略中增加VMDK的条带宽度可以带来性能提升。


---End---