Which is cheaper: Containers or virtual machines?

Researchers find application containers yield double-digit resource savings vs. hardware virtualization

cargo containers
Credit: Håkan Dahlström

The emergence of application containers has come with questions about where this technology fits in the enterprise technology landscape, and more specifically how it compares to virtual machines.

+MORE AT NETWORK WORLD: Are containers VM killers?

A new report from 451 Research has some provocative findings on just how advantageous containers could be, not just for developers and operators, but for the finance team too.

“451 Research believes containers are better placed, at least theoretically, to achieve lower TCO (total cost of ownership) than traditional hardware virtualization,” 451 Researchers Owen Rogers and Jay Lyman write. “In fact, we have found that double-digit resource savings are achievable even with relatively simple implementations.”

+MORE AT NETWORK WORLD: 10 Tips for a successful cloud plan +

The key to Rogers and Lyman’s research is the notion that containers are an operating system-level virtualization. Hardware virtualization uses a hypervisor to create virtual machines and each of those VMs has its own operating system. Containers, on the other hand, virtualize the operating system so multiple containers share the OS. This creates efficiencies.

“Containers have the same consolidation benefits of any virtualization technology, but with one major benefit – there is less need to reproduce operating system code,” Owens and Lyman write in the report. You can pack more on to a server that is running containers and one version of an OS compared to a server running a hypervisor with multiple copies of an OS.

For example, a server that is hosting 10 applications in 10 virtual machines would have 10 copies of the OS running in each VM. In a containerized model without virtual machines, those 10 applications could all –theoretically – share a single version of the OS. Rogers and Lyman say this create double-digit percentage resource savings of server processing using containers versus VMs. “Operating system virtualization does a better job of consolidation than hardware virtualization, simply because there is less duplication and therefore less resource consumption,” the researchers found. Having fewer operating systems yields other benefits. For example management is less cumbersome because there are fewer OS security updates.

So should containers replace all VMs?

VMs aren’t going away

Virtual machines still have an important place in enterprise technology, Rogers and Lyman say. “Anytime new technology comes along, it’s not as simple as flipping a switch and start seeing savings,” says Sushil Kumar, CMO at container-based software defined infrastructure startup Robin Systems. Kumar notes that when virtualization was first gaining traction in the early 2000s, it was first implemented in test and development environments. Even today, Kumar says some applications like virtual desktops and enterprise applications like SharePoint run just fine in virtual machines and benefit from having hypervisor isolation of VMs.

There are other factors to consider beyond cost. Using containers outside of VMs requires the ability to provision and manage bare metal servers, for instance, which could involve some additional cost.

“There are benefits to VMs in more mature security, tooling, management and process, which is why we expect – just as there are still physical machines alongside today’s VMs – there will likely be VMs alongside containers,” Rogers and Lyman write. “Nevertheless, efficiency, scalability and performance factors (including the cost advantage) will undoubtedly mean more disruption to VMs from the advent of containers.”

This story, "Which is cheaper: Containers or virtual machines? " was originally published by Network World.

NEW! Download the State of the CIO 2017 report