您当前的位置: 首页 > 

凌云时刻

暂无认证

  • 1浏览

    0关注

    1437博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

OpenStack Queens 女王新神器 — 卷多重挂载

凌云时刻 发布时间:2018-04-17 11:29:57 ,浏览量:1

卷多重挂载功能支持用户将单个块存储卷挂载至多个云主机,并可从多个云主机访问单个块存储卷。

这一功能的使用场景包括双主主及双机热备,即卷中的数据能够被多个云主机访问以实现在发生故障时快速恢复,或可处理系统中更多的负载。卷多重挂载要求两个 OpenStack 项目提供支持,即 Cinder(块存储)和 Nova(计算)。

云前景更加明朗

我们经常会发出疑问:是否应该向云平台添加我们认为不适合的新功能?这一疑问因为之前架构决策使得添加起来更具挑战性更为普遍。多重挂载也不例外。

虽然在行业内普遍渴望出现云原生应用程序,但重新编写每个程序来适应云原生则是一种相当奢侈的行为。为支持这一过渡期,我们需要为尚未完全适应的工作负载打造适用的平台。

在过去的几个发行周期中,我们在努力克服无法在Cinder 和 Nova 中实施卷多重挂载功能这一挑战的同时,在每周召开的例会中决定为平台设计全新的 API 和后续改进。

那么,有哪些新功能呢?

一开始,我们为 Cinder 添加了新的挂载/卸载 API,使得流程更为灵活。新的API 推出了“attachment(挂载)”的理念,您可创建、更新、完成或删除它以挂载或卸载卷。

如果您选择的 Cinder 后端报告需要为该功能提供支持,则您可使用新的挂载/卸载 API 多次挂载卷。在Queens 版本中,三个驱动程序支持多重挂载:LVM、NetApp/SolidFire和 Oracle ZFSSA。当其他驱动程序添加支持时,您可查看“驱动程序支持表”获取更新。

您需要创建一个多重挂载卷类型,以创建一个可使用该功能、支持多重挂载的卷。您还可将一个卷重新设置为不支持多重挂载的卷,反之亦然(仅当该卷为“可用”状态时)。从 Queens 版本开始,在卷创建操作过程中将弃用“multiattach”标记。

在计算端,为将单个卷挂载至多个虚拟机实例,您需要运行 Nova 微版本 2.60 或更高版本。与之类似,在 Cinder 的后端,您也会发现与 Nova 中管理程序有关的限制。在 Queens 版本中,只有 Libvirt 支持卷多重挂载,您需要 Libvirt >= 3.10 或 QEMU < 2.10。要获取进一步信息,请参考“功能支持表”。

当前,所有后续卷挂载将以读写 (RW) 模式挂载,包括从卷启动情形。您可通过两种 Cinder 策略开启或关闭该功能。

volume:multiattach

volume:multiattach_bootable_volume

您可在 Cinder 和 Nova 的管理指导章节中了解该功能及其限制的更多内容。

除了新的 API 和功能,我们还在测试方面覆盖了涉及的这些项目以及 Tempest。我们添加了测试用例,如基本功能、通过多重挂载卷启动云主机,或调整挂载多重卷的云主机规格大小。

接下来会发生什么?

目前讨论的改进设想包括提供支持,以为辅助挂载确定挂载模式。要获取最新信息,请查看 Cinder 规范列表获取最新版本。

为就测试范围获取进一步改进,正在考虑添加更强大的集成测试,如在两个虚拟机之间,对共享卷数据进行写入/读取共享卷。

  关于作者:

  Ildiko Vancsa 是OpenStack 基金会Ecosystem Technic Lead,布达佩斯技术与经济大学计算机科学博士,曾就职于Errison。

本文授权来源:

OpenStack Foundation

关于“Linux宝库”微信公众号:

欢迎关注"Linux宝库"微信公众号,这里每天发布最新的开源人物和开源事件。谨以此号记录Linux和开源业界的点点滴滴,为开源爱好者和从业者点亮人生。

- 责任编辑:Hellen Hao-

Linux宝库

长按扫码,关注我们

为开源爱好者和从业者点亮人生!

关注
打赏
1663816507
查看更多评论
立即登录/注册

微信扫码登录

0.0399s