AWS 亚马逊和Aliyun阿里云的区别比较和深度分析

  • Post author:
  • Post category:其他


做这行久了,经常会被人问到:AWS亚马逊和

阿里云

哪个好?两者有什么区别?优缺点是什么?

在国外,AWS亚马逊是云服务器的行业标杆似的存在,没有人会质疑我为什么要选择AWS亚马逊,

当AWS亚马逊进入中国市场后,虽然服务略有阉割,但也不能忽视其大佬的,

中国的国情不同,

阿里云

是接地气的中国老大,国外也有机房,

对于中国用户而言,选择AWS 还是

阿里云

,自然而然地成为了一个必然的考虑。

我,使用AWS有4年的时间,其中包括国外和中国服务都有涉猎,

加之近日得到 Aliyun

阿里云

的额度支持,也让我接触到其中各项服务,

终于有机会对两者进行比较【申明:比较只针对中国国内区域服务】,

若有偏颇,请大家指点指教。

Aliyun

阿里云

AWS 亚马逊

Dashboard 主控面板

有主动面板:

须使用第三方工具,如Botmetric

带宽成本

RMB 0.72-0.8/GB

RMB 0.9/GB+0.09 Tax

带宽速度(固定)

最高200Mbps (天价)

没有上限

带宽速度(按量收费)

最高100Mbps

平均200Mbps

国内机房数量

4

2

带宽收费方式

预付,按小时收费

后付,即付即得,按月收费

DDOS防护

云盾

第三方(比如安全宝)

Elastic IP

RMB 0.02/小时 + 0.8/GB

常用免费,闲置收费

DevOps

Beta test / 没有发现该

Beanstalk, opswork, code deploy, cloudformation

China CDN

没有

CDN 是否会失效



注意:每天最多可以刷新(含预热)2000个文件(URL)和100个目录。刷新人物生效时间大约为5分钟。



收费——没有约束

CDN属性

Auto-Scaling

(自动伸缩)

Auto-Scaling方式(自动伸缩方式)

只限 定制化镜像

置备(Chef+Cloudformation)/ 定制化镜像 都支持

收费

复杂,名目多,按名目收费

信用卡/ 月度后付费

快照数

12

无限

ICP速度

2天

7-10天

ICP要求

针对包年包月的机器

针对所有类型的机器

安全组

有(但发生过一次十分有名的事件)

负载均衡

0.02 元/小时+ 0.8 元/GB

0.99 元/小时

负载均衡 节点

IP

域名

负载均衡 https

负载均衡 ICP

以LB后的ECS机器为准

支持直接LB的ICP

DNS

云解析

Route 53(中国区没有)

预付费

有(晚上发生流量激增的情况,预付费消耗殆尽,会有情况发生)

没有(AWS采用后付费)

定制镜像数

20

没有限制

服务开通

每个服务都要一个一个申请

一次可申请9成服务开通

第三方开源工具可用?(如:Github)

很多(Chef / ansible’s AWS library)

MongoDB

第三方 Compose.io

Oracle DB

没有

PostgreSQL

只有Beijing区

所有区都有

权限管理

RAM(Beta)

IAM

云储存

OSS,没有权限管理

S3+IAM

RDS replica / Multi-AZ (多可用区)

没有

RDS价格比较

比较高

比较低

开机时是否需要身份认证

需要

不需要

AZ(高可用去)

有(ECS,VPC)

有(EC2,RDS,Elasticache,VPC)

VPC

Linux distribution

Aliyun Linux

Amazon Linux

讯息管理提示(手机推送)

没有

深度分析:


CDN

Aliyun

阿里云

比较突出的是CDN功能,AWS中国没有CDN。

但是从功能表上可以看到:Aliyun CDN不支持behavior(可能是我没有找到),但要是我想对特定一个path做cookie / header / TTL / HTTP method等操作的话,国外AWS CDN还是相对做得比较完善。


价格

服务价格,用RDS为例,做出以下比较:

0. 储存


阿里云

:8 元/GB 每年 (胜出!)

AWS中国:10.32 元/GB 每年

1. 最便宜比较(一年计)


阿里云

,rds.mys2.small = 390 RMB, memory = 240 MB, Aliyun mem = 1200M, rds.mys2.standard = 1640 RMB

AWS中国,db.t2.micro = 932 RMB, memory = 1G (胜出!)

2. 最适合生产配置


阿里云

, rds.mys2.xlarge = 9700 RMB, memory 6G

AWS中国, db.m3.large = 5681 RMB, memory 7.5G (胜出!)

由此可见,如果是使用云服务式的应用,比如RDS,

阿里云

的价格会比较高。


DevOps



阿里云

中国,我没有找到像CloudFormation,Beanstalk这样的DevOps工具(若有,请指正)。

DevOps第三方支持,如 Ansible / Chef 也找不到对应Aliyun 支持。

所以在阿里中要做全局的DevOps,即由 Iaas → PaaS 自动化会十分困难。

在AWS上,我们可以吧Auto-Scaling(自动伸缩),Security Group, EC2 等等资源写到Cloudformation中(json文件),然后接入Chef的代码以实行全局DevOps,

即由 infrastructure – runtime – application 都由代码控制部署。然后包括应用到环境的参数都进行版本管理。


阿里云

的场景中,虽然通过

阿里云

+Docker 的方式可以做到差不多的事,但实际操作中,版本管理代码 比 版本管理镜像 会来得更现实。


EMR


阿里云

中支持的项目跟AWS EMR差不多,但是 access control(RAM)的整合有待改善。

OSS(

阿里云

云储存)VS AWS S3

使用OSS云储存时,开一个Bucket要选择Region,感觉上没能做到 Access Anywhere 的云储存概念。

界面不能上传大于500MB的文件,虽然好像有Multi-part upload功能,但界面没有,也许需要命令行来实行。

另一方面,AWS S3则看在网页上存 1GB以上的文件。

一个AWS S3深度用户很重要的功能,就是对每个S3 Object定制 metadata,其中一个例子就是Header。比如当浏览器中S3下载一个文件,会根据cache-header来决定这个object在浏览器中保留多久的缓存。这个对于大流量网站是个可以节省带宽的重要手段。除了http header,还有其他比如Redirect Location。在

阿里云

OSS中则只能设定Http header,如下图所示,因此,如果

阿里云

能开放更多的权限就更好。

AWS S3



阿里云

的OSS上发现一个新的使用功能是AWS S3没有的,就是自带的Image Styling,网站一直是需要直接生成好图片再上存到云端,如果能把源图上存到云,生成Style再返回地址,就能成为origin服务器,省去很多压力,是个很好的做法。


ICP



阿里云

,任何个人身份就可以申请ICP,但对AWS而言,则需要公司。

阿里云

的个人身份ICP只需2天就能搞定,相较AWS公司的申请,则需要10天。

如果想希望在国内快速启动一个小站点,用

阿里云

肯定是没错的。

对于公司项目,如果等待时间没有问题,则可以考虑AWS的成熟架构。


带宽

在国内,作为一家云供应商,带宽应该是重中之重的考虑。



阿里云

,有固定收费和按量收费两种。

一个企业级应用,在如今这个年代,100Mbps可以说是基本配置,虽然在

阿里云

,100Mbps的固定带宽以上的价格有点夸张,因此不作比较。

按量收费来说,

阿里云

最多支持100Mbps,AWS支持200Mbps(亲测,非官方数字)。

方法是在AWS开一台Windows EC2然后做speedtest,所以结果不会受本地硬件问题的影响。

得出的结论就是,如果你是希望拥有超过100Mbps又不想支付巨额的固定带宽,AWS在国内应该是唯一选择。

如上图表中表示的那样,虽然AWS按量收费,每个GB的费用比

阿里云

搞,但是有以下几点好处:

1)最高带宽可以达到200Mbps,

阿里云

的是100Mbps

2)不用预存款,阿里的按量收费都是在预存款中扣除

3)不用为每台机器顶一个带宽,因为AWS的带宽是通用的,而阿里需要指明每台机器的带宽付费方式。


IP

AWS的IP收费方式比较有趣——常用免费,闲置收费。

你在用的不收钱,但是你拿了在手不用(没挂到机器上)就会收费。这是为了防止让人预拿一堆IP而不用。

另外AWS拿IP也很方便,一行命令就可以改IP。我家CTO做了个prototype,可以做到一键在AWS换IP。


http://dvpn-test-elasticl-18r9nr6qix2bn-594040837.ap-southeast-1.elb.amazonaws.com/index.php

IP,算是AWS的看家本领之一。


网络硬盘



阿里云

,不是每个机型 / 地区都可以用上SSD,而AWS SSD支持每个机型每个地区。

SSD按IOPS收费,IOPS就是 input / output预留的意思,因为在云中同时写入一组物理硬盘的情况很多,以免影响服务,用户可以买IOPS预留相应的效能。

AWS免费自带的 IO ,现在是 3 IO / GB, 100GB = 300 IO,差不多是一个7200 RPM硬盘的性能。

普通SSD最高可以买3000, PIOPS(Provision SSD)可以买20000。要是想更高的话可以做 RAID。

或老一点的机型(C3)支持instant storage(关机了资料就会流失),但是有上万 IO的性能(亲测),等于

阿里云

本地SSD,但又不收费,跟机器附送,这(优惠)知道第三代,

现在第四代是全EBS的,想问将来这本地SSD可以回来。


阿里云

SSD = AWS EBS 是1GB / 月 / 1元

AWS云SSD(PIOPS)= 每月0.125USD / GB + 每个预配置 IOPS 0.065 USD

这样的算法是,

阿里云

想较便宜一点点。

AWS


阿里云


其他服务

有一些服务是

阿里云

做的很接地气的,比如抗D,性能测试等,而且做得很出色。

在AWS中,如果想要抗D,必须完全直接建立架构 / 用第三方工具如安全宝。AWS中没有压力测试服务。


第三方开源工具(Github)

AWS是各云供应商中支持第三方支持最多的,比如Chef / Ansible  / Docker / Deis 等等都有针对AWS支持,还有Github上的AWSlab。

这方面,目前没有找到

阿里云

可以比价的相关东西,请知道的小伙伴指教。


总结

以上,是我对

阿里云

VS AWS 的比较。


阿里云

在ICP这块,可以做得快,但是不全面;

AWS ICP 慢,但是可以针对负载均衡做ICP,而且没有单台机的带宽限制,AWS是需要超过100Mbps的带宽的必然职权。

内部安全性方面AWS的IAM也是必然之选。

抗D方面,因为CDN的原因,

阿里云

有必然的又是。

总之,AWS支持企业用户为主,而

阿里云

在功能上则更注重个人用户。

以上,是针对国内情况的比较,和国外的云功能不做比较。