同高速公路一样,车多了就会造成拥堵,物理服务器与桌面虚拟化其实都是同样的道理。如果大量虚拟桌面在一个较短的时间内同时启动,由此引发的集中存储I/O访问往往会很轻易地淹没存储系统。这也就是人们所谓的“启动风暴”。
同高速公路一样,车多了就会造成拥堵,物理服务器与桌面虚拟化其实都是同样的道理。如果大量虚拟桌面在一个较短的时间内同时启动,由此引发的集中存储I/O访问往往会很轻易地淹没存储系统。这也就是人们所谓的"启动风暴"。
自主研发指纹镜像技术
启动风暴发生时,虚拟桌面运行极度缓慢,甚至无法使用。这将不仅导致用户体验大打折扣,更将严重影响其业务运营和生产效率。有没有一种技术能够彻底解决虚拟桌面用户的启动风暴问题,云巢科技的技术专家给出了肯定的答案。
"桌面虚拟化启动风暴问题是所有桌面云厂商面对的共同问题。"云巢科技技术专家指出,基于自主研发的指纹镜像技术,云巢桌面云解决方案完全避免了启动风暴,虚拟机并发启动在15秒左右。
云巢技术专家介绍说,指纹镜像是一项磁盘数据去重的技术,通过一个缓存体系,把对存储系统的i/o访问转移到对cache的访问上。简单来说,就是一个磁盘块数据被虚拟机A访问了,同时把它复制到cache中,后续的其他虚拟机(也可以是自己)对该磁盘块的访问,就都从cache中去取。访问cache是内存操作,速度远快于访问文件系统,这样就解决了启动风暴等因为磁盘IO导致的问题。缓存体系的建立要依赖于一个key-value的集合映射关系,这里的key指的是磁盘块的特征码(与磁盘块数据一一对应,我们称之为指纹),value指的是磁盘块数据,所谓指纹镜像,即是在原始磁盘镜像的基础之上,附加建立一个磁盘块数据和它的指纹之间的映射关系的集合。
"为了解决启动风暴问题,我们有两种解决方案:一是提高磁盘访问速度,二是减少磁盘访问次数。提高磁盘访问速度无非是使用访问速度更快的磁盘或者增加磁盘阵列的磁盘数,要想达到显著效果,无疑会增加不少硬件成本,所以我们采用了第二种方案。"
率先攻克业内难题
在虚拟机系统启动时,磁盘请求主要是读取系统文件。而一类镜像文件(比如:所有的win7系统镜像文件)里面的系统文件有90%以上是相同的,所以当多个虚拟机启动时,会读取大量相同的数据。我们知道,内存的访问速度要比磁盘的访问速度快很多,如果将这些重复数据缓存一份在内存里,建立一个映射机制,将会大大减少磁盘的访问次数,启动风暴的时间也就会缩短很多。
技术专家进一步解释说,实现指纹镜像的难点在于如何建立映射机制。由于虚拟机是按数据块来管理映像文件内容,所以技术人员用镜像文件每个数据块的数据生成对应数字指纹并保存在镜像文件里。虚拟机启动时从镜像文件里读取指纹并缓存在内存里,在读的时候用该指纹向数据缓存服务程序查询是否已经缓存了对应的数据。如果缓存服务程序已经缓存了该数据,则将该数据转给虚拟机;如果没有缓存该数据,则虚拟机从镜像文件里读取该数据并通知缓存服务程序缓存该数据。
在数据缓存服务程序中,指纹以及对应的数据块的管理也是一个难点。因为服务器的内存是有限的,不能无限地缓存数据。所以,云巢科技实现了一套算法来管理指纹和对应的数据,其一是依据服务器内存大小来设定数据缓存服务程序的内存上限,其二是定期回收访问率比较低的数据。
基于以上相关原理,云巢研发了世界领先的专利技术"指纹镜像",即当一个完全相同的数据对象从磁盘上被多个用户重复读取的时候,只需对磁盘做一次I/O操作,利用专门开辟的内存空间用作缓存,大量的I/O操作只针对速度比硬盘快成百上千倍的内存,这样大大减少了磁盘I/O,同时启动虚拟桌面的用户越多,对比效果越明显,而且只要有一个用户启动过虚拟桌面,以后启动的虚拟桌面不需再从磁盘读取数据,用户会体验到比物理机启动还要快得多的开机速度。
应用体验效果良好
不久前,一家高校用户部署了一套云巢桌面云,该校信息中心李老师对于指纹镜像技术的感受颇具代表性:"在我们的桌面云系统中,启动风暴过程中存储系统的访问次数极大地降低了,虚拟机的启动时间基本接近普通PC的启动时间,甚至有的虚拟机的启动时间比普通PC还短,我们的老师和学生基本上感觉不到现在的所有应用都跑在虚拟平台当中。"
"指纹镜像就是为了解决虚拟桌面用户的启动风暴问题而生。"据了解,作为一家国内领先的拥有自主知识产权的桌面云解决方案厂商,云巢科技桌面云采用了更先进的架构,拥有指80多项核心技术,其中包括5项世界领先专利技术,指纹镜像技术即为其中之一。"希望通过云巢科技的桌面云技术,能够为企业提供安全性高、可用性高、绿色节能、办公灵活、总体拥有成本低的桌面云平台,帮助企业向更低成本、更安全、更易管理的IT基础架构过渡。"
网友评论