灵活的工作模式
亚马逊的云计算模式沿袭了简单易用的传统,并且建立在亚马逊公司现有的云计算基础平台之上。弹性计算云用户使用客户端通过SOAP over HTTPS协议来实现与亚马逊弹性计算云内部的实例进行交互。使用HTTPS协议的原因是为了保证远端连接的安全性,避免用户数据在传输的过程中造成泄露。因此,从使用模式上来说,弹性计算云平台为用户或者开发人员提供了一个虚拟的集群环境,使得用户的应用具有充分的灵活性,同时也减轻了云计算平台拥有者(亚马逊公司)的管理负担。
而弹性计算云中的实例是一些真正在运行中的虚拟机服务器,每一个实例代表一个运行中的虚拟机。对于提供给某一个用户的虚拟机,该用户具有完整的访问权限,包括针对此虚拟机的管理员用户权限。虚拟服务器的收费也是根据虚拟机的能力进行计算的,因此,实际上用户租用的是虚拟的计算能力,简化了计费方式。在弹性计算云中,提供了三种不同能力的虚拟机实例,具有不同的收费价格。例如,其中默认的也是最小的运行实例是1.7GB的内存,1个EC2的计算单元(1虚拟的计算核以相关的计算单元),160GB的虚拟机内部存储容量,是一个32位的计算平台,收费标准为每个小时10美分。在当前的蓝计算平台中,还有两种性能更加强劲的虚拟机实例可供使用,当然价格也更加昂贵一点。
由于用户在部署网络程序的时候,一般会使用超过一个运行实例,需要很多个实例共同工作。弹性计算云的内部也架设了实例之间的内部网络,使得用户的应用程序在不同的实例之间可以通信。在弹性计算云中的每一个计算实例都具有一个内部的IP地址,用户程序可以使用内部IP地址进行数据通信,以获得数据通信的最好性能。每一个实例也具有外部的地址,用户可以将分配给自己的弹性IP地址分配给自己的运行实例,使得建立在弹性计算云上的服务系统能够为外部提供服务。当然,亚马逊公司也对网络上的服务流量计费,计费规则也按照内部传输以及外部传输进行分开。
总而言之,亚马逊通过提供弹性计算云,减少了小规模软件开发人员对于集群系统的维护,并且收费方式相对简单明了,用户使用多少资源,只需要为这一部分资源付费即可。这种付费方式与传统的主机托管模式不同。传统的主机托管模式让用户将主机放入到托管公司,用户一般需要根据最大或者计划的容量进行付费,而不是根据使用情况进行付费,而且,可能还需要保证服务的可靠性、可用性等,付出的费用更多,而很多时候,服务并没有进行满额资源使用。而根据亚马逊的模式,用户只需要为实际使用情况付费即可。
在用户使用模式上,亚马逊的弹性计算云要求用户要创建基于亚马逊规格的服务器映像(名为亚马逊机器映像即亚马逊 Machine Image, AMI)。弹性计算云的目标是服务器映像能够拥有用户想要的任何一种操作系统、应用程序、配置、登录和安全机制,但是当前情况下,它只支持Linux内核。通过创建自己的AMI,或者使用亚马逊预先为用户提供的AMI,用户在完成这一步骤后将AMI上传到弹性计算云平台,然后调用亚马逊的应用编程接口(API),对AMI进行使用与管理。AMI实际上就是虚拟机的映像,用户可以使用它们来完成任何工作,例如运行数据库服务器,构建快速网络下载的平台,提供外部搜索服务甚至可以出租自己具有特色的AMI而获得收益。用户所拥有的多个AMI可以通过通信而彼此合作,就像当前的集群计算服务平台一样。
在弹性计算云的将来发展过程中,亚马逊也规划了如何在云计算平台之上帮助用户开发Web 2.0的应用程序。亚马逊认为除了它所依赖的网络零售业务之外,云计算也是亚马逊公司的核心价值所在。可以预见,在将来的发展过程中,亚马逊必然会在弹性计算云的平台上添加更多的网络服务组件模块,为用户构建云计算应用提供方便。