DC/OS uses Marathon to manage your processes and services.
Marathon is the “init system” for DC/OS. Marathon starts and monitors your applications and services, automatically healing failures.
A native Marathon instance is installed as a part of DC/OS installation. After DC/OS has started, you can manage the native Marathon instance through the DC/OS CLI with the dcos marathon
command.
DC/OS services are Marathon applications that are deployed on DC/OS. DC/OS services are available from a package repository, such as the Mesosphere Catalog, or you can create your own.
DC/OS Services
You can run DC/OS services you create or install a package from the Catalog. Both the services you create and those you install from Catalog appear on the Services tab of the DC/OS web interface when they are running.
Services you create yourself are administered by Marathon and can be configured and run from the DC/OS CLI with dcos marathon
subcommands (e.g. dcos marathon app add <myapp>.json
) or via the DC/OS web interface.
Catalog Package Repository
Packaged DC/OS services created by Mesosphere or the community, like Spark or Kafka, appear on the Catalog tab of the DC/OS web interface, or you can search for a package from the DC/OS CLI. You can configure and run Catalog services from the DC/OS web interface or via the DC/OS CLI with the dcos package install <package-name>
command.
Installing Services
Installing and verifying a service using the CLI or the UI…Read More
Marathon Configuration Reference
Understanding Marathon application definitions…Read More
Creating Services
Defining a DC/OS service using Marathon…Read More
Task Handling
Understanding Marathon task categories…Read More
Configuring Services
Using the DC/OS CLI to configure services…Read More
Fault Domain Awareness and Capacity Extension
ENTERPRISE
Understanding fault domains…Read More
Granting Access to Services and Groups
ENTERPRISE
Implementing fine-grained user access to services using the web interface or the CLI…Read More
Marathon Placement Constraints
Understanding Marathon placement constraints…Read More
Monitoring Services
Monitoring deployed DC/OS services from the CLI and UI…Read More
Scaling a Service
Scaling a service using the UI and the CLI…Read More
Service Endpoints
Using endpoints with containerized services…Read More
Service Ports
Using Virtual IPs to manage service ports…Read More
Updating a User-Created Service
Updating the configuration of a deployed app…Read More
Using a Private Docker Registry
Creating an archive for a private Docker registry…Read More
Deployments
Deploying multiple Marathon applications…Read More
Exposing a Service
Launching a service with a Marathon app definition…Read More
Uninstalling Services
Uninstalling DC/OS services from the CLI…Read More
Package Management API
ENTERPRISE
Installing DC/OS services using the Package Management API…Read More
Using Custom Marathon
ENTERPRISE
Deploying non-native instances of Marathon…Read More
Marathon API
ENTERPRISE
Using the Marathon API to manage long-running containerized services…Read More
Using Containerizers
Using containerizers with Docker Engine and Universal Container Runtime…Read More
Pods
Using pods to share group resources…Read More
Multi-Tenancy Primitives
A primer to Multi-Tenancy in DC/OS…Read More
Using GPUs
Adding Graphics Processing Units to your long-running DC/OS services…Read More
Frequently Asked Questions
Frequently asked questions about deploying Marathon services…Read More