Persistent storage

I’m really new to OpenNebula. I would like to bring up a private cloud similiar to Amazon EC2.
If I remember properly, EC2 instances has ephimeral storage, and so does in OpenNebula. shutting down a VM will also destroy it’s local disks.

Would be possible to add persistent storages to a VM, with opennebula ? If yes, how?

any suggestion on how to configure the private cloud like EC2 ?


You should check the answer from C. R. Oldham (Question about non-persistent disk)

Hi Gandalf,
in OpenNebula you have several options:

  • You’ve non persistent images. Changes in those images won’t be saved once the VM life-cycle ends.
  • You’ve persistent images. Changes in those images will be saved once the VM.
  • You may have volatile disks which are disposed when the VM is shutdown and cannot be saved
    and more features like snapshots, disk cloning…

I’d start with the “Start Here” section to know more about features and terminology and then you may have a look at these sections so you can understand what options do you have for your private cloud:


Thank you for pointing me to the right docs.
I’m reading some docs but is not clear how to configure a VM to start from a golden image (like a Debian image) but with a totally volatile disk. I would like to automatically destroy the VM disks when the VM is powered off.

I’m not sure if the following info will be fine for the scenario you’re proposing:

  • You can download a VM from the marketplace or create your own VM.
  • The base image with the OS can be set as non-persistent.
  • You create a template for a VM which uses that image.
  • You can instantiate as many VMs as you want from that template as the image is non-persistent. Non-persistent images are copies from the original.
  • You can modify the content of the disk in any of the VMs, those changes won’t persist.
  • You can use the terminate action with the VM.That will poweroff the VM first and remove the VM and the disk which was a copy of the base image. VM info will still be available in the database for accounting.

This info and diagram has always helped me to understand what will happen with a VM.


Seems perfect. With this I can choose if to create a totally volatile image or a ‘standard’ VM with persistent disks.

One question: as I have 2 different DC where to place opennebula, how can I create multiple regions allowing users to choose in which region start their VMs? What would happens if the requested image is not available in all regions ?

I’ve looked at federations but is not clear, to me, why there is a master/slave infrastructure.
Can someone explain it better?

Are federation what I need to create multiple cloud regions ?