跳转到: 导航, 搜索

高效镜像卷

  • Launchpad 条目: NovaSpec:efficient-volumes-from-images
  • 创建时间: 2012年4月3日
  • 贡献者: Josh Durgin, Tommi Virtanen

总结

如果 Nova 卷和 Glance 使用相同的存储后端,并且该存储后端支持,则加快卷(和实例)创建速度。

发布说明

实例和卷的创建可以利用底层存储,在空间和时间上提高效率。

原理

存储系统提供了一些特性,可以在存储镜像和卷时节省空间和时间

  • 例如,写时复制等特性可用于使卷(和实例创建)近乎瞬时,并节省空间
  • 数据去重可以在镜像和卷上一起进行,从而降低硬件要求
  • 管理员只需维护一个存储系统

用户故事

用户创建许多新实例,这些实例没有临时磁盘,但都基于相同的镜像。由于共享的底层存储系统,这发生得非常快,并且需要非常少的额外空间。

前提条件

依赖于 从镜像创建卷 以及一种查询 Glance 关于镜像后端存储的方法。

设计

Cow volume from image.png

实现

有两个部分依赖于卷后端

  1. 确定给定的镜像是否存储在与卷相同的后端
  2. 高效地基于镜像创建卷

这两个都可以是可选的卷驱动方法 - 例如 `def cloneable(image_info)` 和 `def clone(image_info, volume_name)` - 如果它们未实现,或者 cloneable 返回 false,则回退到 从镜像创建卷 中的打开/写入/关闭 API。

迁移

没有数据库或核心 API 更改。

测试/演示计划

这不必在规范接近 Beta 之前添加或完成。

BoF 议程和讨论

使用本节记录 BoF 期间的笔记;如果将其保留在批准的规范中,请用于总结讨论内容并记录任何被拒绝的选项。