Are you attending DockerCon 2017 in Austin, TX next month? If so, I invite you to add Diamanti to your MUST SEE list of vendors.
Diamanti is taking a
hardware appliance approach to helping customers deploy and manage
containerized workloads in production at scale. Mark Balch, VP of Products at
Diamanti, last spoke to me in August 2016
about a common use case they see for customers embracing continuous
integration, continuous deployment (CI/CD).
Containers bring many benefits, with huge performance benefits
compared to VMs at scale. I followed up with Mark for a more general discussion
about TCO of virtual machines versus containers.
To learn even more, you can visit Diamanti
at DockerCon 2017 at booth S9.
VMblog: How do people think about the TCO of virtual machines, and is it
reasonable to apply the same TCO outlook to containers?
Mark Balch: Containers have a variety of
benefits over virtual machines from a cost and performance perspective. First
of all, start off by realizing that fundamentally containers allow you to run
multiple applications on the same server or operating system but without a
hypervisor and the associated licensing cost. That is a huge shift from just a
few years ago when the only way to run multiple applications on the same server
was with a hypervisor. I mean in a way that you could easily reproduce. You
could always come up with your own hacked way to run multiple apps on a server
but it was hand crafted and specific to your application. What that means is
the hypervisor is in some sense completely superfluous for containers. Why
would you even put a hypervisor on if you can already run multiple apps without
it? If you look at the cost of the hypervisor compared to zero, that is one
element of TCO.
VMblog: What about the resource requirements of VMs vs containers?
Balch: If you look at the resource
footprint of the hypervisor and each of the VMs which brings its own OS
overhead, you realize that you're going to lose a chunk of resources that
aren't going to be available for your applications. So that's also a cost
compared to zero for containers from a TCO standpoint. All of those things also
have a performance implication, too. There is some performance impact of the
hypervisor and the VMs and the multiple levels of software involved in servicing
that stack. With containers in a bare metal container environment those things
simply do not exist. So there's no cost in having to deploy additional
resources to compensate for the overhead of the hypervisor. Keep in mind that a
container footprint actually is zero. A container is not a thing. A container
is a boundary of permissions and resources within Linux. There is no layer or
resource of a container. It's like a glorified list that Linux keeps track of
what you can and can't do in that container.
VMblog: What other TCO advantages do you see for containers over VMs?
Balch: I've already spoken to
performance and footprint. Let's not overlook operating expense. Figuring out
labor and OPEX is always tricky -- everyone always has their own cost models,
and always a lot of skepticism when vendors talk soft TCO. But the reality is
that if you completely remove something from the environment, whatever cost and
time you had to administer that drops to zero.
VMblog: What are the greatest TCO shortcomings of containers vs. VMs?
Balch: The biggest shortcoming is the
lack of user education and therefore the impact and cost of training. And the
cost that early adopters often absorb in manual integration and custom
engineering since the tooling around containers is still immature and new.
If you are attending this year's DockerCon event, definitely put Diamanti on your must see list to find out more about the TCO of containers vs. VMs. Visit them at booth #S9.