![Charm 中两个 OpenStack 服务之间的共享库使用情况](https://linux22.com/image/1201414/Charm%20%E4%B8%AD%E4%B8%A4%E4%B8%AA%20OpenStack%20%E6%9C%8D%E5%8A%A1%E4%B9%8B%E9%97%B4%E7%9A%84%E5%85%B1%E4%BA%AB%E5%BA%93%E4%BD%BF%E7%94%A8%E6%83%85%E5%86%B5.png)
我是 OpenStack 的 Juju Charms 的新手,目前正在用 Juju 构建环境。
我想编写一个 Juju Charm,它可以部署特定的存储后端作为 Cinder 的下属。
为了便于维护,此 Charm 对 Cinder 和 Nova 来说是一样的。根据调用者的不同,它会执行不同的操作。
我已经开始编写一些似乎可行的代码。
作为存储后端使用的一部分,它需要作为 Nova 的下属做出一些动作,这就是它变得复杂的地方。
我正在考虑使用一个共享库,我可以从这个 Charm 中使用它,并根据谁是父母来执行操作。
例子:
- 对于灰烬,符咒将执行动作 A 和 B
- 对于新星,相同的符咒将执行动作 B 和 C,但不会执行动作 A。
您有什么建议或者可以指出我现有的例子吗?
谢谢。