Container technology is the talk of the town throughout IT. These compelling alternatives to conventional hypervisor-based virtualization are especially useful in the data center for environments that must spin up a large number of duplicate virtual machines on the same server. And in the cloud, containers allow applications to move between platforms, without the need for significant rework.
With more cloud vendors throwing their support behind container technologies such as Docker, there are many container platforms to choose from. And while each platform works in a similar fashion, enterprises need to consider certain selection criteria.
First, select a container platform that suits the server's underlying operating system. Each container, and the application within it, shares the kernel of the server's host OS. Therefore, an organization must select a container designed for its specific OS. For example, if you plan to deploy Linux applications, consider a container platform such as Docker, Linux-VServer, Google's Let Me Contain That For You, LXC, OpenVZ or Odin's Virtuozzo.
Cloud providers support several container platforms, but Docker is one of, if not the, most popular. Cloud vendors including Joyent, Amazon Web Services and Microsoft support Docker. Meanwhile, Google's Container Engine service is based on the open source Kubernetes platform that also runs Docker containers.
However, there are other container platforms that cater to particular operating system kernels, such as Ubuntu 15.04, which has lightweight kernel and LXD updates that can run in Amazon's Elastic Compute Cloud.
While container platforms operate similarly, they offer different features and functionality. To ensure a container platform meets your needs, evaluate its features, including basic virtualization capabilities such as file system isolation, network isolation and root privilege isolation. Also consider resource management features, such as processor, memory, I/O and storage quotas or limits. Additional platform features may include copy-on-write optimization, live migration or nested virtualization.
Finally, consider the container platform's licensing model and costs. Container software is typically released under Apache License 2.0, GNU General Public License or BSD licenses -- all of which are fundamentally free of licensing fees. However, some UNIX and Windows containers, such as WPARs and Sandboxie, have proprietary licenses that can include a fee. Regardless of the license, enterprises can incur additional costs for product support.
Stephen J. Bigelow is the senior technology editor of the Data Center and Virtualization Media Group. He can be reached at [email protected].
Three apps best suited for Docker
The challenges for securing Docker container data
Docker addresses scalability with orchestration tools
Choose the right container platform