VirtualBox is The Top Cross-Platform, Local Virtual Lab
November 07, 2017
VirtualBox is The Top Cross-Platform, Local Virtual Lab
Score 9 out of 10
Overall Satisfaction with Oracle VM VirtualBox
I've worked in multiple environments where I, and co-workers, used Oracle VirtualBox for local sandbox environments. I have used it to test out PowerShell scripts against mock Active Directory environments that I have spun up, allowing me to test code for demonstrations. When I have presented at user groups or a conference, I was able to have an environment the way I wanted it and could properly show code executing against Windows systems. I have been able to also test out Vagrant, Test-Kitchen, Chef, and Desired State Configuration (DSC) with Oracle VirtualBox as the virtual environment targeted with those tools.
- Can spin up multiple VMs on a host-only network that speak to each other and allow for interesting test environments spun up at will.
- Cross-platform functionality allows me to run it on my Linux Desktop and know that tutorials I make with it could be approached by someone on a Windows or Mac OSX system. Hyper-V is limited to Windows, and VMware Workstation requires a license (VMware Player is free, but is not open-source and is more limited in comparison to VirtualBox).
- I have had issues in the past when it has come to resizing VM disk storage. The issue is entirely detailed here: https://www.virtualbox.org/ticket/9103 -- the problem was caused because of having existing snapshots (which error message output was not detailing). I haven't had to deal with the issue due to my dynamic disk sizes not being small from the start anymore (this is mostly an issue for my Windows VMs where the base disk may need significant size for the OS). It looks like, for a resize, that a merge of all snapshots has to occur first -- one user on that list details a workaround to maintain snapshots by cloning the VM. (Note: 5.2 was just released a few weeks ago, and looks like it should prevent the problem happening in the future by properly informing users that it isn't possible with snapshots).
- Certain scenarios, like resizing disks, required dropping into a terminal as there were no options to previously do so via the GUI. According to some recent posts, I've seen that v5.2 has added disk management stuff like that to the GUI (or will be adding it). I'm comfortable with dropping into the terminal, but in a teaching scenario or when evaluating the learnability of the tools, it complicates things.
- I'd say practically always positive due to the turn around in testing. Being able to snapshot systems, run tests, load from previous snapshots, etc. quickly and locally is nice to have. As an educator, it was helpful to test and play in a sandbox before giving presentations and students could follow along
- If working in older, large enterprises, there may not be much for testing environments -- or the test environment may not in any way reflect the production environment -- so local testing with VirtualBox helps
- Difficulty in testing may also exist in companies where security is tight, mangled, or confusing -- leaving local VM testing as the quickest path to proof-of-concept.
- If one is not an educator or freelancer, a workplace should implement a proper build pipeline with multiple environments (test/QA/prod) so that an employee doesn't have to work their testing locally in a configuration that differs from the environment ultimately used in production. Unfortunately, many companies are not in this position for a variety of reasons (often an eternal battle between technical debt, bureaucracy, and resources), which is where VirtualBox comes into play. In this scenario, one should avoid letting the "workaround" of VirtualBox seem like a solution to avoid addressing those issues.
- For self-education, in learning new tools, software, etc., VirtualBox has allowed me to quickly be up and running with whatever it is I'm taking a look at. As a tool to assist in learning, it is excellent. Other tools like Docker have made evaluations and self-teaching quicker and easier.
Reasons why I prefer to use Oracle VM VirtualBox:
- I've worked and taught in many environments where the OS used by others (or by me for employment reasons) is a mix of Windows and Mac OSX. Sometimes Linux is around if I can help it. Being familiar with VirtualBox means I won't be attempting to learn new virtualization software. Works for all.
- Microsoft Hyper-V, which can be run by not only Windows server but also Windows desktops later than Windows 7, is Windows-only. I've been employed where all issued laptops were Mac's, so that wasn't going to work.
- When it comes to Hyper-V in a production environment as a hypervisor, that's an entirely different ball game. VirtualBox shouldn't be used to run/manage production assets. Microsoft Hyper-V, VMware vSphere / ESXi, and OpenStack / KVM would all be better solutions in those cases.
- VMware Workstation Pro costs money, and I don't have a VMware environment to work with.
- VMware Workstation Player, in my experience, was too limited and was difficult to use when managing multiple VMs running at a time. I struggled with networking also. Admittedly, I have not used it in a while to know if things have changed. Also, not available for Mac OSX.
- When playing around with automation and configuration management tools like Vagrant and Test-Kitchen, my experience with VirtualBox has been great.
- For testing out newer/different versions of operating systems locally, VirtualBox has become my virtualization tool of choice. I don't just use it for evaluation, either, as I run a licensed version of Windows 10 in VirtualBox for the times I'm testing something out in the Windows realm (my primary desktop OS is Ubuntu).
- For learning a local virtualization solution that is cross-platform, allowing one to be comfortable in virtualizing locally across whichever OS happens to be in use.
- In my experience, many open-source and automation toolsets related to DevOps-minded workflows are made, demoed with, and have tutorials for execution with VirtualBox.
- Working lean? Oracle VM VirtualBox is open-source and free to use.
- If evaluating VirtualBox in a business that is dependent on the VirtualBox Extension Pack, one would need to evaluate whether they are in need of an Enterprise license. I've never been in that situation. For more details on that: https://www.virtualbox.org/wiki/Licensing_FAQ and https://www.virtualbox.org/wiki/VirtualBox_PUEL
- I would not consider this a hypervisor for use in production, but only for local host/lab usage.