Articles of 亚马逊 s3

为什么上传到S3这么慢?

我正在使用s3cmd上传到S3: # s3cmd put 1gb.bin s3://my-bucket/1gb.bin 1gb.bin -> s3://my-bucket/1gb.bin [1 of 1] 366706688 of 1073741824 34% in 371s 963.22 kB/s 我从Linode上传,根据支持(大约6 MB / s),具有50 Mb / s的传出带宽上限。 为什么我的S3上传速度如此之慢,我该如何改进呢? 更新: 通过SCP上传相同的文件到m1.medium EC2实例(从我的Linode到实例的EBS驱动器的SCP)根据iftop (由密码完成的任何压缩不是一个因素)提供约44 Mb / s。 Traceroute:这是一个traceroute到服务器上传到(根据tcpdump )。 #traceroute s3-1-w.amazonaws.com。 traceroute到s3-1-w.amazonaws.com。 (72.21.194.32),最多30跳,60字节的数据包 1 207.99.1.13(207.99.1.13)0.635 ms 0.743 ms 0.723 ms 2 207.99.53.41(207.99.53.41)0.683 ms 0.865 ms 0.915 ms […]

S3接口备份等

由于S3“文件系统”目前都不兼容,您build议使用什么s3网关工具来挂载远程S3存储桶进行备份? 我一直在使用S3FS,但是我听到很多人抱怨代码质量差, 我还没有经过我自己的正式代码审查。 你还喜欢什么其他工具? 编辑:只是为了澄清,我在这里运行Linux。 Windows兼容性会很好,但不是必需的

Duplicity和Amazon S3脚本

我正在寻找备份我的Linux服务器到Amazon S3使用重复。 我在这里find了一个很好的资源 ,帮助我设置,并使用在那里列出的基本脚本,现在复制到这里: #!/bin/sh # Export some ENV variables so you don't have to type anything export AWS_ACCESS_KEY_ID=[your-access-key-id] export AWS_SECRET_ACCESS_KEY=[your-secret-access-key] export PASSPHRASE=[your-gpg-passphrase] GPG_KEY=[your-gpg-key] # The source of your backup SOURCE=/ # The destination # Note that the bucket need not exist # but does need to be unique amongst all # Amazon S3 users. […]

如何计划AWS EC2 Windows实例的自动(每日)快照?

我有一些在Amazon EC2上托pipe的Windows服务器。 一些运行Windows Server 2003和其他运行Windows Server 2008.这些是EBS支持的实例。 大多数实例还附加了一些额外的EBS卷。 我们希望将每天的Windows机器快照(以及连接的EBS卷)安排到S3,以便我们每天都有可用的备份。 有人会认为这是一个非常普遍的要求,可以通过AWSpipe理控制台提供,但是,事实并非如此。 有什么方法可用? 我如何在Windows服务器上安排每日快照? 有几个在线的脚本例子可以在Linux上使用,但是对于windows而言则不是那么多。 我曾看过http://sehmer.blogspot.com/2011/04/amazon-ec2-daily-snapshot-script-for.html以及https://github.com/ronmichael/aws-snapshot-调度程序 。 有没有人使用这些方法之一,它的工作? 我也考虑过像Skeddly这样的服务,乍一看似乎不贵,但是当你把它用于多台服务器时,价格很快就会boost到这样一个点,看起来更好的select是创build你自己的解决scheme,然后将它应用到未来的新服务器。 用Skeddly我们会支付每个服务器。 我们如何计划Windows实例的每日快照?

强制CloudFront从S3传递最新的HTML文件

背景 我在S3上托pipe一个静态站点,CloudFront位于顶部。 我的问题是我的HTML文件。 根据CloudFront的FAQ : Amazon CloudFront使用这些caching控制标头来确定需要检查该文件的更新版本的来源的频率 我到目前为止所做的 考虑到这一点,我已经在我的S3桶中设置了HTML文件来添加下面的头文件: Cache-Control: no-cache, no-store, max-age=0, must-revalidate Expires: Fri, 01 Jan 1990 00:00:00 GMT 在我第一次调用我的samplefile.htm ,我看到以下响应标题(我已经排除了明显的标题(例如Content-Type )以保持这一点: Cache-Control:no-cache, no-store, max-age=0, must-revalidate Date:Sat, 10 Dec 2011 14:16:51 GMT ETag:"a5890ace30a3e84d9118196c161aeec2" Expires:Fri, 01 Jan 1990 00:00:00 GMT Last-Modified:Sat, 10 Dec 2011 14:16:43 GMT Server:AmazonS3 X-Cache:Miss from cloudfront 正如你所看到的,我的Cache-Control头在那里。 问题是,如果我更新这个文件并刷新,我得到caching的内容(而不是最新的文件),我可以看到CloudFront通过查看响应头来提供它的caching版本: X-Cache:Hit from […]

为什么S3网站的redirect位置不被CloudFront所遵循?

我有一个在Amazon S3上托pipe的网站。 这是在WordPress上托pipe的旧网站的新版本。 我已经使用元数据Website Redirect Location设置了一些文件来处理旧的位置,并将它们redirect到新的网站页面。 例如:我有http://www.mysite.com/solution ,我想redirect到http://mysite.s3-website-us-east-1.amazonaws.com/product.html所以,我创build了一个空使用正确的元数据命名我的存储桶中的solution : Website Redirect Location = /product.html S3redirect元数据相当于301 Moved Permanently ,这对search引擎优化非常有用。 当从S3域直接访问URL时,这很好用。 我也build立了基于网站桶的CloudFront分配。 而当我尝试通过我的分配访问,redirect不起作用,即: http://xxxx123.cloudfront.net/solution不redirect,而是下载空文件。 所以我的问题是如何保持通过CloudFront分配redirect? 或者有关如何处理redirect而不会恶化SEO的任何想法? 谢谢

是否需要在Amazon S3上备份数据?

我在S3(这是我的主文件主机)托pipe200 GB的产品图像。 我需要将数据还原到其他地方吗?还是像S3一样安全? 我一直在尝试将S3存储桶安装到EC2实例,然后每晚做一次rsync备份。 问题在于它大约有三百万个文件,所以需要一段时间才能生成不同的rsync需求。 备份实际上需要大约3天才能完成。 任何想法如何做到这一点更好? (如果甚至有必要?)

S3兼容的对象存储系统

有没有人遇到过接近100%的Amazon S3 RESTful API兼容对象存储系统? 我所追求的是一个位于任何(最好是POSIX)文件系统之上的层,它提供Amazon S3风格的RESTful API来存储( PUT ),检索( GET ),统计( HEAD )和删除( DELETE ) 。 商业项目/想法也是受欢迎的。 注意: 到目前为止,我已经尝试了桉树和积云 。 其中桉树似乎是盲目地自称S3兼容。 响应XML文档完全不兼容,并且在某些地方是完全没有XML文档的。 积云已经设法保持响应文件非常相似,但似乎忘记了数据的完整性! 让我来解释后一部分:Eucalyptus和Cumulus都不支持Amazon S3提供的完整性validation。 你可以用S3做什么,你可以提供一个Base64(MD5(FILE))和PUT请求,然后在S3成功响应之前通过S3进行validation。 桉树和积云不支持这一点。 使用Eucalyptus,我们至less可以通过检查响应文档中给出的MD5(而不是S3兼容的行为)来解决这个问题。 在积云,这是不可能的,因为它不响应任何东西(如S3)。 积云使得情况变得更糟,在HEAD请求中没有发出ETag。

在Cloudfront上设置Access-Control-Allow-Origin

我在使用AWS Cloudfront将静态资产提供给Firefox时遇到问题。 Chrome工作正常,但Firefox正在返回一个CORS错误。 如果我执行curl,我会得到: HTTP/1.1 200 OK Content-Type: application/x-font-opentype Content-Length: 39420 Connection: keep-alive Date: Mon, 11 Aug 2014 21:53:50 GMT Cache-Control: public, max-age=31557600 Expires: Sun, 09 Aug 2015 01:28:02 GMT Last-Modified: Fri, 08 Aug 2014 19:28:05 GMT ETag: "9df744bdf9372cf4cff87bb3e2d68fc8" Accept-Ranges: bytes Server: AmazonS3 Age: 2743 X-Cache: Hit from cloudfront Via: 1.1 c445b20dfbf3128d810e975e5d84e2cd.cloudfront.net (CloudFront) X-Amz-Cf-Id: … […]

备份存储在Amazon S3上的数据

我有一个运行Web服务器的EC2实例,将用户上传的文件存储到S3。 这些文件是一次写入,永远不会改变,但偶尔会被用户检索。 我们每年可能会累积大约200-500GB的数据。 我们希望确保这些数据是安全的,尤其是意外删除,并希望能够恢复被删除的文件,而不pipe其原因。 我已经阅读了关于S3桶的版本特性,但我似乎无法find没有修改历史的文件是否可以恢复。 有关版本的信息,请参阅AWS文档: http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectVersioning.html 在这些例子中,他们没有显示数据上传的场景,但从未修改过,然后被删除。 这种情况下删除的文件是否可恢复? 然后,我们认为我们可以使用对象生命周期pipe理将S3文件备份到Glacier: http://docs.aws.amazon.com/AmazonS3/latest/dev/object-lifecycle-mgmt.html 但是,这似乎对我们不起作用,因为文件对象不会被复制到冰川,而是移动到冰川(更准确地说,它似乎是一个对象属性被改变,但无论如何…)。 因此,似乎没有直接的方法来备份S3数据,并且将数据从S3传输到本地服务器可能是耗时的,并且可能随着时间的过去而导致显着的传输成本。 最后,我们认为我们每个月都会创build一个新的存储桶来作为每月的完整备份,并在第1天将原始存储桶的数据复制到新的存储桶中。然后使用诸如duplicity( http://duplicity.nongnu.org/) )我们会每晚同步备份存储桶。 在本月底,我们会将备份存储桶的内容放入Glacier存储中,并使用原始存储桶的新当前副本创build新的备份存储桶并重复此过程。 这似乎是可行的,并最大限度地减less了存储/传输成本,但我不确定是否允许直接从桶到桶的传输,而不是首先将数据放到控制客户端。 所以,我想这里有几个问题。 首先,S3版本是否允许恢复从未修改过的文件? 有什么方法可以“复制”从S3到冰河的文件,我已经错过了? 可以直接在S3存储桶之间进行复制或其他工具传输文件以避免传输成本? 最后,我在备份S3数据的方法中脱颖而出吗? 预先感谢您提供的任何见解! 更新 亚马逊最近宣布版本化现在与生命周期规则一起工作