The Imitation Game: Introduction to Administering Virtual Machine Systems
Virtualization and containerization are concepts almost as old as computing itself so, no matter what you’re doing on your computer, you’re probably using one form of it or another. For example, partitioning a hard disk chunks its total capacity into smaller units useful for specific purposes, much like the individual drawers in a dresser might separate undergarments from outerwear. Organizing, or “containerizing,” your closet this way is useful in its own right because it helps you keep things neat and orderly. But this organizing method also offers dramatic security enhancements because a misbehaving program (or dirty sock) will be confined to its own container.
Today, virtualization has become integral to how desktop computers, servers, and global data networks work, and cross-platform, Free Software virtualization programs have never been easier to use. Storage virtualization makes it possible for a single file on your computer to appear to be an entire hard disk drive (such as provided by VeraCrypt), network virtualization makes it possible to simulate different networks (e.g., using VLANs) or even the whole Internet (using INetSim), processor virtualization makes it possible to run programs built for one microchip architecture on computers running a completely different one (e.g., in QEMU), and fully-fledged virtual machine monitors (VMMs) or hypervisors can construct and modify entire hardware environments complete with virtual video monitors and other peripherals on the fly (as is offered by Proxmox). Virtualization is even the bedrock of numerous Operating System and Web browser security features, such as in the Qubes Operating System, macOS’s App Sandbox, and Firefox Containers.
Whether you’re using your computer for fun or for profit, this workshop will get you up and running with Virtual Machines using the VirtualBox type-2 hypervisor so you can experiment with unfamiliar software more boldly, browse the Web more safely, and play games you otherwise wouldn’t have been able to. By learning how to take advantage of the virtualization capabilities your computer already offers, you can revive your love of that long-lost DOS point-and-click adventure, reliably build and test single- and multi-machine networked software systems, or simply create an almost unlimited number of purpose-built virtual machines that all exist, like inception, inside your existing laptop or other personal computer.