How does Docker interact with Apache Mesos

The Docker ecosystem: an overview of the most popular Docker tools

DC / OS uses the distributed system kernel of the Mesos platform. This enables the resources of an entire data center to be bundled and managed in the form of an aggregated system like a single logical server. You can control entire clusters of physical or virtual machines with the same ease with which you operate a single computer.

The software simplifies installation and Distributed Application Management and automates tasks such as resource management, scheduling and inter-process communication. A cluster based on Mesosphere DC / OS as well as all services executed on it are managed centrally via a command line program (CLI) or a web interface (GUI).

DC / OS abstracts the resources of the cluster and provides common services such as service discovery or package management. The core components of the software run in a protected area - the Kernel space. This includes master and agent programs of the Mesos platform, which are responsible for resource allocation, process isolation and security functions.

  • Mesos Master: The Mesos master is a master process that runs on a master node in the cluster. The task of the Mesos master is to control the resource management and to orchestrate tasks (abstract work units) that are executed on an agent node. For this purpose, the Mesos master distributes resources to registered DC / OS services and receives resource reports from Mesos agents.
  • Mesos Agents: Mesos agents are slave processes that run on agent accounts and are responsible for executing the tasks distributed by the master. Mesos agents provide the Mesos master with regular reports on the resources available in the cluster. These are forwarded by the Mesos master to a scheduler (e.g. Marathon, Chronos or Cassandra). This decides which task is executed on which node. To execute a task, the Mesos agent starts a so-called executor process, which is executed and managed in isolation in a container. The processes are separated either via the Mesos Universal Container Runtime or the Docker container platform.

All other system components as well as applications that are executed by Mesos agents via executor run in User space. The basic components of a standard DC / OS installation include the admin router, the Mesos DNS, a distributed DNS proxy, the load balancer Minuteman, the scheduler Marathon, Apache ZooKeeper and Exhibitor.

  • Admin router: The admin router is a specially configured web server based on NGINX that provides DC / OS services as well as central authentication and proxy functions.
  • Mesos DNA: The Mesos-DNS system component offers service discovery functions that enable the individual services and applications in the cluster to identify each other via a central domain name system (DNS).
  • Distributed DNS proxy: The distributed DNS proxy is an internal DNS dispatcher.
  • Minuteman: The Minuteman system component acts as an internal load balancer that works on the transport level of the OSI reference model (layer 4).
  • DC / OS Marathon: Marathon is a central component of the Mesos platform, which is used in Mesosphere DC / OS as an init system (similar to systemd) acts. Marathon starts and monitors DC / OS services and applications in cluster environments. In addition, the software offers high availability functions, service discovery, load balancing, health checks and a graphical web interface.
  • Apache ZooKeeper: Apache ZooKeeper is an open source software component that provides coordination functions for the operation and control of applications in distributed systems. As part of Mesosphere DC / OS, ZooKeeper is used to coordinate all installed system services.
  • Exhibitor: Exhibitor is a system component that allows ZooKeeper to be automatically installed and configured on each master node in the cluster. In addition, Exhibitor provides a graphical user interface for ZooKeeper users.

Various workloads can be carried out simultaneously on cluster resources that have been aggregated via DC / OS. For example, the cluster operating system enables the parallel operation of big data systems, microservices or container platforms such as Hadoop, Spark and Docker.

With Mesosphere Universe stands for DC / OS public app catalog to disposal. You can use this to install applications such as Spark, Cassandra, Chronos, Jenkins or Kafka conveniently with one click via the graphical user interface.