添加 vHost 执行器¶
https://blueprints.launchpad.net/cinder/+spec/vhost-support
vHost 驱动程序是在 Linux 3.6 内核中添加的。Linux-IO Target vHost 织物模块基于 Linux virtio 机制实现 I/O 处理。它为 KVM 客户机提供近乎裸机的本地存储性能。目前支持 Linux 客户机虚拟机。
问题描述¶
vHost 驱动程序不是一个独立的 virtio 设备,因为它依赖于用户空间来处理控制平面,而数据平面在内核中完成。这意味着数据平面不会通过模拟,这可能会降低 I/O 性能。目前 Cinder 没有提供利用 Linux vHost 驱动程序的选项。
用例¶
提议的变更¶
添加一个额外的 brick 执行器,该执行器知道如何与 vHost 协同工作。该执行器将实现一个首次通过的创建、删除、列出 vHost 端点的方法,通过 LIO 实现。
创建端点需要在创建 vHost 目标的机器上提供一个块设备。vHost 执行器会将块设备路径传递给 rtstools,rtstools 将使用该块设备创建一个带有 LUN 的 vHost 端点。
备选方案¶
n/a
数据模型影响¶
n/a
REST API 影响¶
n/a
安全影响¶
n/a
通知影响¶
n/a
其他最终用户影响¶
n/a
性能影响¶
Cinder 本身作为控制平面,不会体验到任何不同的性能。数据平面应该体验到更大的性能提升 [1]。
其他部署者影响¶
n/a
开发人员影响¶
n/a
实现¶
负责人¶
- 主要负责人
thingee
工作项¶
将 vHost 执行器添加到 brick
依赖项¶
n/a
测试¶
将提供适当的单元测试,以确保目标创建、删除、列出功能正常工作。
文档影响¶
n/a