cinder-specs/specs/juno/support-volume-backup-for-qcow2.rst
Mike Perez 8ca13afc49 Introduce use case section
This will now require a separate section "Use Cases". This was
originally within "Problem description", but use cases seems to be
missed when it was filled out. This will hopefully improve spec
submission.

Change-Id: I3615ca5ff5c46851e682739a8343242e2f1b0a8d
2015-04-15 22:20:56 -07:00

2.2 KiB

Support volume backup for qcow2

https://blueprints.launchpad.net/cinder/+spec/support-volume-backup-for-qcow2

Currently, cinder-backup doesn't support qcow2 format disk. Add the support for it will make drivers which use qcow2 as volume, such as glusterfs etc, work together with cinder-backup, and can also make nfs driver use qcow2 as volume be possible.

Problem description

Currently, cinder-backup doesn't support qcow2 format disk because the backup code assumes the source volume is a raw volume. The destination (i.e. swift, rbd) should absolutely remain universal across all volume back-ends.

Use Cases

Proposed change

  • Add qemu-nbd support to cinder-backup. Qemu-nbd can mount qcow2 volume as a raw device to the host
  • The backup_volume method in base class of remotefs driver (cinder.volume. drivers.nfs.RemoteFsDriver:backup_volume) will mount qcow2 volume as nbd device before call backup_service's backup method

Alternatives

None

Data model impact

None

REST API impact

None

Security impact

None

Notifications impact

None

Other end user impact

None

Performance Impact

None

Other deployer impact

Storage node which running cinder-volume will contains nbd kernel module.

Developer impact

None

Implementation

Assignee(s)

Primary assignee:

Trump.Zhang <zhangleiqiang@huawei.com>

Work Items

  • Add qemu-nbd support to cinder-backup. Qemu-nbd can mount qcow2 volume as a raw device to the host
  • The backup_volume method in base class of remotefs driver (cinder.volume. drivers.nfs.RemoteFsDriver:backup_volume) will mount qcow2 volume as nbd device before call backup_service's backup method

Dependencies

None

Testing

None

Documentation Impact

None

References

None