Cinder 从属 charm cinder-lvm

问题描述

Cinder 拥有大量用于不同后端驱动程序。 几乎所有当前可用的商业存储阵列和许多其他软件解决方案都提供驱动程序,如果尚未在 upstream cinder 项目中,则可以作为可安装的软件包启用 cinder 并使用额外的驱动程序。

由于存在如此多的可能性,因此开发了一种模型,即部署一个单独的从属 charm 来处理驱动程序的具体细节,并通过关系将配置传递给主 cinder charm,以便 cinder 可以写入自己的配置文件。

提议的变更

与修改 cinder charm 不同,该提案旨在为 lvm 驱动程序创建一个单独的从属 charm。 以下几点对于此从属 charm 的开发至关重要

  • 新的实现不应与当前实现冲突。 两者应尽可能共存,甚至在同一部署中。

  • 新的 charm 应实现 cinder charm 中当前存在的与 lvm 功能相关的所有功能。

  • 现有 cinder charm 中的新 LVM 功能将被视为已弃用,并在未来的版本中删除。

请注意,由于 LVM 驱动程序是 cinder-common 包的一部分,因此此 charm 无需安装任何额外的软件包即可工作。

此 charm 将支持当时的 Queens 版本 Openstack 及更高版本。

备选方案

在撰写本文时,尚不存在替代方案。

实现

负责人

主要负责人

Andre Ruiz <andre.ruiz@canonical.com> - LP ID: andre-ruiz

二级分配人

Luciano Lo Giudice <luciano.logiudice@canonical.com> - LP ID: lmlogiudice

Gerrit Topic

对于与此规范相关的所有补丁,请使用 Gerrit 主题“charm-cinder-lvm”。

git-review -t charm-cinder-lvm

工作项

如上所述的 charm。 此外,将编写单元测试和功能测试。

仓库

目前,以下存储库托管 charm 代码

https://github.com/openstack-charmers/charm-cinder-lvm

最终,它将被移动到 _openstack_ 命名空间。

文档

一旦此 charm 完成,charm-guide 将更新以引用它。

安全性

与当前解决方案相比,不会改变任何安全方面。

测试

代码更改将通过单元测试和功能测试覆盖。 测试此 charm 不需要特殊的硬件。

依赖项

除了当前解决方案中已有的依赖项之外,没有其他依赖项。