Vagrant is a personal tool to automatically provision virtual machine environments. It comes for free along with VirtualBox plugin, although there are commercial plugins for other virtualization engines such as VMWare. It is a very handy tool, especially for developers: it enables them to quickly mock-up or destroy even complex virtual machine environments by executing just one command. Within this post we'll see how easily it can be installed, and how easy is operating with it.
Nowadays there are very few use-cases where bare metal should be preferred over virtualisation.
Linux professionals should have a thorough understanding of virtualization under Linux: Linux is a very good platform when it comes to virtualizing systems, enabling virtualisation even using simple suites such as libvirt with KVM. Figure out that even VMWare relied on Linux: the early version of its hypervisor, called ESX, included a Linux kernel, and there are several full-featured products, such as Red Hat’s RHEVM and Oracle’s VM, that still relies on it.
Virtualisation provided a great deal of resilience, but also added some complexity that professionals should be able to deal with: it speculates that the average resources consumption is far less than the sum of the provisioned capacity, but spikes happens, and professionals should know how to cope with them. Professionals should be able to design and implement 24×7 resilient virtualisation infrastructures, and be able to maintain and quickly troubleshoot them when issues arises.
Besides exploiting virtualisation to create virtual infrastructures, professionals should know how to take advantage of the power and resilience provided by virtualisation, for example to be able to quickly mock-up virtual environments to test what they are working onto, or to provide the required infrastructure to launch automated integration tests.
This requires the knowledge of automation tools targeted to manage virtualized environments such as Vagrant.