1

I'd like to distribute a Web application as a VM image in order to make distribution, installation and maintenance as easy as possible for customers (virtual appliance). This image should include everything software related (application, Web server, database, etc.). Since I cannot know how big the data is each customer is going to store I'd like to plug in storage separately.

Is there a standard way of providing an image where the customer at deployment time can add a volume that is, e.g., automatically mounted at a specific location that can then be used by my application? The best way would be for this working without having to log onto the virtual machine and manually mount volumes or something.

As for the format I'm thinking about the usual suspects VMDK and OVF if that's important.

musiKk
  • 127
  • 6

1 Answers1

1

OVF can have a user specified size for empty disks. Scripting in your VM would need to handle formatting of this disk for lvm and/or file system use.

Quite a few appliances do not bother and come with a static size allocation for initial use. Documentation may explain how to size and install larger disks.

John Mahowald
  • 30,009
  • 1
  • 17
  • 32
  • One benefit of separating data would be that updates of the application could be done by swapping out the image with our application. If this image contains any stateful data including configuration of storage, this is not possible. Maybe it isn't easily doable anyway. – musiKk Dec 07 '15 at 10:30
  • So this solution seems to be good on paper. Unfortunately I cannot test it yet as VirtualBox does not support custom properties. – musiKk Dec 08 '15 at 10:04