OpenStack对象存储(代码为Swift)具有相当频繁的发布时间表以进行改进和提供新功能,但是自然地,对于任何OpenStack项目,集成发布始终具有重大意义。 尽管Havana版本对于OpenStack Swift来说非常重要,并且对全球集群提供了新的支持,但即将发布的Icehouse将是OpenStack Swift项目迄今为止最大的版本。
自从该项目在三年多以前开源以来,贡献者社区已显着增长。 考虑到开发人员的参与活力,每个新发行版都比以前的发行版更大。 最近的贡献来自包括HP,IBM,Intel,Red Hat,Rackspace和SwiftStack等公司。 Icehouse的目标是提供一系列主要的新功能,并对复制和元数据进行许多改进。 不过,杰出的新功能是存储策略,这是一种配置OpenStack对象存储集群的新方法,因此部署人员可以非常具体地将可用存储与用例进行匹配。
储存政策
为什么“存储策略”如此重要? 存储策略的抽象将使部署者可以针对比今天的单个策略所允许的更多的用例进行优化,并为OpenStack Swift下使用的硬件提供更大的灵活性。 使用当前的Havana版本,部署人员可以在广泛的地理区域中支持复制的内容。 Concur在上届香港OpenStack峰会上分享了一个很好的例子 。 通过单一策略,数据将分布在整个全局部署中。
在Icehouse版本中,存储策略允许部署者拥有多个策略并管理重要的配置选择,这种灵活性带来了更多的用例:
- 首先,考虑到单个OpenStack Swift集群中可用的全局硬件集,将可以选择存储特定数据的硬件子集的新选择。 这可以通过地理位置(例如,美国东部,欧洲联盟,亚太地区和全球)或硬件属性(例如SATA和SSD)来完成。
- 其次,给定用于存储数据的硬件子集,将有一个新的选择如何在该组硬件上对数据进行编码。 例如,也许您有2个副本,3个副本或将来的擦除代码策略(期待Juno发行)。 将其与硬件可能性结合起来,您将获得例如美国东部减少的冗余,全球三重副本和欧盟擦除编码。
- 第三,鉴于硬件的子集以及如何在该硬件上存储数据,将对Swift如何与特定存储卷进行通信进行新的控制。 这可能是优化的本地文件系统,Gluster卷,甚至是非POSIX卷,例如Seagate的新Kinetic驱动器。
如今,OpenStack Swift允许选择集群中的复制因子(例如3个副本,4个副本),可以根据需要对其进行修改。 今天,这是一个集群范围的设置,而且存储策略从根本上来说是新的,允许复制的或非复制的存储彼此并存。 在Icehouse版本中,OpenStack Swift即将推出的强大功能(例如存储策略)将扩大服务提供商和企业中用例的采用范围。
如前所述,存储策略是一种支持技术,可用于将来在OpenStack Swift中支持擦除代码。 自2013年下半年以来,充满活力的开发社区一直在为存储策略奠定基础。在当前的主要发行周期中,工作仍在继续,目标是在2014年第二季度实现OpenStack Icehouse存储策略集成发行版。一些擦除代码开发还将包括在内,并且擦除代码将在完成和测试后发布,目标是2014年年中,然后在2014年第四季度发布集成的Juno。
删除码
为什么存储策略对Swift中的擦除代码如此重要? 可以将删除代码(类似于对象存储的RAID)视为一种策略选择。 与使用副本进行保护相比,擦除代码对于某些数据(如备份)可能是一个不错的选择。 在Swift集群中,存储策略的结构使部署者能够选择他们希望如何为一组硬件和/或区域编码数据。 在代码库中进行重构以允许擦除代码支持还可以定义任意存储策略。
学到更多
在接下来的几个月中,除了新功能外,我们还将重点介绍用例,以展示不同公司如何使用OpenStack Swift创建自己的私有云存储或为客户构建云存储产品。
我们还在美国各地举办了经常免费参加的讲习班 ,我们在那里接受了技术培训,并为您提供了最新功能的动手经验。 如果您有兴趣参与该项目,请查看OpenStack Swift Wiki 。
翻译自: https://opensource.com/business/14/2/storage-policies-in-openstack-swift