雲計算里AWS和Azure的探究(2)
——Amazon EC2 和 Windows Azure Virtual Machine
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(Hong Kong) |
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的具體使用上,還有很多不同,關於這些我們會放到下一節討論。