研发云计算
文/王华倩
虽然IT行业对云计算(Clouding Computing)有不同的看法,但它仍然是近几年最热的IT词汇之一。究竟什么是云计算,它对我们所关注的企业研发信息化有何帮助呢?
“云计算既指通过互联网以服务方式提供的应用程序,也指在数据中心用来提供这些服务的硬件和系统软件。这些服务长期以来一直被称为软件即服务(SaaS),于是我们仍然遵照这个说法。数据中心的硬件和软件就是我们说的“云”。
当云以现用现付方式提供给一般公众时,我们称之为“公共云”。被***的服务称作“公用计算”。我们用“私有云”指代那些商业企业或其他组织的不对公众开放的内部数据中心。因此,云计算是SaaS和公用计算的合集,但一般不包括私有云。
——以上摘自UC Berkeley高可靠适应性分布式系统实验室(UC Berkeley Reliable Adaptive Distributed Systems Laboratory) 11位学者在2009年2月10日联合发表的一篇关于云计算的报告(http://d1smfj0g31qzek.cloudfront.net/abovetheclouds.pdf)
比较通俗的说法,云计算就是硬件+软件+服务。这三者并不是简单的相加,对于研发信息化而言,云计算应该定义为,适应研发需求的硬件与软件合理搭配,并为研发提供易用、高效、低成本的信息服务。
对于企业内部来讲,“私有云”是现代企业研发信息化发展的趋势之一。本文从桌面、计算、存储、可视化、网络等几个方面阐述一下云计算在大型企业研发信息化应用。
“桌面云”
研发人员每天都要通过计算机的桌面系统进行交互操作参与研发活动。传统的做法是根据研发人员的需求,每人配置一台笔记本、PC或工作站作为终端机,操作系统大部分是Windows系统。随着硬件价格的不断降低,好像这种做法的成本也随之降低。但传统的桌面方式存在较高运营成本和安全隐患。由于这些桌面系统是分布在研发各科室、各部门的,难以集中管理。数据保存在个人终端机的硬盘中,而这些硬盘往往没有很好的容灾措施(例如病毒、硬盘坏道)等,数据安全得不到保证,同时也无法保证终端机数据的物理安全。
桌面台式图形工作站,以及安装在上面的各类研发类CAX商业软件,目前仍是研发工程师的必须装备。但这些企业花巨资购买的软、硬件分散在研发各科室各部门,其使用率很可能并不饱满。例如3D CAD设计和工程仿真需要专业3D加速卡,如果台式图形工作站分布在个人的桌面上,则使用者如果不是每天都在用3D软件,或在外出差等,昂贵的3D图形加速卡和工作站将闲置。再例如某个科室可能根据某项目重金采购了某工程仿真软件,如果只安装在这个科室,那么一旦项目结束,此分析软件可能就闲置,即使别的科室有项目需求,也很可能不方便使用。
桌面云将能很好地解决上述分布式桌面带来的资源浪费的问题。例如把这些软、硬件放到企业的数据中心,让硬件和软件都通过企业资源调度系统,配置合理的配置策略,让用户远程使用。对软、硬件的使用记录及统计、管理和维护(例如空调、电力等)水平、数据的安全等都得到革命性的提升。
各IT厂商都提出了类似的“云”桌面解决方案。例如HP的CCI/VDI/SAM/RGS方案和Sun Ray等。涉及刀片PC、刀片工作站、桌面虚拟化、工作站虚拟化、远程图形压缩及传输技术、瘦客户机等技术。
桌面云的实施可循序渐进,例如先把对数据安全性要求最高的人员的桌面移到机房的刀片工作站或刀片PC上,图形工作站也可以移到数据中心机房里作远程使用,其他人员随着个人PC或工作站的更新换代,更换为刀片PC(或刀片工作站)+瘦客户机的模式。
“计算云”
工程仿真在企业研发中得到越来越多的应用,如何以更短的时间求解更大规模、更复杂问题,目前仍然是很多研发人员头疼的问题。单台工作站往往无法满足此类软件高性能计算的需求,越来越多的企业已经或正在考虑建设工程仿真高性能计算(HPC)系统。这类系统不是简单的集群或小型机的采购,以下几点往往容易被忽略:
① 针对工程仿真求解器的特点选配硬件架构,包括服务器种类,互联结构,存储架构等。例如有些应用需要海量内存,一般的瘦节点集群就无法求解。再例如有些应用需要低延迟互联进行大规模分布式并行求解,则千兆以太网不能获得理想的并行效率。还例如有些软件在运行过程中需要持续读写磁盘系统,普通的NFS等文件系统就成为系统性能的瓶颈。
② 选择适合自身的计算资源调度软件,与工程仿真软件“亲密”集成,配置优化计算调度策略,让最重要、最迫切的计算任务优先得到软件许可证和硬件计算资源。对硬件资源的调度我们认为目前相对成熟,无论商业的或开源的都可以作的很好,但对软件许可证的调度,由于应用软件的种类繁多、许可证格式五花把门,很可能需要作一些定制或代码开发工作。
③ HPC系统与工程仿真软件前后处理、数据管理软件、流程管理软件等的接口。工程仿真平台是企业研发平台的重要子平台。如何将HPC系统嵌入到工程仿真平台中,让使用者以最方便易用的方式调用HPC系统进行求解,也是需要一些定制或代码开发工作。
如果HPC系统能很好地解决上述性能优化、资源(包括许可证)调度及统计、与前后处理和数据及流程管理软件集成三方面问题,我们认为可以把此HPC系统称作企业内部的“计算云”。
“存储云”
数据是信息的载体,研发信息化的相关数据与一般的企业信息化应用的数据相比,数据块更大(例如以GB计的大工程仿真数据),对数据读写的性能要求更高,安全性要求更高。一些IT厂商提出的数据生命周期管理的概念值得考虑。例如从性能上,将正在研发的相关数据放在性能最好的存储器上,供研发人员快速读写(例如基于万兆以太网、光纤或Infiniband的存储),将旧的研发项目数据放在性能一般,但容量较大的存储上(例如大容量的SATA盘阵,用iSCSI协议等)。将长期不用的数据用光盘库或磁带库进行永久保存等。
存储还应与桌面应用、计算应用以及基于Web和数据库的应用相集成。例如工程仿真传统的做法,是利用Windows图形工作站进行前处理,生成求解所需的输入文件,然后上传到Linux HPC系统进行并行求解后下载结果到本地。不仅文件的上传下载耗费网络带宽,还容易造成磁盘空间的重复占用。如果将图形工作站或刀片工作站放在数据中心,就有可能与HPC系统高速共享一个并行文件系统,无论是Linux/Unix还是Windows。让计算节点和前后处理节点(工作站)像读写本地硬盘一样读写统一的存储。这样就避免了文件的传输问题,而且统一的存储可很方便地进行磁盘限额及数据备份。
如果充分考虑了企业研发所需存储的性能、容量、安全以及与桌面及计算等应用软件的集成性和易用性等因素,我们可以称之为企业研发的“存储云”。
“可视化云”
研发中如果遇到需要用到海量图形处理,而一台图形工作站无法满足要求,例如内存不够,3D图形加速卡处理能力不够等,则很可能需要用一台性能更好的服务器或集群配合多块3D加速卡来处理海量图形数据。“可视化云”的服务器也可与“计算云”的一部分,在没有“可视化”需求时应用于普通的浮点计算。
我们同意一些IT行业注明人士的说法,云计算并不是全新的概念,它与Grid、ASP、SOA、SaaS等概念或方法有很多类似的地方。云计算的最终目的是为某一业务提供服务的,例如本文阐述的研发信息化应用。作为企业内部的“私有云”,也没必要为了赶潮流而一刀切,可根据企业自身的实际情况逐步改造。
对于中小企业,凭自身的实力搭建私有的研发信息化云计算环境或许不太现实。但中小企业对研发的需求与大型企业是一样的,因此我们认为,有必要搭建公共的研发信息化云计算平台,让普通中小企业也能以较低的成本,以云计算的模式,应用以往只有大型企业才能考虑的研发工具。尤其是针对某一个行业(例如模具行业),在这个行业企业比较密集的工业园区内,搭建这样的公共平台更有实际意义。
我们认为研发信息化公共云计算平台除了具备“私有云”的特征以外,还要考虑如下几个特点:
1. 网络带宽
研发信息化涉及的数据块往往较大,数据在最终用户客户端与数据中心服务器之间的传输需要稳定的带宽,远程图形操作(例如3D)需要较低的网络延迟。随着Internet基础设施不断扩容,Internet接入的带宽、质量不断提高,成本不断降低。尤其3G无线通讯的迅速普及,将使移动宽带变成现实。3G的带宽最高达7~8Mb/s左右,甚至超过了普通的家用有线宽带(目前大多2M)接入。我们曾经测试使用家庭的2M的小区宽带,远程操作公司里(同一城市但相隔3个行政区)的一台图形工作站进行复杂3D模型操作,认为3D模型的缩放、旋转、平移等稍有延迟,但操作顺畅,平滑,完全可以接受。如果将公共仿真平台放在工业园区的数据中心,此工业园区中的企业终端到数据中心服务器经过的路由更少,带宽更高,网络质量更好。因此我们认为工业园区内网络带宽足以满足上百个账户同时访问公共研发服务平台的软、硬件资源。
2. 数据安全
研发的数据越来越成为企业发展的命脉之一。如何保证公共服务平台上的数据的安全性,是需要重点考虑的内容之一。
一般的中小制造型企业一般不会花费巨资购买成熟的网络安全和数据安全相关软、硬件,容灾、备份等设备、手段和制度,往往在专业的数据中心相差很远。因此放在数据中心的数据应该是更安全的。中小企业建私有云的成本也比较高,存放数据的硬盘往往就在研发人员的桌子上的图形工作站里,人员的流动会造成潜在数据丢失的隐患,太苛刻的IT安全管理制度有可能会造***员信任上的危机。使用公共服务平台,数据全部在数据中心,可有效避免上述弊端,反而使企业重要的研发数据更安全。
此外从技术上和管理制度上,公共云计算服务平台将采用业界领先的安全技术和手段,例如数字证书、VPN、数据加密、数据备份及恢复等。甚至可以考虑采用一部分银行或军用的安全技术,平台正式运营前将获得业界认可的安全认证,大小中小企业应用此平台进行研发活动在信息安全方面的疑虑。
3. 费用结算
研发信息化公共云计算平台将采用类似token的计点的方式计费。通过对用户对硬件资源(例如图形工作站的登录和注销、使用计算服务器的数量和计算时间)、软件资源(例如软件模块许可证使用的数量及时间)、存储资源(占用的存储空间)的使用记录的统计,结合可调整的token的计点算法,计算每次使用的token值。Token还可用户平台内其他服务的消费,例如e-learning及技术交易等。
研发信息化云计算,无论是大型企业的私有云,还是中小企业的公共云,都将逐步改变在研发活动时使用信息化工具的方式,让企业以更低的成本、更高的效率、更安全地进行研发活动。bat365中文官方网站积极与国内外知名的IT厂商合作,推广和应用云计算在企业研发信息化方面的应用。帮助用户推荐、策划、实施企业信息化云计算基础IT架构平台。