OpenStack 中组件之间的交互

Interaction between components in OpenStack

我对 OpenStack 组件和角色非常陌生,我很难理解每个组件的工作原理和运行时间; 假设我的 openStack 存储中有一个特定的图像,客户端使用它并完成一些操作(比如保存文件);执行此操作的组件之间的交互如何?(我想知道从创建卷到保存更改的过程以及哪些组件是如何工作的; 非常感谢。

Openstack 遵循面向服务的架构。它使用 WSGIdjango 框架。因此,每个组件都暴露了很少的 REST API。

您可以在 api 文件夹中找到这些 API。例如 (https://github.com/openstack/cinder/tree/master/cinder/api).

在内部,这些 API 调用会调用经理。 manager.py 是处理主要逻辑的文件。 (https://github.com/openstack/cinder/blob/master/cinder/volume/manager.py).

它调用底层 driver 类 并通过它们的 APIs 与其他 openstack 服务协调。