Organizations typically use container orchestration tools -- sometimes called orchestration engines -- to deploy, scale and connect different components of container technology. These orchestration tools also help organizations monitor container instances to mitigate container sprawl across the enterprise.
Docker is one of the most recognized and popular container orchestration engines, allowing software developers to package and deploy entire applications, and their dependencies, in a single image that can run on Linux systems. Docker also provides tools such as Docker Machine to create new Docker hosts, Docker Compose to assemble complex distributed applications, and Docker Swarm to support container clusters for resilient and scalable container-based computing
Google Kubernetes is an open source container orchestration engine that supports Docker containers. Kubernetes deploys and manages containers within compute clusters, and performs workload balancing to maintain performance.
Apache Mesos is another open source container orchestration engine. It focuses on fault-tolerant, large-scale compute clusters and supports tens of thousands of nodes running Docker containers. Mesos also supports the concept of jobs and tasks, as well as dynamic and highly scalable container environments. Organizations frequently use Mesos with job systems like Marathon for running jobs and tasks.
OpenStack users can select any of these three container orchestration engines. The selected engine is automatically provisioned to the host systems where the constituent containers are deployed.
New Docker orchestration tools address scalability
A comprehensive guide to Docker container technology
Where to find OpenStack development support