# Revision history [back]

### what is block device mapping in nova?

https://docs.openstack.org/user-guide/cli-nova-launch-instance-from-volume.html

There is a command saying: Create volume from image and boot instance, the command is like below.

openstack server create --flavor FLAVOR --block-device \ source=SOURCE,id=ID,dest=DEST,size=SIZE,shutdown=PRESERVE,bootindex=INDEX \ NAME

I do not quite understand what the parameters source=SOURCE and dest=DEST mean? does it mean source=image and dest=volume?

the source, in fact, can be many types (volume, snapshot, image, and blank) the dest can be volume and local.

I refer to this doc: https://docs.openstack.org/developer/nova/block_device_mapping.html

It says: Combination of the source and dest parameters would define what kind of block device the entry is referring to.

these combination, does it mean to copy the boot information from source to destination volume and attach the volume to the instance, then boot up the instance with the volume? volume -> volume, snapshot -> volume, image -> volume

does this mean just boot a instance from image and attache the destination volume? blank -> volume

I do not understand what the local means ? the host machine or guest local file? image -> local, blank -> local

I refer to this doc. it says : Block device mapping is a way to organize and keep data about all of the block devices an instance has.

but when the nova instance boot up, it only have one block device, or multiple block devices?

I am so confused about the block device mapping and the combination among source and destination.