Containers, a lightweight way to virtualize applications, are an important element of any DevOps plan. But how are you going to manage all of those containers? Container orchestration programs—Kubernetes [2]Mesosphere Marathon [3], and Docker Swarm [4]—make it possible to manage containers without tearing your hair out.

Before jumping into those, let's review the basics. Containers, according to 451 Research [5], are the fastest growing cloud-enabling technology. The reason for their appeal is that they use far fewer system resources than do virtual machines [6] (VMs). After all, a VM runs not merely an operating system, but also a virtual copy of all the hardware that the OS needs to run. In contrast, containers demand just enough operating system and system resources for an application instance to run.