}}

Components

Enterprise DC/OS Updated: July 13, 2017

DC/OS is comprised of many individual open source components that are precisely configured to work together.

You can log into any host in the DC/OS cluster and view the currently running services by inspecting the /etc/systemd/system/dcos.target.wants/ directory.

You can view the DC/OS component details in the https://github.com/dcos/dcos/ repo in the packages directory.

Component Description
Admin Router Agent This component (dcos-adminrouter-agent) is a high performance web server and a reverse proxy server that lists all of the agent nodes in your cluster.
Admin Router Master This component is a high performance web server and a reverse proxy server that lists all of the master nodes in your cluster.
Admin Router Reloader This component dcos-adminrouter-reload.service restarts the Admin Router Nginx server so that it can pick up new DNS resolutions, for example master.mesos and leader.mesos.
Admin Router Reloader Timer This component dcos-adminrouter-reload.timer sets the Admin Router Reloader interval at once per hour.
Admin Router Service This component is an open-source Nginx configuration created by Mesosphere that provides central authentication and proxy to DC/OS services within the cluster. The Admin Router service dcos-adminrouter.service is the core internal load balancer for DC/OS. Admin Router is a customized Nginx that proxies all of the internal services on port 80.
Certificate Authority This component dcos-ca.service is the DC/OS Certificate Authority feature. For more information, see the documentation.
Cluster ID The cluster-id service generates a universally unique identifier (UUID) for each cluster. We use this ID to track cluster health remotely (if enabled). This remote tracking allows our support team to better assist our customers.
Diagnostics This component dcos-3dt.service is the diagnostics utility for DC/OS systemd components. This service runs on every host, tracking the internal state of the systemd unit. The service runs in two modes, with or without the -pull argument. If running on a master host, it executes /opt/mesosphere/bin/3dt -pull which queries Mesos-DNS for a list of known masters in the cluster, then queries a master (usually itself) :5050/statesummary and gets a list of agents.

From this complete list of cluster hosts, it queries all 3DT health endpoints :/system/health/v1. This endpoint returns health state for the DC/OS systemd units on that host. The master 3DT processes, along with doing this aggregation also expose /system/health/v1 endpoints to feed this data by unit or node IP to the DC/OS user interface.

Diagnostics socket This component dcos-3dt.socket is the DC/OS Distributed Diagnostics Tool master API and aggregation socket.
DNS Dispatcher This component dcos-spartan.service is an RFC5625 Compliant DNS Forwarder. It's job is to dual-dispatch DNS to multiple upstream resolvers, and to route DNS to the upstreams or Mesos DNS, depending on some rules.
DNS Dispatcher Watchdog This component (dcos-spartan-watchdog.service) ensures that the DNS Dispatcher is running and healthy. If the DNS Dispatcher is unhealthy, this watchdog service kills it.
DNS Dispatcher Watchdog Timer This component dcos-spartan-watchdog.timer wakes up the DNS Dispatcher Watchdog every 5 minutes, to see if DC/OS needs to restart DNS Dispatcher.
Downloads Service This component (dcos-download.service) downloads the DC/OS installation tarball on first boot.
Erlang Port Mapping Daemon This component dcos-epmd.service supports the internal DC/OS layer 4 load balancer that is called Minuteman.
Exhibitor This component dcos-exhibitor.service is the Exhibitor supervisor for Zookeeper. DC/OS uses Exhibitor, a project originally from Netflix, to manage and automate the deployment of ZooKeeper.
Generate resolv.conf This component dcos-gen-resolvconf.service dynamically provisions /etc/resolv.conf so that each cluster host can use Mesos-DNS to resolve task names to the IP and port addresses.
Generate resolv.conf Timer This component dcos-gen-resolvconf.timer periodically updates the systemd-resolved for Mesos DNS.
History Service

This component dcos-history-service.service enables the DC/OS UI to display cluster usage statistics and stores the dashboard graph data for the UI. This data is stored on disk for 24 hours. Along with storing this data, the history service also exposes a HTTP API for the DC/OS user interface to query. All DC/OS cluster stats which involve memory, CPU, and disk usage are driven by this service.

Without access to the History service, the UI will restart the graph timeline each time that a user opens the Dashboard tab in the UI. With access to the History service, the UI will show historical data, up to 60s prior, in the graph timeline.

Identity and Access Management This component dcos-bouncer.service is the DC/OS Identity and Access Management feature. For more information, see the documentation.
Job This component dcos-metronome.service/ powers the DC/OS Jobs feature. For more information, see the documentation.
Layer 4 Load Balancer This component dcos-minuteman.service, also known as Minuteman, is the DC/OS Layer 4 Load Balancer that enables multi-tier microservices architectures. For more information, see the documentation.
Logrotate Mesos Master This component dcos-logrotate-master.service automatically manages compression, removal, and mailing of log files for Mesos master processes. This ensures DC/OS services don't overload cluster hosts with too much log data on disk.
Logrotate Mesos Slave This component dcos-logrotate-agent.service/ automatically rotates Mesos agent log files for agent nodes.
Logrotate Timer These components dcos-logrotate-agent.timer and dcos-logrotate-master.timer set the logrotate interval at 2 minutes.
Marathon This component dcos-marathon.service is the DC/OS Marathon instance which starts and monitors DC/OS applications and services.
Mesos Agent This component dcos-mesos-slave.service is the mesos-slave process for private agent nodes.
Mesos Agent Public This component dcos-mesos-slave-public.service is the mesos-slave process for public agent nodes.
Mesos DNS This component dcos-mesos-dns.service provides service discovery within the cluster. Mesos-DNS is the internal DNS service dcos-mesos-dns.service for the DC/OS cluster. Mesos-DNS provides the namespace $service.mesos to all cluster hosts. For example, you can login to your leading mesos master with ssh leader.mesos.
Mesos Master This component dcos-mesos-master.service is the mesos-master process that orchestrates agent tasks.
Mesos Persistent Volume Discovery This component dcos-vol-discovery-pub-agent.service connects to existing Mesos volume mounts on agent nodes during installation. For more information on Mesos Persistent Volumes, see the documentation.
Network Metrics Aggregator This component dcos-networking_api.service provides the DC/OS Network Metrics Aggregation Service and API. For more information, see the documentation.
Package service This component dcos-cosmos.service is the internal packaging API service. This service is accessed every time that you run dcos package install from the CLI. This API deploys DC/OS packages from the DC/OS Universe to your DC/OS cluster.
REX-Ray This component (dcos-rexray.service) is the REX-Ray storage method for enabling external persistent volumes in Marathon.
System Package Manager API This component dcos-pkgpanda-api.service provides an API for installing and uninstalling DC/OS components.
System Package Manager API socket This component dcos-pkgpanda-api.socket is the System Package Manager API socket.
Secrets Service This component dcos-secrets.service secures important values like private keys, credentials, and database passwords. For more information, see the documentation.
Signal This component dcos-signal.service sends a periodic ping back to Mesosphere with high-level cluster information to help improve DC/OS, and provides advanced monitoring of cluster issues. Signal queries the diagnostics service /system/health/v1/report endpoint on the leading master and sends this data to SegmentIO for use in tracking metrics and customer support.
Signal Timer This component dcos-signal.timer sets the Signal component interval at once per hour.
Vault This component dcos-vault.service is the storage backend for Secrets component. It manages the secure and durable processing of secrets submitted to the Secrets component.
Virtual Network Service This component dcos-navstar.service is a daemon that provides virtual networking and DNS services. It is the network overlay orchestrator. For more information, see the documentation.