I'm not sure what are the benefits of supporting many VM providers for a tool that is meant for development (as far as I understand at least). Isn't VirtualBox sufficient? It is open source and runs on Linux, OS X and MS Windows. Perhaps I am missing some core idea.
Then there is veewee[1] which started life as a Vagrant plugin but as of version 0.3.0 it can be used standalone and one can ssh to the boxes using it, just like with Vagrant. If they were to add provisioning it would probably be an alternative to Vagrant feature for feature so maybe we're seeing a bit of competition between these two tools there.
On Ubuntu there is VMBuilder[2] written in Python but it doesn't offer provisioning as far as I know.
Last, as others have mentioned there is libvirt[3] which offers tools for communicating with different VMs but I don't think it offers a tool that matches what Vagrant does 1:1 (most notably the provisioning part).
The power in Vagrant is not the technology, it is actually the workflow. Vagrant is now in use by thousands of companies worldwide (some of the bigger ones you can see on vagrantup.com), and they consistently tell me that the power in Vagrant is that every developer, designer, etc now knows they can get some code and just type `vagrant up` and be working within a few minutes. When they're done? `vagrant destroy`. Small example, but Vagrant provides a consistent workflow.
There is a benefit to having this workflow on other systems.
First, VirtualBox has major problems. VirtualBox routinely kernel panics on a variety of operating systems, even leading to the point that there is a commit to the linux kernel that ignores crash reports from VirtualBox.
Second, the whole goal of Vagrant is to have development mimic production as closely as possible, and to make development fun. Some companies that use Vagrant can't mimic production very well on a single laptop, so they have a private cloud. They still want to use Vagrant -- because of the workflow! -- and this caters directly to them.
Also, for people on Linux, I know its not full virtualization, but some problems can be solved with simple LXC. Those people write scripts around LXC because LXC is pretty simple, but it would be pretty nice to get the benefits of Vagrant there, too. That is coming! Vagrant will support LXC.
Libvirt doesn't compare to Vagrant at all. If anything, they compliment each other.
And veewee-like functionality will make its way into Vagrant core very soon.
I had so bad experiences with Virtualbox (Dropping interfaces, crashing, ...) and switched to VMWare (Mac OS X). So I applaud the support of different providers.
Comments
I'm not sure what are the benefits of supporting many VM providers for a tool that is meant for development (as far as I understand at least). Isn't VirtualBox sufficient? It is open source and runs on Linux, OS X and MS Windows. Perhaps I am missing some core idea.
Then there is veewee[1] which started life as a Vagrant plugin but as of version 0.3.0 it can be used standalone and one can ssh to the boxes using it, just like with Vagrant. If they were to add provisioning it would probably be an alternative to Vagrant feature for feature so maybe we're seeing a bit of competition between these two tools there.
On Ubuntu there is VMBuilder[2] written in Python but it doesn't offer provisioning as far as I know.
Last, as others have mentioned there is libvirt[3] which offers tools for communicating with different VMs but I don't think it offers a tool that matches what Vagrant does 1:1 (most notably the provisioning part).
1. https://github.com/jedi4ever/veewee/blob/master/doc/README-c...
2. https://launchpad.net/vmbuilder
3. http://libvirt.org
The power in Vagrant is not the technology, it is actually the workflow. Vagrant is now in use by thousands of companies worldwide (some of the bigger ones you can see on vagrantup.com), and they consistently tell me that the power in Vagrant is that every developer, designer, etc now knows they can get some code and just type `vagrant up` and be working within a few minutes. When they're done? `vagrant destroy`. Small example, but Vagrant provides a consistent workflow.
There is a benefit to having this workflow on other systems.
First, VirtualBox has major problems. VirtualBox routinely kernel panics on a variety of operating systems, even leading to the point that there is a commit to the linux kernel that ignores crash reports from VirtualBox.
Second, the whole goal of Vagrant is to have development mimic production as closely as possible, and to make development fun. Some companies that use Vagrant can't mimic production very well on a single laptop, so they have a private cloud. They still want to use Vagrant -- because of the workflow! -- and this caters directly to them.
Also, for people on Linux, I know its not full virtualization, but some problems can be solved with simple LXC. Those people write scripts around LXC because LXC is pretty simple, but it would be pretty nice to get the benefits of Vagrant there, too. That is coming! Vagrant will support LXC.
Libvirt doesn't compare to Vagrant at all. If anything, they compliment each other.
And veewee-like functionality will make its way into Vagrant core very soon.
I had so bad experiences with Virtualbox (Dropping interfaces, crashing, ...) and switched to VMWare (Mac OS X). So I applaud the support of different providers.
I believe that Oz and Heat (http://heat-api.org/) are built on libvirt.
I hate all these daft code names ...
Building a product on top of another isn't the best of ideas (without having alternatives). Plus, VB is Oracle.
veewee is being merged into vagrant.
I wasn't aware of this. Have you seen anything that supports it?