- Deploying Services and Pods
- DC/OS Services
- Catalog Package Repository
- Granting Access to Services and Groups
- Marathon Placement Constraints
- Monitoring Services
- Scaling a Service
- Service Endpoints
- Service Ports
- Updating a User-Created Service
- Using a Private Docker Registry
- Deployments
- Exposing a Service
- Uninstalling Services
- Package Management API
- Using Custom Marathon
- Marathon API
- Using Containerizers
- Pods
- Multi-Tenancy Primitives
- Using GPUs
- Frequently Asked Questions
Deploying Services and Pods
Using Marathon to manage your processes and services
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 CLIdcos package install <package-name>
command.
Installing Services
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
Understanding Marathon task categories
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 Services
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
Providing access to a private Docker registry
Deployments
Deploying multiple Marathon applications
Exposing a Service
Launching a service with a Marathon app definition
Uninstalling Services
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
Adding Graphics Processing Units to your long-running DC/OS services
Frequently Asked Questions
Frequently asked questions about deploying Marathon services