二、底层架构:亚马逊、谷歌和微软平台比较
人们很容易忽视云服务背后的技术,这是一个误区。公司的技术人员必须确保云服务与本企业的基础架构相互集成。这就需要一种基础架构能够结合两者。
云计算的各部分与企业数据中心的各部分一样,同样包括诸多编程语言、操作系统、数据库、Web服务器、协议和应用编程接口(API)。关键就是确认哪些云服务真正适合自己内部的系统、应用程序和专长技能。下面比较一下亚马逊的弹性计算云、谷歌应用引擎和Windows Azure三大服务,看看哪个更适合你。
亚马逊的EC2为客户提供了种类丰富的软件选择:Windows Server、OpenSolaris和七个Linux版本;MySQL、SQL Server和Oracle 11g数据库;以及Java、JBoss和Ruby on Rails等开发环境。
谷歌的特长则在于简单易用。应用引擎让用户可以利用谷歌的自主开发数据库及其他基础架构软件;可以通过API使用缓存、镜像、邮件及其他应用服务。Python是惟一得到支持的编程语言,不过谷歌打算在将来也支持其他编程语言。
Windows Azure和Azure服务平台与微软的内部部署企业软件系列其实一脉相承。Azure包括了托管版本的SQL Server、SharePoint、Dynamics CRM和.Net服务,用Visual Studio和.Net框架开发而成。微软表示,Azure将支持开放协议(HTTP、REST、SOAP和XML)以及非微软编程语言(Eclipse、Ruby、PHP和Python)。
如果IT人员要了解云体系结构的概况,云服务提供商的网站上提供了许多详细信息。亚马逊有一份介绍云体系结构的白皮书,想尽快补上一课的人不妨看一下。
你的设计蓝图应当考虑到云服务可能由多家厂商提供,所以要想好该如何确保互操作性和应用集成。云计算新兴公司Elastra的高级软件架构师Stuart Charlton建议采用REST和Atom联合格式(Atom Syndication Format)作为全球云体系架构中的底层规范。他表示,联合身份管理方面的标准也很重要。
IBM公司自主计算开发主管Dennis Quan表示,面向服务的架构(SOA)已经让通过“符合标准的方式”连接云服务成为可能。下一步关键是把服务从一个云迁移到另一个云。Quan表示,完成这项功能的规范仍处在开发初期。