存储 频道

应用亚马逊S3云存储成本分析与安全评估

  【IT168 专稿】(Amazon S3)是互联网巨头亚马逊06年推出的存储服务,和普通的网盘不同,S3主要面向开发者,是付费的,用多少资源付多少钱。

  在亚马逊最早推出云存储服务的时候,几乎所有人都会有疑问:亚马逊是搞电子商务的,为什么会搞起云服务呢?实际上,S3云存储平台并不是亚马逊为了提供存储服务而构建的,而是利用其他服务的剩余资源来提供存储服务,包括云存储服务,亚马逊还提供云计算、数据库等服务,而这些服务是经过其自有业务充分验证过的,所以可靠性值得信任。

  该云存储平台主要采用分布式系统,有优化的分布式算法,能进行良好的容错。与google的分布式文件系统的设计理念类似。

  亚马逊S3云存储收费标准和服务

  使用S3云存储服务,毫无疑问需要付出一定的成本,下面是美国使用的价格。按下面的价钱计算,每月使用5G空间,10G流量,大约需付出2.5$的成本,合每年大概200RMB,在国内租个同样水平的虚拟主机价钱大致相当,但是amazon的稳定性、可靠性应该没有哪个国内的主机商比的上,所以成本相对还是可以接受的:

  1.亚马逊云存储平台收费标准

  2. 提供的服务

  S3只提供存储服务,不提供计算服务,所以不能用来做网站只能用于数据备份、图片外链、文件下载等用途。或者当一个高可靠的网盘使用。

  支持上传最大5GB的单个文件。

  支持域名绑定,鉴权访问,支持REST和SOAP接口,支持HTTP下载,还支持BT下载。

  对于国内的用户来说,Amazon服务器位于国外,有可能会遇到传输不稳定的情况。

  Amazon的服务条款承诺了提供99.9%的可用时间,还为此提供了信用保证,如果低于3个9的可用性,会提供10%~25%的赔偿。

  了解S3云存储的收费标准,下面我们将分析一下,应用S3替代家用备份服务器的成本和经济效益。

  假设一台家用服务器的配置是2.4GHz 奔腾4(当然今天有很多服务器产品拥有更强劲的处理能力和更节能的特性,本文主要参考笔者家里的配置),在一个RAID配置中,包含3个250GB的SATA盘,加上一个80GB boot和OS盘。笔者用Kill A Watt工具来测量它的电量使用,最后发现,它消耗了大量120瓦,主要是空转的CPU和磁盘旋转。一个月大约80千瓦时。根据笔者当地的平均电力成本数据为每千瓦时$0.16247。

  替代家用服务器的成本分析

  根据我们前面的数据,可以看出笔者家里的服务器每个月的成本至少是13美元,每年的成本大约是170美元。仅仅是电源开着,空转。还不算笔者大约花费在磁盘上的700美元,主板、CPU、机箱、RAM等笔者还花了700美元。这些都是绝对最低的了,因为在CPU运行时,它消耗的电能也更多。

  那么假设笔者在服务器上的开销是1400美元,使用了5年,每个月的费用是22美元。

  如果你继续相加,就是每个月$22 + $13 = $35,仅仅是备份数据。假设没有任何硬件损坏,五年来的备份总成本是2180美元。

  亚马逊的定价模型是很引人注目的。笔者现在每个月付的存储数据比率费用$0.15/GB。数据传输费用是$0.20/GB。在没有压缩的情况下,笔者的备份要求大约125GB的磁盘空间。在亚马逊的S3上存储每个月的费用是18.75美元。

  假设在未来五年内笔者的增长率是11GB /月(大多是图片),每周传输2GB做备份(包括日志文件,电子邮件和其他临时的东西)。每周2GB,一个月就是8GB,每个月的费用是1.6美元,每年的总费用是20.80美元,五年内的费用就是104美元。

  假设从现在到5年后,增长率达到了190GB,暂且记为200GB吧。如果增长率是固定的,笔者能使用的平均就是200GB和125GB,5年后最后是1585美元。加入这一切,如果这些猜测是正确的,假设亚马逊价格不降的情况下,笔者最后需要支付1688美元。换句话说,转向S3在5年里,将节省587美元。

  很明显使用S3可以从电量方面和不采购备份硬件(服务器和磁盘)两方面都省钱。此外,亚马逊云存储平台给笔者带来的其他好处包括:

  • 可用性。和笔者家里的服务器以及住宅等级的带宽服务相比,亚马逊服务降低的可能性很小。
  • 速度。如果一个远程服务器坏了,笔者需要把所有bits的笔者家的DSL或电缆连接上,使用S3意味着笔者可以恢复的更快。
  • 简单性。这就减少了笔者不得不花费时间管理Unix box的麻烦,即使每周或每两周只有5分钟。

  在上面的计算中,很可能经济好处比笔者想的更多。实际上,结果证实第一个晚上笔者误读了它的输出量,实际上只需要一半的空间,也就是75GB而不是125GB。

  亚马逊S3云存储的安全保障

  S3为每个用户分配了ID和密钥,用于保证用户的操作是经过授权,合法的。

  Access Key ID为AWS分配的ID,Secret Access Key为AWS分配的密钥,应该保证该密钥不泄露出去。

  为了保证安全,所有对S3的操作都需要使用Secret Access Key签名,S3根据ID获得服务端的Secret Access Key,重新计算一次签名,如果签名结果相匹配则说明该请求是合法的。

  2.访问控制

  S3在文件权限的设计上提供了ACL和访问码两种方式。

  2.1 ACL

  每个bucket和object(文件)都可以定义ACL,这两个权限是相互独立的;ACL由Grantees和Permission组成,Grantees定义了用户类别,Permission定义了用户拥有的权限;比较不爽的是这些用户都是基于AWS的注册用户进行定义,未注册用户只定义了匿名组一个类别。

  2.2 访问码

  将用户的ID和过期时间用密钥签名之后,就可以以访问码的方式来访问对象文件,如下所示:http://quotes.s3.amazonaws.com/nelson?AWSAccessKeyId=44CF9590006BF252F707&Expires=1177363698&Signature=vjbyPxybdZaNmGa%2ByT272YEAiv4=

0
相关文章