一、什么是Software-DefinedStorage
传统的数据中心只是一系列服务器、存储、网络、安全等技术仓库的松散集合,在对应用分配资源时,需要直接描述应用对于基础设施技术的一系列要求。每一个应用是CPU、操作系统、存储池、网络、安全以及管理系统在纵向上的叠加。在传统数据中心中,通常需要几周的时间来完整地部署一个新应用。而在大多数虚拟世界,比如VMwarevCenter里,情况会好得多,可以在几小时内建立并交付一个新应用,但是还有许多其他工作要去做:建立一个新的VM(虚拟机)很简单,复杂的部分在于为了支持这个新应用的所有周边的基础设施服务,包括存储、网络和安全服务,同时还需要将对可用性和商业可持续性的要求考虑进去。
通过一个完全动态的软件驱动的数据中心,可以简化这个问题,使它如同配置和部署一个新的虚拟机那样简单和直观,使它几乎是“自动的”。
如果可以设计一系列的策略,这些策略可以实现对新应用自动化供应各种基础设施服务,并且将这些服务包含在一个容器,即一个虚拟的数据中心(VDC,VirtualDatacenter, 图1)中,那么我们就可以在几分钟或者几秒钟内部署一个新的应用。
二、EMC的Software-DefinedStorage产品ViPR™
EMC高级存储业务总裁Amitabh Srivastava在面向机构投资者召开的EMC和VMware战略研究年会上阐述了EMC的软件定义存储战略。EMC对软件定义型存储的定义包括了可在不同地理位置拓展、在不同商品服务器或EMC或第三方厂商的阵列上拓展、能够将所有基础存储资源虚拟化后融入资源池,以及开放API以便任何厂商、合作伙伴或客户都可以开发出访问基础存储硬件时所需的控制器等功能。
EMC即将发布自己的一款软件定义存储产品ViPR™(图3)。ViPR的发音是viper,表示为Virtualization Platform Reinvented。ViPR并不是一个物理的存储系统,而是一个逻辑的存储系统。ViPR将EMC和其他第三方的存储集合起来放在一个存储池中,将存储池作为单一的系统进行管理,同时又保留底层具体存储的完整价值。ViPR可以跨越多个地点和数据中心,使用多种不同的存储平台产品,对外提供统一的块存储、文件存储以及对象存储服务,同时,ViPR提供了统一的元数据服务和自助式的部署、计量和监控服务。此外ViPR还适用于多租户环境。
ViPR采用开放的scale-out架构(图4),部署在一个3节点的集群上,这种架构可以为大型复杂的存储环境提供高可用性、负载平衡以及系统无干扰升级。ViPR的接口有RESTfulAPI、GUI(Console)、CLI以及SDK,可以为用户提供最大限度的灵活性。
三、ViPR的特性:
1、基于策略的管理抽象
ViPR中的虚拟存储池(Virtual Storage Pools,VSP)定义为具有相似能力的物理存储池的集合。虚拟存储池是基于策略管理的关键。ViPR可以自动发现物理存储阵列以及其中的物理存储池和端口,将这些物理存储池按照能力的不同分到各个虚拟存储池。同一个物理存储阵列产品上的多个物理存储池可能分配到多个虚拟存储池。
2、数据中心访问的抽象
ViPR将处于同一地理位置或同一个物理数据中心的所有存储基础设施集合起来作为逻辑上的一个虚拟存储阵列(VirtualStorage Array)进行管理。一个ViPR实例可以扩展管理在位于不同城市的多个物理数据中心,这些处于不同地理位置并且由同一个ViPR管理的物理存储集合成一个虚拟存储中心。
3、基于策略的放置和资源分配
ViPR采用基于策略的存储分配方式,当用户要求分配存储时(这里以块存储为例):
1.首先ViPR选择匹配虚拟存储阵列中指定策略的物理存储阵列;
2.然后基于性能选择存储端口,建立zone(按照需求);
3.将设备放置在一个存储组中并且指定FAST策略;
4.在这个存储阵列上执行输出工作流(ITL);
5.确认主机到存储的连接。
4、自动化底层存储功能
ViPR可以提供存储灾难恢复(Disaster Recovery,DR)的自动化。ViPR内部整合了EMC先进的备份和灾难恢复产品RecoverPoint。在不同位置的虚拟存储阵列之间,通过RecoverPoint的ContinuousRemote Replication (CRR)技术(具体可参考RecoverPoint文档),可以提供数据的不间断备份,从而提供了数据的灾难恢复功能。
5、RESTAPI提供了集成的简易性
ViPR提供了RESTful API,可以很好的与第三方应用(比如AppSync)进行集成。
6、开放式体系?结构提供了更多选择
ViPR可以与VMware、Hyper-V以及OpenStack进行集成。此外ViPR对VMwarevStorage API for Storage Awareness (VASA),vCenter Orchestrator和vCenter Operations都提供了良好支持。
?
四、ViPR中的数据服务
ViPR的数据服务架构如图所示,ViPR所能提供的云数据类型包括:Object、HDFS、NFS、CIFS、Key-value以及第三方类型。
?VIPR的数据类型特性有:
1、统一存储(UnifiedStorage):
ViPR提供了传统存储之上的分层的云数据类型,具有以下优点:通过允许本地访问底层传统存储,提高了与现有应用程序的兼容性;同时允许在适当的时候通过不同方法操纵数据,提高了工作的效率;并且可以方便的将已有数据转换到云数据。
2、异构存储(HeterogeneousStorage):
ViPR提供了一个可以针对各种设备的存储引擎,对于一个给定的用例或者环境可以选择适当的存储能力和硬件,而且用户可以重用已有的存储硬件的投资,另外ViPR还适用于混合场景,比如跨越不同设备的分层存储(Tiering)和复制(Replication)。
3、企业级存储(Enterprise-gradeStorage):
云存储平台通常缺乏企业场景中需要的一些特性,比如快照和合规性。而ViPR数据服务利用并扩展底层存储设备的能力来提供企业级的云存储,比如ViPR可以提供对象存储上的增量实时快照。
4、弹性存储(FlexibleStorage):
ViPR数据服务都是通过软件实现的,这使得ViPR的数据服务可以部署在数据中心里的任意服务器上,设计上简单、可靠、轻量级、低接触以及可扩展;而且这些功能同时对所有底层存储设备可见,IP不被锁定在任何存储阵列。
5、可扩展存储(ExtensibleStorage):
ViPR数据服务提供丰富的API,第三方服务可以使用它来开发自己的系统。此外,ViPR还将会暴露原始构建模块,这些模块可以提供云规模服务的核心IP,包括分布式B+树,元数据,并发性、ACL;第三方可以使用这些原语写服务,这些服务模块可以置于ViPR内部或者外部,也可以扩展这个平台。
6、ViPR中的对象存储服务
ViPR提供的对象存储服务类似于Amazon S3中的对象模型。ViPR的API支持AmazonS3、OpenStackSwift以及EMC的Atmos,vNextAPI支持EMCCentera CAS。此外ViPR还提供了一些扩展,包括Byte范围的更新、原子增加、丰富的ACL快照、计量和计费等等。另外,ViPR提供了这样的功能,可以直接在底层的文件存储设备之上像访问文件一样访问对象存储,而性能与本地文件系统的性能保持一致。
7、ViPR中的HDFS
用HDFS做文件系统已经变得越来越普及,不光在Hadoop中,更是在各种分布式应用程序中。ViPR提供了大规模的HDFS存储平台,ViPR通过现有的HDFS实现解决了存储引擎地址键的问题,此外ViPR的设计可以方便地将HDFS带入已有的存储硬件环境,还可以使HDFS运行在对象存储场景之上。
五、ViPR能解决的商业案例
ViPR可以将数据中心中异构的物理存储系统抽象映射到一个大型的逻辑共享存储池,对企业级IT部门和云服务提供商提供了极大的价值。这对于地理上分布的数据中心中的存储资源管理和混合云部署是一个巨大的改进。ViPR可以有效和灵活地管理以数据为中心的云基础架构。
ViPR解决了当前企业级IT部门和云管理员所面临的一大问题:该如何将多供应商的存储系统转移到一个云基础架构中,并且从一个中心视图管理和共享存储系统,同时仍然使用和最大化已有存储系统的能力。ViPR通过自服务管理方式简化了数据中心的存储操作并且提供了块、文件、对象储存数据的服务。
ViPR可以使用在以下案例中:
· 企业需要用有限的IT预算来应对爆炸式的存储增长,需要一致的计划、配置、保护、迁移和管理异构的存储资源(数据中心存储自动化)。
· 企业转化自身的IT基础设施,为IT-as-a-Service(IaaS,IT即服务)提供Storage-as-a-Service(存储即服务,STaaS)。
· 企业部署私有和混合云来促进高价值服务的交付。
· 云服务提供者为企业客户提供有差异的、多租户云服务(为企业客户交付私有/混合公有云)。
参考:
PPT:Unified Management of Storage Lifecycle,SuryaVaranasi,ChristopherFlaesch
PPT:ViPR Data Services,Manuvir Das
关于作者:
张芸,EMC中国研究院云平台及应用实验室高级研究员,毕业于西安交通大学,主要关注云计算、存储虚拟化等领域。