Jump to: navigation, search


  • Launchpad Entry: NovaSpec:filedriver
  • Created: 2011-02-08
  • Contributors: Christian Berendt


Implementation of a file based volume driver to manage images created by and creating with qemu-img, for example on a mounted NFS export.

Release Note

  • no code provided for a release at the moment, so no release notes


  •  ??? what should i write here ???

User stories

  • often there are existing big filers only accessible per NFS and not per iSCSI


  • storage is already mounted on the system, it should not be mounted by the driver
  • storage is readable and writable by the nova-volume process
  • storage is mounted, readable and writable on all compute nodes
    • for example by using NFS or OCFS2
  • it's possible to use more than one mountpoint to storage the images
  • it's possible to specify the used format


  • at the moment "local" storage can only be used by using LVM2


  • check if the specified storage is correctly mounted and writable before creating a new image
  • create a new images with qemu-img
  • remove images with rm
    • mabye better to use a Python library here
  • check needed free storage on the storage with df
    • mabye better to use a Python library here
  • add a new FLAG to set the default format
  • add a new FLAG to specify one or more mountpoints to be used to store new images
  • add the possibility to import already created images as a new volume
    • useful for migrating and using existing images into/in the cloud
  • add the possibility to choose the used format per volume
  • add the possibility to choose the used mountpoint per volume
  • add the possibility to move one image from a mountpoint to an other one

UI Changes

  • add a new list in the dashboard to choose the format to use by newly created volume

Code Changes

  • create new method FileDriver() in nova/volume/driver.py implementing the points described unter Implementation


  • I don't know if it's possible at the momentan to use 2 volume drivers in one Nova setup
    • if it's possible there has to be implemented a method to migrate from and to migrate to a file image

Test/Demo Plan

This need not be added or completed until the specification is nearing beta.

Unresolved issues

  • no implementation at the moment, so there are no unresolved issues

BoF agenda and discussion

  • no discussion at the moment