The question under consideration is whether users of VirtualBox as multiple system guests on an x86 computer can be isolated from one another by combining Solaris Containers with VirtualBox. The answer, as Jeffrey Victor reports in his blog entry "Layered Virtualization," is yes.
Victor took two approaches the first being to create a Container and install VirtualBox in it. This is the Master WinXP VirtualBox (MWVB) Container. If any configuration steps specific to a WinXP environment are needed, they can be done now. When a Windows XP environment is needed, clone the MWVB Container and install WinXP in the clone. Management of the Container can be delegated to the user of the WinXP environment if you want.
The second was to create a Container and install VirtualBox in it. This is the Master CentOS VirtualBox (MCVB) Container. Install CentOS in the Container. When a CentOS environment is needed, clone the MCVB - including the copy of CentOS that's already in the Container - to create a new Container. Management of the Container can be delegated to the user of the CentOS environment if you want.
In each case, resource controls can be applied to the Container to ensure that everyone gets a fair share of the system's resources like CPU, RAM, and virtual memory, Victory writes, adding that, when the process is complete, you have a guest OS, which he illustrates with one of many screen shots in the blog.
The author's investigations lead him to remark that as long as the client VM is supported by VirtualBox, it can be installed and run in a Solaris/OpenSolaris Container. He suggests several useful applications of this combination of virtualization technologies:
- migrate existing applications that are deemed "unmovable" to latest eco-friendly x64 (64-bit x86) platforms
- reduce network latency of distributed applications by collapsing the network onto a large memory system with zones, regardless of which OS the application components were originally written in
- on-demand provisioning, as a service, an entire development environment for Linux or Windows developers. When using ZFS, this could be accomplished in seconds.
- eliminate ISV support issues that are currently associated with BrandZ's lack of support for recent Linux kernels or Solaris 8 or 9 kernel
Victor also declares that the advantage of having access to application code through Containers more than compensated for a 5% overhead (on a laptop) due to having a second kernel. The overall environment seems to be disk-sensitive. Given that typical server load in a large IT shop is 15-20%, a number of such "foreign" zones could be added without impacting overall server performance, he concludes.
Victor concludes his blog with a review of the installation details.
More Information
VirtualBox
Solaris OS Features: Virtualization
[...read more...]