公有云是遗留应用的最佳归宿吗?

公有云用于运行采用最新工具以及最新潮编程语言构建的新应用程序。那么能够在公有云上运行将企业数据中心搞得有些狼狈的遗留应用吗?

如果应用程序进入到了更新期,那么为什么只是通过进行硬件升级或者使用新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服务完成所有调用。