Amazon S3跨区域复制功能火热出炉

九年前的3月14日,亚马逊AWS正式推出AmazonSimple Storage Service,也就是大家通常称作S3的第一个AWS云服务。九年后S3如虎添翼,正式推出了全新的S3跨区域复制( S3 Cross-Region Replication)功能。

九年以来,AWS已经将S3部属推广至全球所有区域,为S3添加了数十项新的功能,同时多次下调了S3存储及带宽的价格。这期间我们看到全球的各行各业的客户将关键的联网和业务数据交由S3打理,并通过成千上万种独特且极具创意的方式使用了S3,极大丰富了互联网数据和应用的世界。

尽管S3存储桶实现了全球统一命名,但S3(正如其它一些AWS服务一样)仍然部属运行在各个AWS区域当中。这一模式允许用户对各自的数据所处位置进行全面精确的控制,即如果没有客户的操作S3数据只会保留在特定的区域内。用户可以根据多种因素为数据选择具体存储区域,包括遵从当地法规合规要求、出于延迟考量而将数据安置在与主要客户相近的地区、或者基于其它的理由。

但是,很多客户向AWS反映需要在多个区域同时部属数据,或者为关键性数据在远程异地备份,也就是在多个AWS区域对S3数据进行复制部属。

跨区域复制

为了帮助客户更轻松地将S3对象副本复制保存到其它AWS区域当中,AWS于3月24日正式推出了S3跨区域复制( S3 Cross-RegionReplication)功能。用户可以利用这项功能满足前面提到的各项需求,包括跨区域多副本存储以及把数据部属在与客户较接近的位置。

当客户启用这项功能之后,,每一个被上传至特定S3存储桶的对象都会以自动方式复制到位于不同AWS区域内的指定存储桶当中。只需要几分钟,用户就能启用该功能并着手使用!它构建于S3现有版本Visioning设施的基础之上,客户可以通过控制台在必要时开启这项功能:

当版本控制功能启用后,用户直接点选启用跨区域复制功能。然后用户只需选择指定区域及存储桶(此外还提供其它可选项目,包括利用前缀将复制操作限定在特定存储桶中的特定对象键),设置一个IAM角色,到这里准备工作就全部完成了。

用户可以选择一个现有存储桶,或者在这一步中创建一个新的存储桶:

用户还需要设置一个IAM角色,这样S3就能够列出并检索该源存储桶内的全部对象,并向目标存储桶进行副本复制操作。由于大家能够对Policy策略文件进行控制,因此各位能够轻松实现各类高级场景应用,例如在归属于不同AWS账户的多个存储桶之间进行数据复制。控制台将提供一套默认策略,从而帮助大家设置出合适的IAM角色:

一旦复制流程全部设置完毕,接下来要做的就是检查目标存储桶。不出所料,目标存储桶中此刻空无一物(复制将针对新创建的对象进行):

可以试着上传一幅图片,并选定Reduced RedundancyStorage(即减少冗余存储,简称RRS)以及使用AWSS3主密钥的Server Side Encryption(即服务器端加密,简称SSE):

接下来刷新目标存储桶视图,而所存对象如预期般出现在了其中。接下来,用户可以注意到该副本确实使用了RRS与SSE机制:

整个复制流程同样也会复制全部与对象相关的元数据与ACL(即访问控制列表,AccessControl List)。

除了使用控制台,用户当然也可以通过S3 API启用并管理S3跨区域复制功能。

“根据我们的测试结果,S3跨区域复制功能将使美国金融业监管局以更具自动化特性、即时性以及成本效益的方式传输大量数据。这项新功能的出台无疑帮助我们满足了弹性、合规性以及灾难恢复等数据保护要求。”

-美国金融业监管局高级主管PeterBoyle

相关细节

当大家计划在自己的操作系统当中使用跨区域复制功能时,还有几点事项需要多加留意。

版本控制 – 正如在前文中所提到,用户必须首先为源存储桶与目标存储桶启用S3版本控制机制。

生命周期规则 – 用户可以选择在目标存储桶上使用生命周期规则对旧有数据版本进行管理,包括将其删除或者将其迁移至AmazonGlacier。

检测复制状态 – 用户可以自行(或者利用代码)通过HEAD操作在源对象上检测其复制状态,也可以(如上所示)在控制台中查看这一状态。

区域到区域 – 复制流程必须发生在两个AWS区域之间。无法利用这项功能在两个处于同一区域内的存储桶之间进行内容复制。

怠惰是贫穷的制造厂。

Amazon S3跨区域复制功能火热出炉

相关文章:

你感兴趣的文章:

标签云: