Deploying Services and Pods
Using 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 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 with subcommands (e.g. ) 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 command.
Installing and verifying a service using the CLI or the UI
Marathon Configuration Reference
Understanding Marathon application definitions
Creating Services
Defining a DC/OS service using Marathon
Task Handling
Configuring Services
Using the DC/OS CLI to configure services
Fault Domain Awareness and Capacity Extension
ENTERPRISE
Understanding fault domains
Granting Access to Services and Groups
ENTERPRISE
Implementing fine-grained user access to services using the web interface or the CLI
Marathon Placement Constraints
Understanding Marathon placement constraints
Monitoring deployed DC/OS services from the CLI and UI
Scaling a Service
Scaling a service using the UI and the CLI
Service Endpoints
Using endpoints with containerized services
Service Ports
Using Virtual IPs to manage service ports
Updating a User-Created Service
Updating the configuration of a deployed app
Using a Private Docker Registry
Deployments
Deploying multiple Marathon applications
Exposing a Service
Launching a service with a Marathon app definition
Uninstalling DC/OS services from the CLI
Package Management API
ENTERPRISE
Installing DC/OS services using the Package Management API
Using Custom Marathon
ENTERPRISE
Deploying non-native instances of Marathon
Marathon API
ENTERPRISE
Using the Marathon API to manage long-running containerized services
Using Containerizers
Using containerizers with Docker Engine and Universal Container Runtime
Pods
Using pods to share group resources
Multi-Tenancy Primitives
A primer to Multi-Tenancy in DC/OS
Using GPUs
Frequently asked questions about deploying Marathon services