Boot Sequence

During installation, the DC/OS component services are all started in parallel but initialize and become responsive in a relatively consistent sequence because of interdependencies.

The DC/OS Diagnostics service monitors component service and node health. A node is marked as healthy when all its component services are healthy.

Master nodes

The following is the boot sequence of DC/OS component services on each master node.

DC/OS Diagnostics starts

Polls systemd for component status

Reports node unhealthy until all components (systemd services) are healthy

Reports cluster unhealthy until all master nodes are healthy

Exhibitor starts

Creates ZooKeeper configuration and launches ZooKeeper

Mesos Master starts

Registers with local ZooKeeper

Discovers other Mesos Masters from ZooKeeper

Elects a leading master

Mesos-DNS starts

Discovers leading Mesos Master (from zk or local mesos-master?)

Polls leading Mesos Master for cluster state

Networking components start

Forwards DNS lookups to Mesos-DNS

Initializes VIP translation

Initializes overlay network

Container orchestration components start

Registers with local ZooKeeper

Elects a leading master

Discovers leading Mesos Master from Mesos-DNS

Leader registers with leading Mesos Master

Logging and Metrics components start

Security components start

Admin Router starts

Discovers leading Mesos Master from Mesos-DNS

Discovers leading Marathon from Mesos-DNS

Redirects unauthorized traffic to authentication components

Proxies API and GUI traffic to discovered components

Proxies admin service traffic to DC/OS services

Serves DC/OS GUI

Agent nodes

The following is the boot sequence of DC/OS components on each agent node.

DC/OS Diagnostics starts

Polls systemd for component status

Reports node unhealthy until all components (systemd services) are healthy

Mesos Agent starts

Discovers leading Mesos Master from ZooKeeper

Registers with leading Mesos Master

Leading Mesos Master connects to the new agent using registered agent IP

Leading Mesos Master starts offering the new agent’s resources to schedulers for new tasks

New DC/OS node become visible in the DC/OS API, GUI, and CLI

Networking components start

Forwards DNS lookups to Mesos-DNS

Initializes VIP translation

Initializes overlay network

Logging and Metrics components start

Admin Router Agent starts

Discovers leading Mesos Master from Mesos-DNS

Proxies internal API traffic to discovered components

Services

After DC/OS installation and initialization completes, you can install DC/OS services. Services can be installed through DC/OS package management from the Mesosphere Universe or through Marathon directly.

The following is the boot sequence of a DC/OS service.

Leading Mesos Master offers agent node resources to Marathon

Leading Marathon schedules the service onto agent nodes with sufficient resources

Mesos Agent starts the service as one or more containerized tasks

Scheduler Services

Some DC/OS services are also schedulers that interact with DC/OS to manage tasks.

The following is the boot sequence of a DC/OS scheduler service.

Leading Mesos Master offers agent node resources to Marathon

Leading Marathon schedules the service onto agent nodes with sufficient resources

Mesos Agent starts the service as one or more containerized tasks

Scheduler service discovers leading Mesos Master from Mesos-DNS

Scheduler service registers with leading Mesos Master

Leading Mesos Master starts offering agent node resources to the new scheduler service