Oracle VM VirtualBox: Personal Desktop Virtualization
by Detlef Drewanz
Published February 2013 (reprinted from eStep blog)
This article, which is Part 6 in a series of virtualization articles, describes Oracle VM VirtualBox and the various ways you can use it.
After discussing several aspects of resource management and network virtualization in the previous articles, let's now discuss Oracle VM VirtualBox.
Figure 1 shows the picture we used in the first article of this series to position the different types of virtualization:
To run a Type 2 hypervisor, you need an operating system that will run underneath the hypervisor. For Oracle VM VirtualBox, this means an already running host operating system on an x86-based desktop, laptop, or server. You install Oracle VM VirtualBox on top of that, as shown in Figure 2. Then you can simultaneously run multiple guest operating systems inside Oracle VM VirtualBox using multiple virtual machines (VMs).
The host OS can be Microsoft Windows, Mac OS, Linux, or Oracle Solaris. Many operating systems are supported as guests (see the Oracle VM VirtualBox documentation for the complete list.) For example, you can run Windows and Linux as guests on your Mac, you can run Windows Server 2008 and Oracle Solaris as guests on your Linux server, you can run Linux as a guest on your Windows PC, and so on, all alongside your existing applications. You can install and run as many virtual machines as you like—the only practical limits are disk space and memory.
Figure 3 shows Oracle VM VirtualBox installed on a Microsoft Windows 7 system running Windows XP and Ubuntu as guests.
Oracle VM VirtualBox consists of three parts:
- The first part is the base software package that is available for each supported host operating system.
- The second part is guest additions, which can be installed on the installed guests and add support for shared folders, seamless window integration, and 3D.
- The third part is extension packs, which can be installed to extend Oracle VM VirtualBox functionality. The Oracle-provided extension pack provides support for USB 2.0, the Oracle VM VirtualBox Remote Desktop Protocol (VRDP), and the Preboot eXecution Environment (PXE) boot ROM.
- Network address translation (NAT) networking: For clients on an Oracle VM VirtualBox private LAN, to connect them to the host's external network
- Bridged networking: Bridges guests to the host network and makes them full network citizens
- Internal networking: Binds guests to an isolated network, which is independent and separate from the host
- Host-only networking: A hybrid between bridged and internal networking, which connects the isolated private network with the host
Data can be transferred to and from the guests through external iSCSI storage, with shared folders from the host or via network services. There are several options for connecting Oracle VM VirtualBox guests with the host or the outside world:
In addition, there are several interfaces for Oracle VM VirtualBox, such as a command-line interface (VBoxManage), a Python interface (
vboxshell.py), and a Web services API (
phpvirtualbox). These interface are very flexible and enable administration of Oracle VM VirtualBox. If you need a configuration option that you cannot find in the GUI, check the Oracle VM VirtualBox User Manual and the various additional VBoxManage options.
Due to its graphical user interface, functionality for installing and managing guests, and capabilities for creating and managing snapshots, Oracle VM VirtualBox is easy to use and has rapidly gained popularity.
As an example, Oracle uses Oracle VM VirtualBox to prebuild VMs for developers. You can use these prebuilt VMs to learn about Oracle technologies without having to install an OS or application software. Just download the VM, import it into your Oracle VM VirtualBox installation, and you're ready to start your development work. (See this page for information about several prebuilt developer VMs.) Oracle VM VirtualBox is also used in the Oracle Virtual Desktop Infrastructure (which is the subject of the next article in this series).
With all this in mind, it is fair to say that Oracle VM VirtualBox is a cool, easy-to-use, and feature-rich personal desktop virtualization product that can be used for various purposes, such as training, testing, development, and evaluating technologies in a personal, "unplugged" lab environment.
About the Author
Detlef is a Principal Sales Consultant and is located in Potsdam, Germany. He acts as server and Oracle Solaris specialist on Oracle's Northern Europe Server Architects team. He joined Sun Microsystems in 1998 and is now part of Oracle. Prior to that, Detlef worked at Hitachi Internetworking Frankfurt in network support and as member of scientific staff in the Department of Computer Science of the University of Rostock. Detlef holds a master's degree in computer science.