公有云用于运行采用最新工具以及最新潮编程语言构建的新应用程序。那么能够在公有云上运行将企业数据中心搞得有些狼狈的遗留应用吗?
如果应用程序进入到了更新期,那么为什么只是通过进行硬件升级或者使用新GUI这类整容方式来解决呢?相反,为什么不全力以赴在技术最为先进、具备可扩展性、灵活性的云平台上重新构建应用呢?如果提到运营成本而非资本支出模型,那么更应该采取这一措施。
事实上,有越来越多的IT专业人员在思考这个问题。IDC应用开发软件研究项目部主任Al Hilwa说IT专业人员对使用云作为遗留应用现代化建设的目的地有兴趣。
Hilwa说:“有一些工作负载,比如面向外部用户的应用能够很好地迁移到云中。”但是迁移现有遗留应用到云中之前需要对一些注意事项进行评估。
陷阱无处不在
今年夏天,Pabst Brewing公司将其整个数据中心从德州的圣安东尼奥迁移到了Rackspace云平台,使用了公司的混合云及管理服务。在迁移两个旧应用微软动态GPERP系统(之前称之为Great Plain)以及营收管理工具Salient Margin Minder之前一切相当顺利。
Virtessential是一家IT集成商,其CEO Stephen Blake见证了这一迁移过程,他解释道这两个应用已经运行了五年多的时间,经历了多次功能升级,打了多次补丁。Pabst Brewing公司没有访问源安装文件,也没有查看记录配置变更的相关文档。
Blake说:“没有人知道安装了什么,应用就是一个黑盒子。”
与此同时,和大多数管理的服务供应商类似,Rackspace不想为知之甚少的应用提供服务级别协议。
Blake说:“不会有太多被管理的服务供应商MSP能够相当变通地说,‘是的,我们托管镜像。’他们不想承担对现有问题提供支持的风险。”
相反,服务供应商MSP通常只同意对新安装的应用提供支持,这些应用使用MSP的首选工具进行管理。Virtessential使用AppZero提供的应用虚拟化软件绕开了这一问题,将应用及其依赖程序提取为便携式的“虚拟应用设备”软件包,然后在新操作系统上进行安装。
Blake说:“这些服务器像是新搭建的,但实际上并不是。”
应用的提取及迁移过程少于1小时,自从8月份以来在Rackspace运行的应用并没有出现问题。Blake说如果他们之前没有找到AppZero,那么迁移这两个应用可能会增加三到四周的时间。
对Pabst来说,将遗留应用迁移到云中最终获得了成功,但是事情并非总是如此轻松。
疯狂的多租户
企业在逐步增加SaaS应用的大客户,经典的例子就是Saleforce.com的CRM以及Workday的薪资管理外包服务。现在一些内部IT部门在思考继续像之前那样,将内部应用重构为基于云的多租户应用——私有SaaS是否有意义。
例如,想象一下汽车制造厂为全国的经销商所开发的财务应用。该应用被编写为单租户应用,需要在经销商处进行本地安装、运行并由本地的IT专业人员进行维护。这一模式必然充满困难,因为经销商必须解决出现的故障并对应用进行维护。
与上述模式相反,如果被重新构建为基于云的多租户SaaS应用,汽车经销商只需要登陆而由制造商处理升级,维护以及新部署,这种模式的效果怎么样呢?
独立软件开发商已经提供了在经销商处运行的本地软件,而SaaS软件认为迁移到多租户环境对业务发展意义重大。
EMAS Pro公司为大中专院校提供学籍管理软件,其高级副总裁Andrei Sergeev说:“多租户是正确的选择吗?是的,因为目标是优化维护成本。”简单来讲,对供应商和用户来说,基于SaaS的工具安装与维护更加简单。
Sergeev说,SaaS还提供了由用户控制的高级功能,如果在经销商本地运行软件则意味着高成本。
在对本地软件解决方案进行了一些尝试之后,EMAS Pro最近开始提供称为Retention Pro的基于SaaS的工具,用于帮助学校识别出存在退学风险的学生。该服务包含一些不同的模块,Apache Tomcat、规则引擎、业务分析以及报告引擎,所有这些都是紧密集成的。
Sergeev说:“如果你想在本地运行这些完全不同的组件,那么所有的一切都需要许可,这一方案将成为价格昂贵的提议。”他说可以想象到在企业中有很多针对私有多租户SaaS应用的用例。
不幸的是,将遗留单租户应用重构为多租户却是说起来容易做起来难。
系统软件供应商LANDesk的主要产品经理Brian Hoskins说“这是一项艰巨的任务。”在过去三年中LANDesk公司一直在将传统的服务台工具SaaS化,目前正在针对系统以及安全管理产品进行SaaS化。
Hoskins解释道:和很多遗留的本地应用类似,LANDesk围绕对应用以及数据库层进行直接调用的Windows控制台构建。这一模式在SaaS平台下无法运行,所以公司必须重写所有代码,通过Web服务完成所有调用。#p#
缓解危机
对没有兴趣进行项目开发的公司来说,有创业公司比如Apprenda以及Corent声称能够简化遗留应用向多租户的迁移过程。
例如,Corent多租户服务器能够用于将单租户应用转换为多租户应用,多个租户之间可以共享数据库也可以使用单独的数据库。
O4BO.com总部位于香港,最近使用Corent MTS创建了SaaS服务,运行在来自开源商业软件标准清单当中的IBM SmartCloud之上,这其中包括了用于ERP的Openbravo ,进行业务分析的Pentaho以及SugarCRM。Mike Oliver是O4BO的创始人,同时也是Corent的前雇员,他说转换次数有所不同,但是能够在一个小时以内转换某些应用。
Oliver说:“这和应用有关,有些应用设计良好,但是某些应用存在个人喜好或者设计不够良好的代码。”Oliver接着说,“然而访问源代码并不是Corent MTs必须要做的事儿。”
Oliver说他已经和很多企业提起了Corent MTS,其功能引起了这些公司的兴趣。例如一家美国卫生保健机构正在考虑在全美和其下属公司一起使用Corent MTS。他们特别感兴趣的是被转换的应用能够使用共享或专门的数据库,在卫生保健方面这是一个非常重要的考虑因素,因为不同的州之间的规章制度是不同的。
同样,转换本地应用到多租户环境能够为组织内部的不同群体——最终用户、开发人员、质量保证人员提供了一种很有趣的方式访问单个应用,为每个组提供自定义视图。
没有付出,就没有收获?
专家说,将遗留应用迁移至云中的捷径非常吸引人,但是做一些艰苦的重构工作实现新范式还有一些事项需要注意。
云管理软件厂商RightScale公司的CEO Michael Crandell说架构合理的云应用相对于传统的本地应用具有众多优势即可预见性、弹性以及敏捷性。
可预见性来自于“模板”云应用,这消除了众多人为错误的可能性。Crandell说:“你手动更改之时就是引起混乱之时。”
敏捷性来自于自动化技术比,如自动缩放以及能够选择你想在哪儿运行工作负载,弹性是围绕“一切最终都会失败这一观点”设计应用以及在多个节点,区域甚至云供应商之间扩展应用的结果。
Crandell说:“尽管可能很难,但我们建议重新构建正在考虑迁移的所有遗留应用。选择单个遗留应用并将其丢到云中服务器的想法根本没有实现云的效益。”