Boot Sequence
Understanding the DC/OS component services boot sequence
During installation, the DC/OS component services all start in parallel. They then 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
- Polls
- 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 ZooKeeper or the local
mesos-master
) - Polls leading Mesos Master for cluster state
- Discovers leading Mesos Master (from ZooKeeper or the local
- 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
- Polls
- 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 is complete, you can install DC/OS services. You can install the services through DC/OS package management, either from the Mesosphere Catalog 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
More information
For more information about tasks and services, see Distributed Process Management.