In Chapter 1, Setting Up Your Development Environment, we explored portal development using Vagrant; we even deployed a full Storm cluster into a local set of virtual machines. This gave us a realistic way of testing the deployment and interactions of a cluster. It is however very limited, in that all virtual machines are hosted on your local developer system.
In IT operations, it is important to reduce the number of variables and the number of things that need to be changed or configured in a system in order to promote it through different environments. For that reason, it is wise to standardize an operating system's databases and tool chains across environments, and have the developer's environments mimic all the other environments as closely as possible. Vagrant provides an excellent way of achieving this. Using Vagrant, you can develop a complete environment on your local machine, as we learned in Chapter 1, Setting Up Your Development...