存储 频道

资源共享解决节省存储资源 要按需部署

【IT168 资讯】如果服务器的相同数据能够被共享,就可以节省大量的存储资源。而后端集中存储服务的出现使得这种共享成为了可能。

  现代计算机系统越来越多地被应用在公共计算中心、数据中心和大型企业等开放环境下。这 些环境所共有的一个显著特点是对计算机系统提供服务的种类和数量的需求具有很高的动态性和不确定性。为了满足可能出现的峰值服务需求,这类系统通常不得不配置额外的服务资源。

  American Power Conversion公司的客户调查显示,通常信息中心的计算资源达到其实际所需资源的4倍(即75%的计算资源被长期闲置),开放系统的容量利用率仅为40%~50%。在这样的环境下,以资源共享的形式来满足用户的动态变化的服务需求就变得很有意义。一方面,当某一服务需求撤销时,将提供该服务的计算资源和存储资源用于满足新提出的服务需求,能够提高资源的利用率。另一方面,当某种服务需求出现高峰时,系统能够将资源集中起来应对该服务需求。而当该服务需求降低时,资源又可以重新分配给其他服务。这样增强了系统对动态需求的适应能力,系统的健壮性得以提高。

  存储层的按需部署

  为了解决上述问题,由中国科学院计算技术研究所国家高性能计算机工程技术研究中心自主研发的基于网络存储的新型计算环境管理系统――蓝鲸服务部署系统,它在服务器层次进行资源虚拟化的同时,对存储资源虚拟化进行了较为深入的探索。系统采用了集中式的存储系统,将物理存储资源虚拟化生成逻辑卷作为服务器数据的载体。在存储虚拟化架构上,蓝鲸服务部署系统采用一种新型的复合式快照算法,该算法能够完成服务器数据在存储设备级别上的共享,并使得系统可以在数秒钟内将所需服务器的数据部署完毕。系统在数据共享的基础上进一步应用了缓存共享技术,使得服务器部署用时大为缩短,使系统更适合于服务器需求动态变化的开放环境。

  目前某保密单位双网隔离方案和基于PC SAN系统的双网隔离方案对比

  该系统是一个满足开放、动态环境的服务器部署管理系统。其服务器部署机制能根据应用环境对不同类型和数量服务器的动态需求,将物理服务器资源与存储资源快速、灵活地结合为可运行的服务器供应用系统使用。蓝鲸服务部署系统的服务器部署架构以底层存储为核心,将服务器映像以网络磁盘的形式和物理服务器进行动态绑定来完成部署工作。在存储层次上蓝鲸服务部署系统采用一种新型的复合式快照架构,并在此基础上应用块设备级别的缓存共享技术,使得服务器部署系统在服务器创建、再分配以及存储空间占用等方面有显著改进。

  系统对给定的物理存储资源和物理服务器资源进行管理,将资源整合为可运行服务器提供给应用系统。系统服务部署架构的设计目标有如下几个方面:

  服务器按需创建: 当外部系统对提供某种服务的服务器产生需求时,系统能够根据需求创建服务器系统映像,并和物理服务器结合生成实际运行的服务器。这是按需部署系统的核心目标。

  资源共享: 当部署系统所提供的某个服务撤销时,提供该服务的服务器资源和存储资源可以被用来提供新的(可能是不同类型的)服务。除此之外,在蓝鲸服务部署系统中资源共享的含义还包括数据共享和缓存共享。即多个服务器系统上的相同数据尽量共享一份存储资源; 在多个服务器读取共享数据时在存储系统中共享I/O通道的带宽,并且使用同一份缓存。

  快速部署: 系统在数秒量级的时间生成所需服务器映像,服务器能够使用该映像启动并快速地达到可提供服务的状态。

  系统的服务部署模型采用两层虚拟化结构来达成上述目标。下层对存储进行虚拟化,提供存放服务器系统映像的虚拟磁盘; 除此之外还负责完成虚拟磁盘的数据共享和快速复制,提供系统存储资源共享和缓存共享能力。上层通过建立物理服务器和虚拟磁盘间的映射,虚拟出满足需求的服务器节点。其映射机制使得系统能够根据需求动态调整物理服务器节点所提供的服务,从而共享服务器资源。将上层动态映射与下层快速复制以及缓存共享结合起来,此模型能够让蓝鲸服务部署系统具备服务器快速部署能力。


  相关技术比较

  近年来,关于服务动态部署的相关研究有很多,其中与蓝鲸服务部署系统的研究内容比较相似的典型系统有Oceano、COD和SODA等。

  Oceano是IBM实验室提出的为多个客户分配共享资源的系统。Oceano为每一个客户分配一个域,基于SLA(服务品质保障协议)为每一个域提供服务。系统维护一个服务器资源池,根据每一个域对服务需求量和种类的动态变化将服务器提供给具体的域,或者将域中的服务器回收并进行再分配。从系统功能上来说,Oceano与蓝鲸服务部署系统非常类似,都是完成服务器粒度的服务动态部署。但是Oceano中的服务器在本地磁盘上安装操作系统,当服务器提供服务的操作系统平台改变时,需要重新安装操作系统。而蓝鲸服务部署系统中的服务器利用存储服务系统提供的虚拟磁盘上的服务器映像启动操作系统。当系统需要改变服务器提供的服务时,只要将服务器重新映射到和该服务对应的虚拟磁盘即可。虚拟磁盘则通过对服务模板进行快照来完成创建。因而整个更换服务器系统映像的过程可以在数秒内执行完毕。

  Oceano为了保证较小的服务器部署用时,将应用程序文件分为只读、公共读写和私有读写三类,通过AFS网络文件服务器进行文件共享和缓存共享。而蓝鲸服务部署系统所提供的是设备块级的共享,不必对其上的操作系统和应用程序有任何理解,因此不需要为新引入的应用进行特殊处理。共享通过复合式快照建立,操作系统和应用程序的数据块只要不被写入就能保持数据共享和缓存共享。

  COD(Cluster On Demand)是Duck大学提出的一种集群虚拟化系统。其目的是为简化集群管理,提供灵活、自动的集群部署和管理机制。COD维护一个物理服务器池,在这个基础上创建多个虚拟集群。COD基于PXE Linux等网络启动技术完成服务器节点启动、配置等操作,可以根据需求在虚拟集群间调配服务器节点。在自动启动和配置方面,COD和蓝鲸服务部署系统都利用了WOL、DHCP、PXE等网络启动技术为服务器选择一个服务器映像。COD也支持用户创建自己的服务器映像并作为模板进行部署。但和蓝鲸服务部署系统不同的是,COD使用的是本地磁盘,没有对存储进行集中管理和资源共享。服务器系统映像的部署是通过网络启动的客户端系统将模板直接复制到本地磁盘上来完成的,因此比蓝鲸服务部署系统需要更长的服务器部署时间。

  SODA(Service-On-Demand Architecture)是Purdue大学研究的在网格等开放环境下对外提供应用服务的服务按需部署系统架构。SODA基于一个服务器池,通过在单个服务器上运行多个虚拟服务器来提供服务。它并不对实际服务器资源进行管理,而是在实际服务器资源的基础上提供虚拟服务器的按需创建和部署管理。为了在一台服务器上提供彼此独立的虚拟服务,SODA采用了UML(User-Mode Linux)技术在一个Linux操作系统平台上运行多个虚拟操作系统平台。在服务部署方面SODA采用的方法是下载服务器映像到本地运行的方式。映像的下载根据网络情况不同需要一定时间。为了缩短服务器部署用时,映像根据服务需求被裁减到最小的程度,以减小映像下载时间和启动时间。

  而蓝鲸服务部署系统的一个关键特性是在存储层次上进行虚拟化,并以网络磁盘的方式将服务器映像动态绑定到物理服务器上完成服务部署。通过在存储虚拟化系统中应用一种新型的复合式快照算法以及在此基础上的共享缓存算法,使系统不仅仅节省了存储资源,也使服务器的部署和启动时间大为缩短,提升了系统按需部署的能力。

0
相关文章