Implement API call to create bootable volume from existing image or instance

Registered by Anthony Young

This blueprint has been superseded. See the newer blueprint "Create EBS volumes as root and local on boot-time" for updated plans.

At present, the boot-from-volume feature of nova is a bit obscure, and tricky to use. The user must launch an instance, mount a volume, know how to correctly create a proper bootable volume. When booting, they must then know which image to associate that volume.

It would be ideal to interact with nova like so:

 > nova bootable-volume-create --instance_id=x # That would create a bootable volume based on an image

Or:

> nova bootable-volume-create --image_id=x # Create a bootable volume from an image

Later, when booting the volume, where applicable, nova should already know which kernel/ramdisk to associate with that volume (or at the very least, it should be easy to determine what those values are).

Blueprint information

Status:
Complete
Approver:
None
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
None
Definition:
Superseded
Series goal:
None
Implementation:
Unknown
Milestone target:
None
Completed by
Vish Ishaya

Related branches

Sprints

Whiteboard

I suggest additional support for a quantity parameter. One could conceive of scenarios where standing up a large number of VMs (derived from a single image) would be useful. Support for quantity here allows for various nova-volume providers to, if capable, implement pointer based cloning (for speed & storage capacity consumption efficiency).

(?)

Work Items