大家知道,vSAN就是一种分布式存储,其数据保护技术不是采用传统的RAID方式,而是叫分布式RAID/RAIN。VSAN数据存储其实是一种对象存储。对象指的是一个独立的存储块设备。对象取代LUN成了VSAN的主要存储单元。在VSAN中最典型的对象就是VMDK、虚拟机交换文件、增量盘(快照)和虚拟机名字空间。
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-0增强虚拟机存储对象的性能,不过条带配置并不总是增强性能的必要条件。在本章稍后我们将解释原因,并说明在什么时候在虚拟机存储策略中增加VMDK的条带宽度可以带来性能提升。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)