Containers offer enormous flexibility and speed in application deployments, but there are challenges with them....
By submitting your personal information, you agree that TechTarget and its partners may contact you regarding relevant content, products and special offers.
Adding hundreds or even thousands of virtualized entities to any local, remote or cloud environment carries significant management hurdles. Organizing, tracking and monitoring large numbers of virtual container instances demands careful attention to orchestration and automation.
Generally, organizations add a pool of available virtual or bare-metal servers -- called a cluster -- to container management tools. The tools then organize, provision, deploy and monitor containers on that pool of servers -- called scheduling. A more comprehensive container orchestration framework might also handle networking connections between containers across different servers and provide functionality such as load balancing, network name resolution for each container, container code updating and so on. There are several important container management tools to consider.
Kubernetes is perhaps the best-known open source container automation, scaling and management tool for containerized workloads. Kubernetes is supported by major cloud providers, like Microsoft Azure and Google Cloud Platform, and allows the containers that constitute an application to be grouped into logical units -- called pods -- for simpler discovery and management.
Docker Compose and Swarm
Docker offers several container management tools, including Docker Compose (to define multicontainer applications) and Docker Swarm (to organize and manage containers across multiple host systems). Compose and Swarm are typically used together to implement a container orchestration platform for the business and are supported on public clouds, like Azure.
Test your knowledge of Docker components and services by taking this quiz.
Apache Mesos is an open source orchestration and management platform that offers strong resource isolation, high scalability and availability, support for launching Docker and appc containers and versatile scheduling policies. Mesos runs on Linux, OS X and Windows and is cloud provider-agnostic.
Google Container Engine
Consider the services included with outside offerings. For example, Google Container Engine (GKE) provides a container cluster manager and orchestration system for running Docker containers through Kubernetes in GKE.
Deis builds on Kubernetes to provide an open source platform capable of managing applications in Docker containers. Deis has been adopted by Microsoft and will probably appear as a native Azure service in the future.
In addition, Amazon EC2 Container Service (Amazon ECS) is a scalable container management service that supports Docker containers and allows workloads to run on a managed cluster of Amazon EC2 instances.
Red Hat OpenShift
The Red Hat OpenShift container platform uses Kubernetes for automated container orchestration and management, with features including service discovery, policy-based scheduling, container health monitoring, automatic scaling and so on. OpenShift includes a container image registry and allows image updates and rollbacks that support build automation for DevOps.
Finally, there are numerous third-party container management tools, like Apcera, that offer an enterprise-class container engine along with container workflow, orchestration, scheduling, storage and networking capabilities.
Navigate Docker's orchestration approach
Compare ECS to other orchestration tools
Learn about CoreOS container orchestration tools
Dig Deeper on Application virtualization
Related Q&A from Stephen J. Bigelow
Photon OS optimizes VMware Photon platform deployment, not only in vSphere but in GCE, EC2 and more. Follow these steps to learn how to run Photon OS...continue reading
Performance problems can be caused by a number of things, including overprovisioning and poor vCPU selection and assignment to VMs. Use these ...continue reading
Think about what types of workloads are running on a VM before assigning compute resources, and consider using vCPUs from different cores for ...continue reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.