基于SAN的存储虚拟化需求演进
针对块存储的虚拟化技术自本世纪初诞生以来,历经了十余年的技术演进与市场考验。发生变化的不仅是技术本身,而更多的是用户的实际应用需求。早期存储虚拟化技术出现的主要目的是为了帮助用户对异构存储资源进行池化和整合,提高使用和管理效率,合理降低TCO。而近年来基于SAN的存储虚拟化技术越来越多被应用于有效提升核心生产系统的业务连续性,数据安全性以及平滑的跨存储阵列的数据迁移能力。
用户在对存储子系统升级扩容时,不仅把性能与容量指标作为首要考虑对象,对于整个生产存储系统的高可用性,以及业务连续性保障能力的要求也逐渐成为规划建设初期进行考虑的重点!为了有效实现业务连续性保障目标,解决存储子系统的单点故障问题,合理引入存储虚拟化技术已经成为最为行之有效的手段之一,比如通过存储虚拟化技术实现不同品牌型号阵列间的实时镜像,帮助用户实现存储子系统的冗余能力。这一点在VMware虚拟化环境中几乎变成唯一可行的存储系统高可用性解决方案;又比如通过精简带宽的远程复制,数据录像或密集时间点的可恢复快照功能,来有效实现对于逻辑故障的防御,控制运维成本投入等。最终,通过一套统一的系统功能来实现对生产系统的业务连续性保障,方便,简单,大大减少了运维人员的压力。
近来,兼容异构存储,同时具备完整数据保护和管理功能的成熟存储虚拟化产品也被广泛应用于两地三中心容灾以及双活数据中心的建设当中,作为一种积极的,可靠的技术手段有效提升用户原有生产系统对各类型灾难的防御能力。
原数据保留能力的重要性
谈到基于SAN存储虚拟化技术的的引入,理所当然的需要考虑对现有生产系统架构进行哪些改造;业务停机时间如何评估?是否需要进行数据迁移?是否可以实现有效故障回退?兼容性范围等诸多问题, 存储虚拟化各项技术应用实现的大前提,就是存储虚拟化系统如何能够快捷,安全的接入现有SAN 环境,并接管原有生产存储系统的磁盘卷。
从实际需求出发,在存储虚拟化产品接入时,我们一般希望达成如下几个目标:
设备接入不需要对原有SAN环境物理布线进行改造;
设备接入简单快捷,不需要太长的停机时间;
设备接管生产存储磁盘卷后,无需数据迁移,无需对原卷进行类格式化处理;
设备接入后具备可回退还原能力;
其中,最为重要的一点,就是在接入存储虚拟化系统前后,对原存储系统中已有数据的保留能力!
基于SAN的存储虚拟化系统一般为In-Band(串接)架构,该系统将接管需要进行虚拟化管理和保护的底层存储子系统磁盘卷,经过虚拟化处理后再对上层服务器系统提供存储资源。因此,原有存储系统需要将所有之前创建并分配给主机的磁盘卷交给存储虚拟化系统进行统一管理后,再进行分配。如果存储虚拟化系统不具备对存储子系统原有磁盘数据的保留能力,在存储虚拟化系统接入之前,必须进行大量的数据迁移工作,造成对项目周期,停机时间的延长,以及增加期间意外故障风险发生的概率。另外,一旦存储虚拟化系统接入后,发生不稳定或其他故障时,原有存储子系统的磁盘数据经过虚拟化处理后均无法再由上层服务器主机识别,不能再直接分配给上层服务器主机使用,从而导致存储虚拟化系统成为新的故障点。
为了保证对存储虚拟化系统接入过程对生产系统影响最小化,我们需要争取最小的停机时间和可回退能力,有效保证生产系统在实施过程中的安全性。因此,在不对原有磁盘数据进行改动,迁移的基础上快速实现存储虚拟化系统的接入,显得尤为重要!同时也是保证,当存储虚拟化系统故障时,具备快速恢复原有SAN网络环境和生产系统运行的关键!
下面,我们尝试对市场主流成熟产品的接入技术进行深入分析,为大家在存储虚拟化系统规划设计和建设前提供参考。飞康 NSS和 IBM SVC, 这两款产品在存储虚拟化市场都已活跃了逾10年的时间, 产品技术非常成熟,市场实际应用范围也最为广泛,通过对他们的接入技术分析,可以帮助大家较为清晰的理解上述产品在接入生产系统时,是如何实现对原有磁盘卷数据的有效保留。
飞康 NSS SED (Service-Enabled Devices)
作为存储虚拟化技术的先驱之一,飞康的IPStor/NSS 存储虚拟化产品在2001年就已经出现在市场上,截止2014年已经正式发布了其第七代存储虚拟化产品,技术成熟度和广泛的应用范围都具备良好的可参考性。飞康自创立以来,一直坚持开放硬件的态度,获得众多用户和第三方存储厂商的亲睐,很多国内外存储厂商的技术人员都曾经接触过该产品。飞康官方宣称,以OEM方式或自主品牌销售的NSS产品安装量已超过数万套。丰富而实用的功能设计以及长期经受市场考验的产品稳定性和可靠性,应该是飞康IPStor/NSS产品的主要特点。
飞康 NSS 存储虚拟化接入技术原理非常便于理解。飞康 NSS 在接管底层存储子系统的磁盘卷时,可以采用两种方式来实现接入:一种是将底层磁盘卷直接虚拟化为Virtual Disk(虚拟磁盘)以供NSS管理和分配;另一种可将磁盘卷转换为SED(Service-Enabled Devices)磁盘设备以供NSS管理和分配。当转换为SED设备时,磁盘卷原有数据不会被修改,可以快速通过NSS分配给主机系统,整个接入过程非常简单,不需要数据迁移,停机时间很少,当然也可以实现快速回退,磁盘重新分配给原主机系统,可以被正确识别和使用。
SED(Service-Enabled Devices)功能,是在保留原磁盘卷已有数据的前提下,将进行虚拟化时所需对该磁盘定义的Virtual header(Virtual ID,Mirror,Replication,etc.) 信息写入另外一处磁盘空间内,并与之形成关联映射。同时Virtual header空间还可以通过NSS自带的Mirror镜像功能加以保护,可以避免由于物理磁盘故障导致相关信息丢失的肯能。当然,如果对于底层新建的和不需要保留的磁盘卷也可以通过直接在其上写入Virtual header信息的方式完成虚拟化管理。
通过SED方式虚拟化底层磁盘数据后,如果用户希望能够快速回退,将NSS撤出生产环境,只需要将底层存储子系统的磁盘卷重新分配给主机即可,无需做任何其他操作,快速而安全。由此可见,飞康 NSS SED 的应用特点如下:
在不改变原卷的前提下,透明接入生产系统,无需数据迁移,安全,便捷;
可以利用SED功能完成不同磁盘系统之间的数据迁移;
IBM SVC Image Mode Volume
IBM SVC于2004年左右上市,从某种维度上看SVC 似乎与飞康的NSS形态和设计都很类似,都是基于Linux内核和x86工业标准服务器。IBM基于SVC的I/O GROUP引擎开发出了其目前整个V系列的存储产品线,比如常见的v7000系列存储系统。SVC早起存储虚拟化功能较为单一,仅支持对异构存储的基本管理和池化,所以IBM曾经视图收购飞康,未果后也与2010年左右升级了其SVC 软件版本,逐渐提供了一些相应的高级功能。
IBM SVC 识别到底层存储子系统提供的磁盘卷称为Mdisks,服务器主机看不见MDisk,看到的是SVC虚拟化之后的逻辑盘,称为virtual disks或者Volumes。MDisk在Image模式下可以实现在不对原卷进行更改的前提下实现接管和再分配,即Image mode volumes。
Image模式使Volumes和MDisk间有个一对一的映射。一个Image模式MDisk只能映射到一个image模式卷,MDisk的大小和Volume大小必须相同,对于上层主机而言,看到的是虚拟化后的Volumes, 而Volumes会将所有的读写都映射到MDisk上,这样就无需改变原有磁盘中的已有数据,同时实现了虚拟化接管和再分配。
Image模式的使用场景:
Image模式可以虚拟化已经包含数据的Mdisk,使用image模式可以进行数据迁移。
通过image模式可以从SVC中迁移数据到非SVC环境,即host直接连接存储。
如果SVC发生严重故障,可以快速退出生产环境,将底层存储子系统的磁盘重新分配给主机即可。
由此可见,通过上述两种技术完全可以实现对存储虚拟化系统接入的前期目标,简单,快捷,无数据迁移,较小的停机时间且具备可回退的能力。
然而市场上并不是所有的存储虚拟化系统都可以完全做到上述几点。比如HUAWEI VIS6000,Netapp V系列需要对识别到的底层磁盘卷进行类格式化处理,无法保留原有数据,接入前必须进行数据的迁出和迁入,一旦接入完成即无法回退。
HUAWEI VIS6000
HUAWEI VIS 6000系列是HUAWEI与Symantec合作的类存储虚拟化产品,HUAWEI使用Symantec的StorageFoudation卷管理软件来实现对底层存储的接入和管理分配,而StorageFoundation软件之前较多安装在服务器系统上,以提高逻辑卷管理能力为主要目标。通过使用X86服务器,安装基于linux操作系统的StorageFoundation软件版本最终实现对用户的整体交付。
一般情况下VIS6000需要将接入的存储子系统磁盘进行格式化,转换为VxVM文件系统格式,才能提供相应的高级卷管理功能,例如在线扩展磁盘空间,条带,快照等功能,无法对原有数据进行保留。如果需要保留存储子系统磁盘设备中的原有数据,HUAWEI通过二次开发,使得VIS6000也能提供简单的,无需更改原磁盘数据的接入,再分配等基础功能,但基于StorageFoundation VxVM文件系统的诸多优势就无法得到有效应用,使得用户往往在最终项目实施时,很少使用该功能完成虚拟化系统的接入,仍然会进行相应的数据迁移操作。
Netapp V 系列
Netapp V系列拥有其专利的WALF(Write Anywhere File Layout)日志型文件系统,所有接入Netapp的底层存储子系统的磁盘卷都需要进行格式化后方可使用,因此,无法保留磁盘上的已有数据,同样如果将Netapp撤出生产系统,将底层存储系统的磁盘卷直接分配给主机,是无法被主机系统识别和使用的。
所以,并不是所有的存储虚拟化产品均支持能够保留原有磁盘数据的接入技术,对于现有生产系统的存储虚拟化改造,数据迁移等应用来说,是否具备该功能,是减少建设对现有生产系统最小化影响的前提和有效保障!
应用场景举例
某运营商云计算平台,部署超过13台物理VMware ESXi Server主机,共计运行超过300个虚拟机实例,原有后端存储使用一台EMC的高端存储阵列。系统运行一段时间后,用户感到存储单点故障隐患严重威胁了现有云计算平台的安全,一旦存储发生故障,近300个应用将完全停止运行。用户初期尝试考虑使用存储系统底层复制和镜像技术实现两套存储数据的实施同步,但最终放弃,原因非常简单,该方案无法保证业务连续性,一台存储故障之后需要手工切换至另外一台存储,所有VM均需要全部重新启动,无法达到用户对RTO、RPO的要求。通过大量测试与技术验证,用户最终选择通过加入存储虚拟化层来实现两台存储之间的实施数据镜像同步,任何一台存储故障,VMware上的VM实例都不收影响。
由于整个VMware Datastor空间超过50TB容量,为了尽量减少存储虚拟化系统接入时的停机时间,用户无法接受对生产数据进行数据迁移的做法,同时,为了保证项目实施的安全性,用户也希望存储虚拟化系统接入后,一旦发生任何问题,可以进行回退,原有存储系统的磁盘仍然能够被VMware服务器直接识别与使用。
因此,用户需要一种简单,快捷且安全的快速存储虚拟化接入方案。用户通过严格的筛选和测试,最终选择利用飞康NSS的SED功能实现了存储虚拟化的快速接入。
拓扑图参考如下:
通过本文的介绍,大家在选择存储虚拟化产品时,建议首先详细了解该类产品的接入技术原理,配合自身的实际需求,比如是否新建系统还是对已有系统进行虚拟化改造,最终选择相应的存储虚拟化产品类型,再配合功能,性能,管理等其它方面的因素综合考虑,才能选中符合自身实际情况的,简单,安全,稳定而强大的存储虚拟化系统。