Amazon EC2是Elastic Compute Cloud的简称,翻译成中文就是弹性计算云。它是Amazon云里面最基础的内容,也是发展到今天最成熟的部分,通过EC2, 你可以在Amazon的云里面申请任意台机器,选择不同配置的机器,选择不同的操作系统,完成你所有的工作。类似的,Windows Azure Virtual Machine提供了一样的功能。之前Azure提供过一种不伦不类的东西叫做VM Role,是从他以前的PaaS里面的Web Role和Worker Role里面发展而来的,好在现在已经全面被Virtual Machine所取代了。
数据中心
要了解EC2和Azure VM,我们需要首先看看他们的数据中心到底有多少个不同的地方。AWS在全球主要部署了8个数据中心,包括美东的弗吉尼亚,美西的俄勒冈和加州,欧洲的爱尔兰,亚洲的新加坡和东京,澳洲的悉尼以及南美洲的巴西圣保罗。Azure从2010年开始推出,主要有6个数据中心, 包括美国的芝加哥、圣安东尼奥, 欧洲的爱尔兰都柏林和荷兰阿姆斯特丹,亚洲的新加坡和香港。这里要强调的一点是,一个数据中心不是一个机房,而是多个机房,他们之间也会备份数据,实现灾难恢复和高可用性。
AWS |
Azure |
US East(N.Virginia) |
East US (Chicago) |
US West(Oregon) |
West US(San Antonio) |
US West(N. California) |
|
EU(Ireland) |
North Europe(Ireland) |
|
West Europe(Amsterdam) |
Asia Pacific(Singapore) |
Southeast Asia(Singapore) |
Asia Pacific(Tokyo) |
East Asia(*) |
Asia Pacific(Sydney) |
|
South America(San Paulo) |
|
下图就是在创建虚拟机的时候,AWS和Azure可以选择的不同数据中心。
AWS |
Azure |
|
|
实例类型和价格
当然,创建数据中心的位置只是第一步,接下来还要选择机器的配置,比如核的数量,内存大小,机器硬件环境等,在这一点上,AWS可以说是远远走在了Azure的前面。AWS提供了丰富的实例类型(Instance Type),具体可以参考以下表格:
|
名称 |
内存(GB) |
计算单元(核) |
存储(GB) |
价格每小时(Linux/Windows) |
标准第一代 |
M1 Small |
1.7 |
1 |
160 |
$0.065/$0.115 |
M1 Medium |
3.75 |
2 |
410 |
$0.130/$0.230 |
|
M1 Large |
7.5 |
4 |
850 |
$0.260/$0.460 |
|
M1 Extra Large |
15 |
8 |
1690 |
$0.520/$0.920 |
|
标准第二代 |
M3 Extra Large |
15 |
13 |
仅EBS |
$0.580/$0.980 |
M3 Double Extra Large |
30 |
26 |
仅EBS |
$1.160/$1.960 |
|
微型 |
Micro |
613MB |
最多2个 |
仅EBS |
$0.020/$0.020 |
内存增强型 |
High-Memory Extra Large |
17.1 |
6.5 |
420 |
$0.450/$0.570 |
High-Memory Double Extra Large |
34.2 |
13 |
850 |
$0.900/$1.140 |
|
High-Memory Quadruple Extra Large |
68.4 |
26 |
1690 |
$1.800/$2.280 |
|
CPU 增强型 |
High-CPU Medium |
1.7 |
5 |
350 |
$0.165/$0.285 |
High-CPU Extra Large |
7 |
20 |
1690 |
$0.660/$1.140 |
|
群集计算 |
Cluster Compute Eight Extra Large |
60.5 |
88 |
3370 |
$2.400/$2.970 |
高内存集群 |
High Memory Cluster Eight Extra Large |
244 |
88 |
240(SSD) |
$3.500/$3.831 |
GPU集群 |
Cluster GPU Quadruple Extra Large |
22 |
33.5 |
1690 |
$2.100/$2.600 |
高I/O |
High I/O Quadruple Extra Large |
60.5 |
35 |
2 SSD盘,每个1024 GB |
$3.100/$3.580 |
高存储 |
High Storage Eight Extra Large |
117 |
35 |
24个盘,每个2T |
$4.600/$4.931 |
AWS非常绚烂地提供了从内存,计算,集群,GPU,I/O以及存储都能够充分定制的计算资源,能够让用户非常简单地选择各种各样不同的服务器类型。比如GPU集群,上面的机器都提供了33.5个计算单元,等价于2块Intel至强4核X5570的CPU,还包含了2块NVIDIA Tesla “Fermi” M2050 显卡,用于使用到GPU的计算任务。
AWS对一些机器还提供EBS优化的实例,可以自己定义EBS卷的IOPS,确定磁盘的性能,也优化了云中的存储资源。对于不同的应用,可以选择完全不同的实例。
在价格上,不同数据中心的计算资源价格会有所不同,比如弗吉尼亚和东京的价格就略有不同,上面参考的是弗吉尼亚的价格。
对于不同的数据中心,能够提供的实例类型也稍有不同,有些数据中心提供GPU集群,而有些数据中心则不提供。
相比较而言,Azure提供的实例类型就比较寒碜了,只有5种不同的实例可以选择。从超小,小,中,大到超大,基本上对应于Amazon的Micro, M1 Small, M1 Medium, M1 Large和M1 Extra Large。对于一些简单的应用基本上也够用,但是如果要涉及到超大内存或者GPU,就无法实现了。
在具体价格比较上,除了微型实例,AWS Linux比Windows要便宜43%。而Azure Windows和Linux的价格一致,比AWS Linux贵了23%,比AWS Windows要便宜30%。这也符合微软的特点,Windows对微软来说本来就是不要购买的,而Amazon则需要向微软购买Windows。具体可以参考下表。
|
AWS Linux |
AWS Windows |
Azure Linux & Windows |
微型 |
$0.020 |
$0.020 |
$0.013 |
小 |
$0.065 |
$0.115 |
$0.080 |
中 |
$0.130 |
$0.230 |
$0.160 |
大 |
$0.260 |
$0.460 |
$0.320 |
超大 |
$0.520 |
$0.920 |
$0.640 |
当然,上面列出的价格只是按需使用时候的价格,AWS还提供了预留实例的价格,1年期和3年期,根据使用率的不同,价格都有所不同。此外还有竞价实例,根据当时的价格竞争,以一个较低的价格获取实例。AWS提供了一系列的组合来帮助提高机器使用率,也降低了云的成本。Azure也是类似,有6个月预付和12个月预付的方法,在标准价格上可以打一个折扣,如果用量更大,可以和微软签署EA,获得更加优惠的价格。
操作系统和软件
AWS提供的操作系统很多,把主要包括Linux和Windows,主要有Red Hat Enterprise Linux,Windows Server,Oracle Enterprise Linux,SUSE Linux Enterprise,Amazon Linux AMI,Ubuntu,Fedora,Gentoo Linux,Debian。
数据库软件有Microsoft SQL Server Standard,MongoDB,含 Apache Cassandra 的 Acunu Storage Platform Standard Edition,TurnKey PostgreSQL,Couchbase Server – 企业标准版。
应用程序服务器有IBM WebSphere Application Server, Tomcat Java Web 应用程序部署, Apache – Java Servlet 和 JSP 平台上的 Tomcat,Zend Server(群集式)。
至于内容管理和商业智能,AWS也提供了一系列软件,包括WordPress,Drupal 6,MediaWiki Wiki System,SAP BusinessObjects 10 Named User License,JasperReports Server Community Edition等等。
Azure在这点上和Amazon进行了争锋相对的竞争,微软把很多自有的软件都放了出来,还提供了许多开源的软件,当然在Linux上,Azure还是没有办法和AWS竞争。具体的比较如下:
|
AWS |
Azure |
操作系统 |
Red Hat Enterprise Linux |
|
|
Windows Server |
Windows Server 2008/2012 |
|
Oracle Enterprise Linux |
|
|
SUSE Linux Enterprise |
SUSE Linux Enterprise Server 11 SP2 |
|
Amazon Linux AMI |
|
|
Ubuntu |
Ubuntu Server 12.04.1 TLS/12.10 |
|
Fedora |
|
|
Gentoo Linux |
|
|
Debian |
|
|
|
OpenLogic CentOS 6.3 |
数据库 |
Microsoft SQL Server Standard |
Microsoft SQL Server 2012 |
|
MongoDB |
|
|
Acunu Storage Platform Standard Edition |
|
|
TurnKey PostgreSQL |
|
|
Couchbase Server |
|
应用程序服务器 |
IBM WebSphere Application Server |
|
|
Tomcat |
|
|
Zend Server |
|
内容管理 |
WordPress/Drupal 6/ MediaWiki Wiki System |
WordPress/Drupal 7/MediaWiki/BlogEngine.NET/Composite C1 CMS/DasBlog/DotNetNuke/Galery Server Pro/Incentive/Joomla.Kentico CMS/mojoPortal/Orchard CMS/phpBB/razorC.net/Umbraco CMS |
商业智能 |
SAP BusinessObjects 10 Named User License |
BizTalk Server 2013 |
|
JasperReports Server Community Edition |
|
当然,在AWS EC2和Azure Virtual Machine的具体使用上,还有很多不同,关于这些我们会放到下一节讨论。