全部博文(2065)
分类: 服务器与存储
2010-11-23 23:25:12
存储虚拟化可看作一种打通存储底层的基础建设,通过虚拟化产品提供的逻辑层统合整个存储环境,为前端服务器的存储需求提供单一化服务。因此存储虚拟化产品通常具备这几个特性:
异构存储设备整合
不同厂牌、不同等级的异构存储设备整合,是存储虚拟化产品的首要特性。用户可通过虚拟层介接不同厂牌的磁盘阵列,将这些异构存储设备所含的磁盘,视为一 整个存储池,再分配给需要容量的前端服务器,所有存储资源都能在虚拟层介接下统一运用。而前端服务器与后端存储设备间的连接,也从传统SAN环境中的固定 地址连接与空间映像,转变为通过虚拟层的动态介接,管理上更有弹性,空间利用率也能有效提高,不再有之前存储孤岛的问题。
这个特性也能让想建置高可用性或异地备援的用户,有机会摆脱必须购置两套相同存储设备的窘境。在虚拟层介接下,前端应用服务器不会接触设备实际,只要是 虚拟层提供的空间,映像到前端后,对前端来说都是相同的本地端磁盘区,所以只要把数据同步或复制的机制架构在虚拟层上,就能利用两套不同的存储设备,完成 高可用性或异地备援的建置。
多样化的存储协议支持
要整合用户的存储环境,除了考虑不同厂牌设备的整合,还要考虑不同存储协议的支持问题。由于成本的考虑,当前企业除了在关键应用系统上使用高价的光纤通 道(FC)外,也大量应用以太网络作为存储传输信道,在SAN的区块型传输外,也还有文件共享或传输的需要。因此存储虚拟化产品要统合整个企业存储环境, 则除FC外,支持iSCSI,甚至是文件传输所需的CIFS、NFS等协议也是不可或缺。
目前市售的多数存储虚拟化产品支持多种区块存储协议已是常态,至少都能支持FC与iSCSI,某些高阶产品还能支持高阶环境使用的ESCON、 FICON。至于文件类型的传输方面,传统作法是另外介接NAS网关器,将磁盘阵列空间通过NAS网关器的文件系统转为文件存储区域。但近来可直接支持 CIFS/NFS文件传输的产品,同样也日益普及。
弹性的资源调配机制
由于存储虚拟化产品必须管理异构存储设备,为前端各式各样的应用程序提供服务,因此如何依前端应用程序的不同需要,适当调配后端存储资源也就成为一大重点。
存储资源调节可分容量与性能分配两大部份,依执行任务的不同,前端服务器对容量与存储性能的需要也不同,因此虚拟化产品必须具备弹性的容量与性能调整机制,以便适当地分配容量,为前端特定服务保证足够的性能。
就容量分配而言,用户固然可以通过虚拟层轻易调配整个环境的存储资源,但更重要的是空间调度的灵活性,且调整程序不能影响到存储的数据或正常的存储动 作。更进一步的作法是通过ThinProvisioning之类的空间调配技术,将容量分配目标从实际空间,转为虚拟的逻辑空间,让存储设备实际空间得到 更有效的利用。
性能调节就比较复杂,多数虚拟化产品都是采用 in-band架构,所有数据流都必须通过虚拟层,因此虚拟层本身会形成性能瓶颈,加上又要为后端所有存储设备向前端提供存储服务,性能分配也成为一个问 题。传统的调节方式是切割高速缓存给不同的磁盘区,不过前端的存储需求可能会随时间而有所变化,因此必须能够动态地调整高速缓存大小。
但仅有高速缓存调节也已经不能满足需要,这种方式的盲点在于,快取的大小只是影响存储装置存储性能的因素之一,光靠调整快取大小并不能充分达到调节性能需求的效果。因此近来又出现一些可以进行更细致设定的性能调节方式,如NetApp的FlexShare等。
高可用性机制
存储虚拟化产品宣称要统一整个存储资源,所有的存储服务都经由虚拟层的中介,故显而易见的副作用便是虚拟层自身成为整个存储系统中的瓶颈,一旦虚拟层失效,整个存储服务也就中断。
为避免前述情形发生,几乎所有存储虚拟化产品都附有高可用性机制。如以两台提供虚拟服务的服务器互为备援,确保虚拟服务的持续性,某些产品如IBM的SVC还强制以两个节点构成一套I/Ogroup的方式出售。
架构在虚拟层上的进阶应用
存储虚拟化本身不是目的,而是提供一种易于管理、富有弹性的整合存储环境,以便架构出各种存储应用。为便于用户建置这些存储应用,厂商也多半会在虚拟化产品上内建镜像、快照、多路径传输、远程复制等进阶功能。
由于虚拟层已经在底层完成了异构存储设备的容量整合,因此要提供这些应用均十分方便,像镜像、复制这些应用,都只要通过虚拟层在底层转换存储路径到不同实际空间上就能完成,不用考虑两套存储设备物理规格上的差异。
而更新设备时的数据迁移亦可交由虚拟层执行,虚拟化产品可轻易的在异构存储设备间转移存储路径,只要搭配背景数据迁移功能,虚拟层即可一边让旧设备的磁 盘空间继续为前端服务器提供存储服务,然后再于离峰时间将数据逐一迁移到新设备的磁盘空间上,待数据迁移完成后,再把存储路径转移到新设备上,如此就能将 数据迁移所需的停机时间降到最低。
通过存储虚拟层也可很容易 的架构出分层存储或数据归档应用。只要在虚拟层上设定适当的存储路径,就能依据前端服务器对存储性能的要求,将高性能存储实际提供的空间保留给前端需要高 性能的关键应用服务器;性能普通的磁盘空间则可分配给备份、归档等不讲求性能的应用使用。或者也可以数据产生的时间作为区分,将一定期限的数据迁移到低价 存储媒体上。