直连存储过时吗?
直连存储即我们常说的DAS(Direct-attached storage),通常指那些安装在服务器内部或者安装在与服务器直接相连的扩展盘柜中的存储介质。DAS存储与服务器之间必须有固定的绑定连接关系,因此它们之间不存在网络结构,而是直接进行数据的读写。
在服务器与存储的各种连接方式中,DAS曾被认为是一种低效率的结构,而且也不方便进行数据保护。直连存储无法共享,因此经常出现的情况是某台服务器的存储空间不足,而其他一些服务器却有大量的存储空间处于闲置状态却无法利用。如果存储不能共享,也就谈不上容量分配与使用需求之间的平衡。
DAS结构下的数据保护流程相对复杂,如果做网络备份,那么每台服务器都必须单独进行备份,而且所有的数据流都要通过网络传输。如果不做网络备份,那么就要为每台服务器都配一套备份软件和磁带设备,所以说备份流程的复杂度会大大增加。
与直连存储架构相比,共享式的存储架构,比如SAN(storage-area network)或者NAS(network-attached storage)都可以较好的解决以上问题。于是乎我们看到DAS被淘汰的进程越来越快了。可是到目前为止,DAS仍然是服务器与存储连接的一种常用的模式。事实上,DAS不但没有被淘汰,近几年似乎还有回潮的趋势。今年,随着EMC公司宣布推出一款基于PCI Express(PCIe)的固态存储产品(EMC的设计是希望用它来储存一些服务器本地的数据),DAS的复苏进程进入高潮阶段。
SAN和NAS的实际表现低于人们的期望
到目前为止,DAS存储结构依然存在的一个原因是SAN和NAS表现不佳,在预期和现实之间存在着巨大的落差。人们对SAN架构的期望很高,希望通过SAN 方便的创建一个全局存储资源池,以便将容量动态的分配给前端的服务器,实际用多少就分配多少。可是,在SAN架构技术出现的最初8年左右时间里,我们距离这种目标依然遥远。至今,SAN存储仍然不得不为每台服务器划分出一个独立的存储分区。当某台服务器需要更多存储空间的时候,必须再划出一个新的分区并指定给该服务器,在服务器端,还要将新分区和已有的分区连接在一起使用。糟糕的是,新分区和原有分区的管理是彼此独立的。所以实际上,在SAN环境中为一台服务器增加存储空间的过程与之前DAS的那一套方法是非常类似的。
人们还期望SAN架构下的数据保护工作能够更简单一些。用户的目标是直接从SAN环境进行备份,而不必单独处理每一台服务器。可是,目前只有极少数的应用软件能够帮助用户精确的实现这一功能,而在大多数情况下,我们只能盲目的备份数据,却并不知道备份出来的数据到底是些什么。用户很快意识到他们其实需要一种叫做“应用感知”的技术,该技术能够帮助他们备份在线的应用,并且执行智能化的恢复操作。可前提是用户需要在服务器端安装特定的备份软件。
最后还要说明的一点是,SAN和NAS产品的价格仍然远远高于DAS。许多用户出于价格因素考虑选择了低效率的直连存储而不是高效率的共享存储。
客观的说,现在的SAN和NAS系统已经可以利用类似自动精简配置(thin provisioning)这样的技术来弥补早期存储分配不灵活的短板。然而,之前它们消耗了太多的时间来解决存储分配的问题,以至于给DAS留有足够的时间在数据中心领域站稳脚跟。此外,SAN和NAS依然问题多多,至今无法解决。
现在,SAN/NAS等共享存储架构发展的主要推动力来自于快速增长的服务器和桌面虚拟化应用,如果要实现虚拟机映像在物理主机之间灵活移动的话,后端需要搭建共享存储架构。在虚拟化环境中,虚拟机实际上就是一个大文件,因此应用感知(application-aware)和脱离主机备份(off-host backup)都是可行的,备份过程也不需要涉及物理主机部分。尽管共享存储架构有很多新增项目和重要的应用案例,但是,DAS结构在数据中心应用中依然存在,而且其价值还在不断提升。
启动系统需要DAS
DAS 结构在数据中心环境依然流行的一个重要原因是系统需要本地的启动盘。虽然许多SAN环境已经具备各种形式的从SAN启动系统的方法,但这需要专用的主机适配器(HBA),而且SAN存储系统本身也必须支持这一功能才可以。所以我们看到,大多数物理服务器仍然从本地DAS存储启动系统。
除此之外,DAS还要感谢SSD固态盘的普及,从本地存储启动系统要比从SAN系统启动具有明显的优势。首先,从本地SSD盘上启动或重启系统只需要很短的时间(秒级),而且SSD盘还可以做虚拟内存交换页空间使用,这一点对虚拟化环境来说极为重要。在虚拟化环境中,当我们在主机上加载虚拟机时,内存会迅速耗尽,随即便开始使用本地存储上的内存交换页空间。如果本地存储使用的是普通硬盘,内存交换的性能会受到很大影响,而如果我们使用像Flash SSD这样的固态存储,那么性能的下降幅度则基本可以忽略不计。用SSD作为启动盘可以承载更多的虚拟机,而不必采购价格昂贵的内存。
用DAS来扩展SAN
在 DAS市场复苏的过程中,固态存储还扮演了另外一个重要角色,即作为SAN之外的扩展。利用基于PCIe总线的固态存储的超高性能,IT系统存储架构正在向分层存储方向发展,或者直接将服务器需要的数据缓存在本地。PCIe SSD固态盘能够直接与CPU进行通讯,这一点与传统的SSD不同,传统的SSD在性能方面会受到SAS或SATA协议的羁绊。对于内存容量有限的系统来说,PCIe SSD无疑是一个理想的虚拟交换页空间,因此基于该技术的存储分层和数据缓存应用案例也越来越受到关注。
利用这种架构,存储系统就能够智能的将最活跃的数据预存在PCIe SSD盘中。之后,如果有应用程序或用户请求访问这些热点数据,存储系统就能够从PCIe SSD中用最快的速度响应数据访问请求。这就意味着应用程序和用户不必再等待他们的访问请求跨越存储网络,然后由存储系统的控制器接收并处理这些访问请求,再等着硬盘的磁头找到正确的磁道位置,最后经原路返回需要的数据或写操作确认。
如果一切按照预想发展的话,这种在SAN前端扩展DAS 的设计模式将会颠覆传统SAN的世界。我们看到,SAN存储将变成信息的中央仓库,其上存放的数据的活跃度会越来越低,而服务器本地基于PCIe SSD盘的 DAS存储则用于处理最热的数据。因此,SAN存储将用来做数据的长期保存或备份,而服务器则负责处理活动的进程。这种结果带来的影响是,SAN存储的设计将更加偏重容量,而性能却变得不那么重要了。但是,目前的PCIe SSD技术还有一个短板就是无法作为系统启动盘使用,所以在服务器上插一块SAS硬盘或者普通的SSD盘还是有必要的。
DAS,云计算基础设施的关键
另一个促成DAS复苏的关键驱动力来自于大数据存储应用环境的设计。包括像Facebook、Google以及其他一些公司都涉及其中。他们设计的系统的特点是将计算资源和存储资源整合在单台服务器上,而多台服务器之间则通过高速网络进行互联通讯,服务器能够直接从本地存储上访问所需的数据。他们甚至还会利用PCIe SSD与硬盘的组合来做系统启动。这些在线服务提供商以及互联网技术公司之所以选择这种设计,是因为这种架构具有极高的成本效益,而且在此架构下通过增加服务器做系统扩展也非常简单。
过去,有人曾认为这种DAS存储加计算的整合系统模式应用场景有限,只有那些具有大量在线应用的公司才会部署这种系统。然而现在的情况已有所不同。这里,我们不得不再次提到服务器虚拟化,因为服务器虚拟化应用需要运行在计算能力和存储能力可同时扩展的基础架构环境上。有些厂商,像Nutanix就可以提供一种内置存储的服务器集群产品,利用该产品能够快速的搭建起一套云计算基础设施,因此非常适合那些传统的数据中心。
服务器虚拟化环境仍然需要共享存储,用来实现虚拟机迁移和虚拟机高可用等功能。在这种共享存储架构下,数据可以在一个集群内不同节点间自动迁移,也就是说,一个虚拟机的映像可以在集群内任何一个节点上运行。这种“共享的DAS”模式既有本地存储简单、高性价比的特点,同时还可以提供很多SAN架构才有的优势。
如果DAS代表未来,那么SAN会消亡吗?
DAS不仅没有消失,而且发展得很好。许多存储业内专家都认为数据中心存储环境正在向着以DAS结构为主的方向发展。正如前文所描述的那样,未来SAN存储在数据中心的定位是作为数据长期保存的仓库,而真正活跃的数据都存放在服务器本地存储上。目前数据迁移管理软件成熟的很快,未来可以用于将活跃的数据保留在服务器本地。此外,这类软件还可以感知本地写操作,然后将新写入的数据同步到后端的SAN存储空间。
以DAS模式为主的存储架构被专家看好还有两个原因,即虚拟化应用环境对性能有较高的要求,以及SSD固态存储的高性能表现。前者是应用要求数据存储的本地化,而后者则是利用本地数据访问的高性能,尽量避免由于经过存储网络而产生的延迟问题。
利用好组合方案
同以往一样,存储管理员在应对存储应用挑战时依然有很多方案可以选择。但首先要有性能分析工具,它可以帮助我们对当前的环境进行调整。在决定下一步如何选择之前,重要的是尽量做好前期的准备工作并制定正确的决策。
如果因为预算或时间因素的限制无法升级网络或存储设施的话,我们可以走一条捷径,即构建SAN存储与SSD DAS存储混合使用的策略。这种方案通过消除存储网络瓶颈,可以最大化的发挥SSD的优势,从而在整体上获得性能提升。
如果预算不是问题,那么我们可以加大在存储网络和共享存储系统上的投资,比如今后想要减少性能方面的顾虑,用户可以选择一款全固态存储设备。当然,在后端存储系统优化的同时,利用DAS结构的SSD做启动盘和内存交换分区,优化前端的结构也是很重要的,这样就可以形成一套完整的高性能存储解决方案。