实施小步慢进策略
去年10月,Sun公司的Web技术负责人Tim Bray在自己的博客中首先提出了供应商锁定的问题,引起了业界对此问题的探讨。Tim Bray认为,如果用户不能很容易地从某个供应商的云计算平台迁移到另一个供应商的平台,用户就处于被供应商锁定的状态。
“如果云计算要真正流行开来,用户必须是完全自由的,绝对不应该有被供应商锁定的风险。”Tim Bray在自己的博客中写到,“过去,我们曾经被庞大的桌面软件和专有的SQL限制了自由,难道今天我们还要让这一幕重演吗?要知道锁定意味着把你的IT预算交给了供应商。”
而在Staten看来,被供应商锁定是云计算前进道路中的一道坎,也是云计算市场不成熟的具体表现。Staten补充说,在目前不太景气的经济形势下,IT负责人还有另一个担心,就是供应商会不会故意这么做。
CPS能源公司的CIO Christopher Barron就有这种担心,他说:“我们很担心会出现这样一种情况,也就是供应商提供的服务根本无法满足我们的需要,而由于被锁定而不得不继续租用它们的服务。”
正是由于这方面的原因,Barron在云计算方面的步子迈得很慢,只是选了一些适合云计算架构的流程,并特别注意把这些流程搬到云上不涉及改动企业的IT架构,也就是不需要把企业的整个IT架构都搬到云上。
“我们采用了小步慢进的策略,通过试验性地采用云计算模式,逐步摸索和调整,以避免可能的风险。”Barron说:“不过,如果我们租用的只是短期的服务就不必关心供应商的生存能力,比如,促销或者测试某个应用程序。”
借助第三方工具
关于用户被厂商锁定的程度有一种常识性的判断,即在云计算的各种模式中(从底层往上依次是IaaS、PaaS、SaaS),用户选择的云计算模式层次越高,被厂商锁定的风险也越大。
比如,在云存储模式中,数据是很容易迁移走的,因为大多数云存储服务都运行在Linux服务器上,而云软件(SaaS)和云平台(PaaS)里面的数据迁移就困难得多,因为其中很多都采用了非标准化的API、系统调用以及一些专有技术。
微软的Azure就是一个非常典型的例子。作为一种云操作系统,Azure提供了一组用来开发基于云的应用程序的服务。但是开发人员在使用Azure开发云服务时,即使是同样的服务其实现方法也和以前的完全不同。比如,在Azure中调用数据库的方法就和我们以前调用SQL数据库的方法不同。因此,一旦要迁移到不同的云计算服务供应商,用户就不得不考虑把这些特殊的API调用改写为标准的SQL调用。
为了尽可能降低数据迁移的复杂性和成本,用户应该尽可能少用那些供应商专有的技术和各种非标准化的元素。值得一提的是,市场上出现了一些工具可以帮助完成这种数据迁移。RightScale就提供这种管理工具可以帮助用户摆脱供应商的控制。
RightScale CEO Crandell解释说,RightScale的工具在各种云计算平台所提供的服务之上创建了一个抽象层,能最大程度地减少用户对供应商专有技术的依赖,同时也为自己的工具提供跨平台的管理能力。“我们为用户的服务提供了一个保护层,让用户无需专门为某个云计算平台(比如亚马逊)开发应用程序,否则,以后如果要迁移到另一个云计算平台上,它们就必须重新改写这些程序。”
更为重要的是,Crandell补充说,RightScale的源代码对用户是公开的,换句话说,如果用户不愿意用RightScale的工具也是完全可以的。