做这行久了,经常会被人问到:AWS亚马逊和Aliyun阿里云哪个好?两者有什么区别?优缺点是什么? 在国外,AWS亚马逊是云服务器的行业标杆似的存在,没有人会质疑我为什么要选择AWS亚马逊,当AWS亚马逊进入中国市场后,服务略有阉割,但依旧不能小觑其行业大佬的身份。 另一方面,Aliyun阿里云是接地气的中国云老大,国外也有机房,全球战略部署速度与日俱增。 从用户角度出发,选择AWS亚马逊?还是Aliyun阿里云?自然而然地成为了一个必然的考虑。 我4年前开始使用AWS,当时主管一个现在看来还是相当好的日本项目computerworld.jp,是真正的大数据的Drupal+AWS整合,起点有点高,但是真正开启了我云上的日子。截止目前,我对于AWS国外和中国服务都有涉猎,加之近日还得到 Aliyun阿里云的额度支持,也让我接触到其中各项服务,终于有机会对两者进行比较。 这次的比较只限于【中国大陆区域服务】。若有偏颇,请指点指教。 Aliyun阿里云:有主控面板,如下图
AWS亚马逊:须使用第三方工具,如Botmetric
CDN属性比较—— Aliyun阿里云:
Aliyun阿里云自动伸缩创建配置如下图:
** Aliyun阿里云的账单一瞥:
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,阿里云的价格会比较高。 AWS亚马逊里有像CloudFormation,Beanstalk这样的DevOps工具,但是在Aliyun阿里云里没有找到(若有,请指正)。同时,像Ansible/Chef 这样专业的DevOps第三方工具,Aliyun阿里云也无法支持。 因此,如果要在Aliyun阿里云做全局DevOps,即由Iaas → Paas 自动化是十分困难的。 在AWS亚马逊上,我们可以把Auto-Scaling(自动伸缩)、Security Group(安全组)、EC2等资源直接写到AWS Cloudformation中(json文件),然后接入Chef代码以实现全局DevOps,即Infrascture(架构)- Runtime - Application(应用)全部由代码控制部署,包括应用到环境的参数都进行版本管理。 如果要做到以上,Aliyun阿里云的情况,就要通过 Aliyun阿里云+Docker 的方式实现,但是在实际操作中,代码版本管理要比镜像版本管理来得更现实和可操作。 EMR方面,Aliyun阿里云和AWS亚马逊相差不多,只是在access control(RAM)的整合有待改善。 使用Aliyun阿里云OSS云储存时,开一个Bucket要选择Region,感觉上没能做到 Access Anywhere 的云储存概念。 界面不能上传大于500MB的文件,虽然好像有Multi-part upload功能,但界面没有,也许需要命令行来实行。 另一方面,AWS S3则可以在网页上传 1GB以上的文件。
另一方面,AWS S3 但是,在阿里云的OSS上发现一个新的使用功能是AWS S3没有的,就是自带的Image Styling,网站一直是需要直接生成好图片再上存到云端,如果能把原图上存到云,生成Style再返回地址,就能成为origin服务器,省去很多压力,是个很好的做法。 这是个很关键的问题。在阿里云,任何个人身份就可以申请ICP,但对AWS而言,则需要公司。阿里云的个人身份ICP只需2天就能搞定,相较AWS公司的申请,则需要10天,但是AWS的ICP是可以针对负载均衡做ICP,而且没有单台机的带宽限制。 如果你想希望在国内快速启动一个小站点,用阿里云肯定是没错的。 对于公司项目,手续齐全,AWS的成熟架构会是很好的选择。 在国内,作为一家云供应商,带宽应该是重中之重的考虑。 在阿里云,有固定收费和按量收费两种。 一个企业级应用,在如今这个年代,100Mbps可以说是基本配置,虽然在阿里云,100Mbps的固定带宽以上的价格有点夸张,几近天价,因此不作比较。 按量收费来说,阿里云最多支持100Mbps,AWS支持200Mbps(亲测,非官方数字)。 测算方法是在AWS开一台Windows EC2然后做speedtest,所以结果不会受本地硬件问题的影响。 所以,如果你是希望拥有超过100Mbps又不想支付巨额的固定带宽,AWS在国内应该是唯一选择。 虽然AWS也是按量收费,每个GB的费用比阿里云高,但是有以下几点好处: 1)最高带宽可以达到200Mbps,阿里云的则是100Mbps 2)不用预存款,阿里的按量收费都是在预存款中扣除 3)不用为每台机器顶一个带宽,因为AWS的带宽是通用的,而阿里需要指明每台机器的带宽付费方式。 AWS亚马逊对IP收费方式比较有趣——常用免费,闲置收费。 你在用的不收钱,但是你拿了在手不用(没挂到机器上)就会收费。这是为了防止让人预拿一堆IP而不用。 另外AWS拿IP也很方便,一行命令就可以改IP。我们自己公司的CTO做了个prototype,甚至可以做到一键在AWS换IP。 http://dvpn-test-elasticl-18r9nr6qix2bn-594040837.ap-southeast-1.elb./index.php Elastic IP,是AWS的看家本领之一。 在Aliyun阿里云,不是每个机型 / 地区都可以用上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 这样的算法里,阿里云会相较便宜一点点。 Aliyun阿里云
AWS是各云供应商中支持第三方支持最多的,比如Chef / Ansible / Docker / Deis 等等都有针对AWS支持,还有Github上的AWSlab。 这方面,目前没有找到阿里云上支持的东西,知道的小伙伴可以指教。 有一些服务是阿里云做的很接地气的,比如抗D,性能测试等,而且做得很出色。 在AWS中,如果想要抗D,必须完全直接建立架构 / 用第三方工具如安全宝。AWS中没有压力测试服务。 以上,是我在实践过程中,分析的Aliyun阿里云 VS AWS亚马逊的比较。 阿里云在ICP这块,可以做得快,但是不全面; AWS ICP 慢,但是可以针对负载均衡做ICP,而且没有单台机的带宽限制,AWS是需要超过100Mbps的带宽的必然之选。 内部安全性方面AWS的IAM也是必然之选。 抗D方面,因为CDN的原因,阿里云的优势更大。 总得看来,AWS支持企业用户为主,而阿里云在功能上则更注重个人用户。 以上,是我个人针对国内情况的比较,和国外的云功能不做比较。若有偏颇,请指教。 丘秉宜,BootDev CEO&首席架构师。CSDN AWS社区专家,云计算专家。专长:云架构性能优化、高流量高并发应对、SLA记录保持在99.97%。 |
|