
| 出版日期:2004-07-05 总期号:1327 本年期号:48 |
|
RCSI:企业计算机新架构
韩晓明 中科院计算所国家高性能计算机工程技术研究中心利用自身在存储方面的技术优势,开发了可重构的计算机系统架构(RCSI系统架构)。RCSI体系架构不仅降低了企业计算机的采购成本和使用成本,同时极大地满足了服务器端的管理和用户端的使用者的应用需求。 我们知道,绝大多数计算机系统都是内置磁盘的,磁盘上存储着这台计算机运行所需的操作系统和应用程序,我们称之为系统数据;有的还存储着用户生成的数据,如程序代码、设计图纸、企业客户信息等,我们称之为用户数据。因为数据的价值早已引起人们足够的重视,为了防止自己的数据不丢失,人们纷纷采用专门的存储设备集中存储和管理自己的数据,采取各种各样的备份和容灾措施,极大地促进了网络存储行业的发展,也因此催生了众多存储系统制造商和服务商。很明显,这部分集中存储还仅限于用户数据,而系统数据并没有做到很好的集中存储,那么系统数据集中存储会带来哪些益处?带来哪些应用?计算机的使用模式又会产生哪些改变? RCSI架构应需而生 我们先把计算机系统做进一步拆分:把外部存储器如磁盘等称作存储资源;而把CPU、内存、南北桥等其他部分合称为计算资源。计算资源运行系统数据后生成计算环境,计算环境对用户数据再进行处理。因此,现代的计算机实际上更应该称作数据处理机,计算资源用来处理数据,不管是系统数据还是用户数据,都只有在运行时才发生,是临时性的行为;而存储资源用来存储数据,相对计算资源来说是永久的。传统的内置磁盘的计算机系统是把计算资源和存储资源静态绑定在一起的,生成的计算环境也是固定的,这样的系统存在如下局限性: 1. 存储资源被计算资源所限制。磁盘是依附于计算机而存在的,磁盘应有的空间无法被其他的计算机充分共享;而磁盘上存储的数据实际上就是信息,由于受所属计算资源的制约,信息应有的共享特性却无法充分发挥;同时,计算资源出现故障将导致存储资源无法使用。 2. 计算资源被存储资源所制约,只能运行磁盘中存储的系统数据。理论上,计算资源应该能够运行各种不同的操作系统和应用程序,但是受磁盘容量、操作系统特性以及用户实际管理能力的制约,计算资源只能运行本地磁盘上有限种类的系统数据,无法运行磁盘系统上没有的操作系统,客观上约束了计算机资源功能上的发挥。 3. 硬盘是造成计算机停机的主要原因,一方面是因为硬盘中包含机械部件,损坏的几率更大些,另一方面是因为现在的软件系统日趋复杂,软件引起的损坏也会导致停机时间更长。 尽管存在如此多的不足,但是在网络没有大规模普及的时代,内置磁盘是最好的使用方式,这也奠定了现有计算机应用的现实基础,并且固化为计算机设计的思维定式。但是对于网络时代的计算机,内置硬盘已经受到了挑战,比如几年前Sun系统提出的“网络就是计算机”的概念,内置的硬盘已经弱化了,已有的系统数据集中存储的计算机系统还包括SERVER+无盘CLIENT架构、SERVER+NC架构等,都对“有盘”计算机系统提出挑战,但开发这些系统的初衷,只是为了降低计算机的采购成本和使用成本,都是在某一方面有所妥协,因此,在服务器端的管理或者用户端的体验等方面均有不足,并没有得到用户的普遍认可。国家高性能计算机工程技术研究中心(以下称“工程中心”)则利用自身在存储方面的技术优势,开发了可重构的计算机系统架构(Reconfigurable Computer System Infrastructure,以下简称RCSI系统架构),从另一个途径很好地解决了这些问题。 RCSI系统架构框图如图1所示: 每个节点计算机都是无盘的,通过一个网络磁盘接口卡(nHD)同后端智能网络存储设备相连接,该存储设备被划分成若干个不同的网络块设备,每个块设备上存储不同的系统数据,通过网络块设备协议如NBD、iSCSI等与节点计算机的网络磁盘接口相连接。节点机开机以后,就会把某一个或某几个块设备绑定到自己的系统中,成为自己的本地磁盘设备。节点计算机运行网络块上的系统数据,生成计算环境。每个节点都可以和不同的块分别绑定,也就可以生成不同的计算环境,这就是RCSI系统架构,如果这种重构是动态的,既每次开机都可以重新构造新的计算环境,我们称之为动态可重构计算机系统。如果集群系统中的所有节点都是动态可重构的,那么整个集群系统也是动态可重构的。可重构系统实际上把磁盘与计算机之间的总线连接转换成了网络交换连接,计算机可选择的系统磁盘接近无限多个。 RCSI系统架构带来哪些益处 计算机无身份更加容易管理 因为计算机节点不存在本地磁盘,因此这个计算机也是“无身份”的,即不属于任何人的,每个人在使用计算机时都可以随便选择一台,运行自己想要的操作系统和应用程序;同时,计算机也不具有任何属性,既不是E-mail服务器,也不是Web服务器,只有在开机以后才具备某种属性,提供某种服务,因此管理和维护起来也相对容易得多。 方便实现备份和管理 磁盘是计算机系统中故障率最高的部件,也是造成计算机停机的罪魁祸首,为每个计算机节点配备冗余磁盘阵列显然是不可取的,为每台计算机的系统数据单独备份,在可操作性方面也存在着困难。一旦实现了集中存储,我们就可以在网络存储设备上使用RAID,即使个别磁盘损坏也不会造成数据的丢失;为了快速分配新的用户,可以预先制定模板,需要系统数据的时候只需要“克隆”即可;如果有必要,系统数据可以定期备份,一旦系统数据损坏,可以快速恢复。 提高了磁盘的利用率 一是提高物理利用率,统计表明,在传统的“有盘”系统中,磁盘的物理利用率不到47%,也就是说,用户的磁盘空间有一多半是闲置的、浪费的。而在RCSI架构系统中,磁盘是集中起来再按照需要分配的,可以根据用户系统数据的属性和特点分配适当空间,并且可以根据需要动态调整,配合虚拟存储技术更可以节省大量的磁盘空间;另一个是逻辑利用率,传统计算机的系统盘在计算机工作的全过程中只有很少一部分时间在读写数据,大部分时间都是空转。采用了RCSI系统之后,则能够有效地提高逻辑利用率。
图1 RCSI系统架构框图
图2 企业用RCSI系统结构框图 RCSI系统架构提供的应用模式 可实现按需构造 对于一台计算机节点来说,比如图1中的Node 1 ,和不同的系统数据(sys Data)绑定就可以生成不同的计算环境,构造新的系统。而对于一个计算机集群来讲,整个系统可以按照需要实时地搭建,按照需要组成新的系统。 实现系统动态调度 正是因为系统可以按需构造,我们就可以根据集群系统负载的变化情况实时增减服务器节点的数量,切换服务的种类,从而达到动态调度计算机节点的目的,使我们的计算机得到更有效的利用。 实现系统数据的虚拟共享 在有些工作环境中,不同的计算机之间的系统数据差别并不是很大,尤其在集群环境中,相同服务节点的系统数据几乎完全相同。理论上,这些节点只需要一份数据的拷贝就可以了。因此在存储设备端,可以采用虚拟共享技术,为每个服务制作一个模板,当有多个节点需要相同系统数据的时候,只需把这个模板通过虚拟共享供用户使用,从而节省大量的磁盘。 快速部署计算机系统 大规模集群的部署是一个很复杂的过程。传统的集群环境中,尽管已经存在网络安装,广播部署等方案,但实施起来仍然需要很多时间。采用RCSI系统之后,安装过程是在网络存储设备内部进行的,并非通过网络拷贝;采用虚拟共享技术以后,复制一个新的服务只需几秒钟时间,而且与系统数据模板的大小无关。部署过程就是服务器节点和网络块设备之间的重新绑定过程,部署新的系统服务也只需要几秒钟,然后再重新启动集群服务器节点就可以完成。 实现系统智能自主运行 在动态可重构计算机集群系统中,配合集群监控系统,实时监控集群的工作和负载状况,并及时调整集群节点的运行数量,可以不需要人为干预,可以使整个系统实现自主运行。 RCSI系统架构的应用环境 服务器集群环境 和集群中的负载平衡的道理一样,大型集群系统的不同服务之间也需要平衡的。比如某个时段的Web访问较多,而另一个时间段的E-mail服务负载较重。那么,究竟是在峰值期间降低服务质量,还是按照负载峰值来配备计算机系统?显然这两者都不是最佳,如果有一种办法能够动态地切换服务,则既能提供高质量的服务又能减少采购量当然是最好的。RCSI架构的核心技术之一——服务点播系统(SonD)最初的目的就是为了实现集群系统管理和部署而开发的。在存储设备端预先制作若干个服务模板,比如E-mail服务、Web服务等,在需要的时候可以快速复制出新的块设备。如果需要重新部署服务器,只需要把服务器节点和指定的网络块设备重新绑定并重新启动服务器即可。实现了动态的服务切换。 需要动态切换服务的还有超级计算中心等提供计算服务的部门。部署一个超级计算项目是一个很复杂的过程,需要等上一个计算服务完成以后才能进行。如果采用这套系统,就可以在上一个计算服务运行的过程中制作下一个计算服务的模板,从而减少配置服务的时间,提高服务效率。 大规模企业应用 针对大型企业应用,我们在原有RCSI架构上加以扩充,系统结构图如图2所示。 这套计算机系统分为五层:访问层,计算层,系统数据层,用户数据层和公共资源层。所有资源都受管理服务器的管理和控制。作为和HP的CCI系统相同之处,访问层同样都是普通的NC,位于用户端的桌面上,其他层资源都位于计算中心,进行集中管理和维护。整个系统工作过程如下: 1. 用户在访问层申请一个服务,管理服务器会提供一个服务列表,返回给用户; 2. 用户在列表中选取想要的服务返回给管理服务器; 3. 管理服务器根据服务内容定位系统数据空间,根据服务属性定位计算节点; 4. 被选中的计算节点与被选中的系统数据空间绑定,并运行生成计算环境; 5. 访问层和新生成的计算环境挂接并登录; 6. 新的计算环境根据用户的登录信息定位用户数据以及共享资源。 与CCI系统架构相比较,RCSI系统在计算层做了较大的改动,进一步细分成计算节点和系统数据两层,这是使该系统有别于CCI系统架构的最根本特征。这套系统理论上具备了HP的CCI系统所有的优点,而且配置起来更加灵活,设备资源的利用率更高,维护和升级更方便。 实现数据保密 上述系统在保密单位同样适用。比如军方以及为军方提供设计和生产服务的部门。有相关的文件明确规定,禁止在本地硬盘中存储与保密内容有关的任何信息,多次失密事故也表明,本地硬盘是窃密者首要的目标。采用了RCSI系统以后,所有计算机节点都没有本地硬盘,把存储设备集中放置在安全的地方,可以很好地减少失密的可能。访问层只是通过RDP协议与计算层进行通讯,并没有数据I/O访问,也无法输出任何可保存的信息。 软硬件开发环境 RCSI系统架构同样很适合软、硬件以及图形、多媒体等开发部门。在nHD系统配合下,用户体验和使用普通的PC、图形工作站等没有任何区别,图形性能也没有任何改变,这对一些需要显示硬件支持的用户尤其重要。工程中心内部采用RCSI系统做自己的开发和办公环境约有两年的时间,由于在后端的存储设备上采用了冗余磁盘阵列(RAID5)以及热备援(Hot Spare)磁盘等技术,尽管也出现过多次磁盘损坏的情况,但从没有丢失数据的情况发生。并且对新来员工的机器配置上也节省了很多时间,重新配置一台新的工作用机只需要几分钟的时间,常用的软件已经预先安装完毕,用户只需重新更改一下IP地址,不再需要安装什么新的软件即可开始工作。 网吧和电子教室 在网吧和电子教室的应用环境中,系统数据比较特殊:所有计算机的系统数据都是完全相同的。在无盘环境中,所有节点完全共享一个系统数据映像;有盘系统中,所有磁盘上的数据都是从同一个“母”硬盘“克隆”出来的,彼此之间完全相同。而且在整个系统工作过程中,无论对磁盘有什么样的操作,重新开机都会恢复到初始状态。采用RCSI系统以后,客户计算机端只需安装一块nHD卡,所有操作系统和应用程序集中存储在存储设备上,不但节省了磁盘采购成本,也节省了维护成本。软件升级也很方便,不需要把所有的磁盘重新“克隆”一遍,只需升级存储设备端磁盘即可。对于扩容来说更方便,不需更换所有用户计算机的磁盘,只需要把存储设备端的磁盘更换即可,节省了大量的人力和物力。在电子教室应用中,由于动态部署的存在,不同课程之间的切换变得更加容易。 RCSI系统架构展望 如果RCSI系统架构理念被大规模推广并应用的话,将对计算机行业产生很大影响。 对软件的授权模式产生影响 现在的软件授权绝大部分都是购买的,而且安装以后就一直使用下去,如果再安装其他操作系统实际上造成了对已购买的操作系统的浪费。那么操作系统的授权是否可以租用?如果应用RCSI架构,完全可以租用网络上的某一个系统映像,每次开机租用关系即产生,就像我们用水和用电一样,而且可以分时租用不同的操作系统。同样的,应用软件也同样可以租用,因为事实上我们并不需要购买软件,我们买来的软件并不是同时使用的,比如办公和娱乐等,总有一部分闲置,从某种程度上来说是一种浪费,新的软件授权模式能够很好地解决当前这个矛盾。当然,除了租用之外也有可能产生其他新的授权模式。 对计算机使用模式产生影响 可以想象一下,如果有一天网络带宽足够宽,用户的计算机并不一定需要安装硬盘,有盘的计算机也不一定只运行自己磁盘中的操作系统,完全可以在网络中找到一个自己所需的系统数据映像启动即可。用户可以随心所欲地在自己的计算机上运行各种操作系统以及应用软件,或者运行同一个操作系统的不同版本,而且可以保证是最新更新过的。因为会有专人进行维护,计算机用户不再需要努力维护自己的本地操作系统,不需担心自己的磁盘容量某一天会被装满。用户也可以在自己不需要计算机的时候把自己的计算能力出租,按照客户的需求部署特定的程序。企业用户也可以在员工下班以后重新部署闲置的计算机为一些用户提供计算服务。 对软件的开发产生影响 网格是目前计算机学术研讨的一个热门话题,如何在普通的计算机系统上实现网格功能也是一个业界普遍关注的焦点。如果在操作系统内部添加一层中间件,用户把自己的系统数据和计算能力贡献给网络上其他的用户使用,事实上就构成了网格。 “绿色”软件会逐渐增多,现在的软件都需要安装,结果导致操作系统越来越复杂和臃肿,而且一旦操作系统崩溃,所有的应用软件都要重新安装,维护起来工作量很大。如果软件都做成“绿色”的,和操作系统之间是一种松耦合关系,即不向操作系统写入大量数据,这样在操作系统崩溃以后重新安装,不会对应用软件造成多大影响,系统维护起来将变得很容易。 综上所述,RCSI架构实际上更像一种以网络和网络存储为核心的计算机系统使能技术。上面的几点展望只是冰山之一角,有了这种技术,计算机系统开发商可以发挥各自的聪明才智,开发出各种新的计算机系统,具备以前传统计算机系统所无法实现的功能,开辟出新的计算机应用模式,使计算机能够发挥其本身具有的最大的效能。 (E1) 相关链接 蓝鲸1000网络存储系统 中科院计算所国家高性能计算机工程技术研究中心研制的蓝鲸1000网络存储系统(Blue Whale 1000)是一个基于IP的新型网络存储系统。蓝鲸1000的目标是通过采用新型的服务器系统结构,对系统和数据进行有效的管理和监控,满足高性能计算、大型数据库、流媒体等多种企业级存储应用。 技术特点 高可扩展性 蓝鲸1000的系统结构设计使得系统易于扩展性能和扩充容量。 NAS和SAN的融合 蓝鲸1000结合了SAN和NAS的技术,为应用系统提供了文件系统和网络磁盘两种接口。 虚拟存储技术 蓝鲸1000提供共享存储池、64位虚拟存储空间,集中存储的方式易于数据的备份、容灾和恢复,采用动态分配物理存储空间的方式,提高物理设备利用率。 高性能、大容量、可扩展的并行分布式文件系统 并行文件系统提供了一种解决I/O瓶颈的途径,它可以将多个存储设备上的存储介质组织成为全局的存储系统。 功能特点 按需扩展 蓝鲸1000的扩展能力使得用户可以通过分期投资的方式来合理分配资金投入。 按需使用 系统提供网络文件系统和网络磁盘两种接口,满足用户多种使用模式的需求。 按需部署 蓝鲸1000采用的SonD系统将传统的重复安装操作系统和软件的工作简化为复制模板的过程。 易于管理 蓝鲸1000提供标准SNMP监控接口;提供清晰友好的管理界面;通过基于WEB的系统监控界面,用户可随时对系统进行实时的监控。 降低投资 目前,计算所网格已经采用蓝鲸1000作为后端存储系统。计算所网格的目标是通过共享和协同增加生产力,包括存储的共享、服务的共享、计算资源的共享等。计算所网格上将运行多种应用系统:所内的EMAIL服务、网站、各个室的服务器、所务平台、实验平台、租赁服务器等。另外,某部队也已经购买蓝鲸1000并将其投入使用。
蓝鲸1000网络存储系统体系结构图 |
|||||||||||||||||||||||||