我在s3中存储大型数据集,但是在我的集群中的一台计算机上,我的程序只需要读取一小部分数据。 我第一次尝试s3fs,但它首先下载整个文件,这需要很长的时间。 是否有任何s3支持的文件系统使用S3 API 字节参数,以便内部读取(和查找)命令只读取文件的所需部分? 作为一个实际的例子,如果我运行: tail -c 1024 huge_file_on_s3 只应该请求最后的1kb(通过字节参数),这意味着我应该得到的结果真的很快。 (我不关心写回S3,只能从中读取)
我试图使用用户数据脚本在启动时使用AWS CLI(1.8.7)将某些文件从S3下载到EC2实例。 此实例具有适当权限的IAMangular色和实例configuration文件。 有时,CLI将失败,并显示错误“找不到凭据”。 它经常发生(不是每一次),而是总是在一个单独的S3命令之后运行。 这是脚本的输出: ++ date +%r 03:24:10 AM ++ aws s3 cp s3://non-public-bucket-1/15mb-zip-file.zip ./15mb-zip-file.zip Completed 1 of 1 part(s) with 1 file(s) remaining^Mdownload: s3://non-public-bucket-1/15mb-zip-file.zip to 15mb-zip-file.zip ++ date +%r 03:24:14 AM ++ unzip 15mb-zip-file.zip # Snip ++ date +%r 03:26:01 AM ++ curl http://169.254.169.254/latest/meta-data/instance-id % Total % Received % Xferd Average Speed […]
我想为我的Amazon S3域创buildCNAMElogging,以获得更好的url。 在networking上没有太多的讨论,在亚马逊的文档里什么也没有(除非我错过了)。 这是一个合理的事情吗? 有什么缺点吗?
我有由Cloudflare服务的静态内容。 Cloudflare指向Amazon S3以获取静态内容并通过CNAME(cdn.mydomain.com)提供。 桶设置正确,一切工作正常,直到星期五,当我开始在我的浏览器中请求超时。 我证实,内容仍然可以通过S3访问,并打开了与Cloudflare票。 Cloudflare报告说:“在亚马逊出现的东西可能会阻止来自我们IP的请求”,并且他们在日志中看到以下消息: upstream timed out (110: Connection timed out) while reading response header from upstream cdn.mydomain.com upstream prematurely closed connection while reading response header from upstream cdn.mydomain.com 这是我已经在我的CORS文件中。 <CORSRule> <AllowedOrigin>*</AllowedOrigin> <AllowedMethod>GET</AllowedMethod> <MaxAgeSeconds>3000</MaxAgeSeconds> <AllowedHeader>Authorization</AllowedHeader> </CORSRule> 我应该把*放在AllowedHeader? 我需要明确指定Cloudflare IP地址吗? 我错过了什么,以避免块?
我正在主持一个静态网站使用亚马逊Route53的DNS和S3的HTML文件。 它工作正常。 当前设置是: example.com. A ALIAS s3-website-us-east-1.amazonaws.com. www.example.com. CNAME www.example.com.s3-website-us-east-1.amazonaws.com (注意:example.com和www.example.com是S3桶,我的HTML文件驻留在example.com桶中)。 现在我想添加一个像这样的通配符子域 – 这是我所尝试的: *.example.com. CNAME www.example.com.s3-website-us-east-1.amazonaws.com 这个想法是让anything.example.com正确parsing到网站。 但是这似乎没有工作。 所以当我去到网站:joker.example.com我在浏览器上看到错误信息: Code: NoSuchBucket Message: The specified bucket does not exist BucketName: joker.example.com
假设我已经为我的桶启用了S3版本控制: http : //docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html 然后,假设某人(例如,初级员工)弄乱了S3存储桶(意外删除了一些文件等) 然后,我怎样才能将整个版本化的存储桶恢复到特定的时间点? 我相信这应该是可能的,因为S3的API,但我宁愿不必自己写这样的脚本,因为害怕失去一些东西(我不是一个AWS专家)。 这个问题有没有很好的解决办法? 我使用S3存储桶作为我的Rails应用程序的映像存储,所以基于Ruby的我可以用作rake任务。
我们必须存储大约300万种产品的基本信息。 目前的信息是一个180 MB CSV每季度更新。 每天将会有大约30,000个查询,但查询只是一个非常简单的关键值存储。 我们只需要查看产品ID并显示其余的信息(这些信息都在一个logging中)。 这是为了networking,快速的performance是至关重要的。 我们是否应该使用MySQL,即使我们真的不需要关系数据库? 我们是否应该每个季度生成3百万个静态HTML文件? 我们是否应该在Amazon S3或Rackspace Cloud Files等产品上存储每行产品的单行CSV? 什么是最好的方法来做到这一点?
我在Amazon S3存储桶中拥有数百万个文件,并且希望尽可能以最低成本或无成本将这些文件移动到其他存储桶和文件夹。 所有的桶都在同一个区域。 我怎么能这样做?
我们试图通过Cloudfront分发S3存储桶,但由于某些原因,唯一的答案是AccessDenied XML文档,如下所示: <Error> <Code>AccessDenied</Code> <Message>Access Denied</Message> <RequestId>89F25EB47DDA64D5</RequestId> <HostId>Z2xAduhEswbdBqTB/cgCggm/jVG24dPZjy1GScs9ak0w95rF4I0SnDnJrUKHHQC</HostId> </Error> 以下是我们正在使用的设置: 这是斗的政策 { "Version": "2008-10-17", "Id": "PolicyForCloudFrontPrivateContent", "Statement": [ { "Sid": "1", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::cloudfront:user/CloudFront Origin Access Identity *********" }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::x***-logos/*" } ] }