


The OVF Specification provides a means of describing the properties of a virtual system. File Formats for Virtual Machines Open Virtualization Format (OVF) This is not by any means a comprehensive guide or list to the vast world of virtualization technology, but hopefully it can save someone else some time in making sense of this portion of the virtualization ecosystem. I’d like to share a few of the things I learned. We knew we could export some kind of appliance.box package compatible with VirtualBox from Vagrant, but how this related to OVF wasn’t clear. Our build process made use of VeeWee, Vagrant, and Chef. We quickly determined that an OVF or “Open Virtualization Format”-based approach had the potential to give us the greatest portability, and I set to work figuring out how to implement it. One of the problems we needed to solve for our customer was how to package and distribute the appliance.

You may have heard that GitHub has a product called “GitHub Enterprise” that allows a business to deploy their own copy of the GitHub platform within their network GitHub Enterprise is distributed as virtual appliance. Virtual Appliances may or may not have full-blown operating systems supporting the applications, but the key thing is that they are able to run directly on a hypervisor (VMWare ESX, XenServer, Hyper-V, etc.). They have an server application that they would like to distribute to their customers along with some new devices, and a virtual appliance is a good way to do that in a reliable fashion. I recently worked on a project to create a “virtual appliance” for one of our customers.
