Need advice about which tool to choose?Ask the StackShare community!

Consul

1.1K
1.5K
+ 1
212
Marathon

84
91
+ 1
5
Add tool

Consul vs Marathon: What are the differences?

What is Consul? A tool for service discovery, monitoring and configuration. Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable.

What is Marathon? Deploy and manage containers (including Docker) on top of Apache Mesos at scale. Marathon is an Apache Mesos framework for container orchestration. Marathon provides a REST API for starting, stopping, and scaling applications. Marathon is written in Scala and can run in highly-available mode by running multiple copies. The state of running tasks gets stored in the Mesos state abstraction.

Consul belongs to "Open Source Service Discovery" category of the tech stack, while Marathon can be primarily classified under "Container Tools".

Consul and Marathon are both open source tools. It seems that Consul with 16.4K GitHub stars and 2.85K forks on GitHub has more adoption than Marathon with 3.87K GitHub stars and 875 GitHub forks.

Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Consul
Pros of Marathon
  • 61
    Great service discovery infrastructure
  • 35
    Health checking
  • 29
    Distributed key-value store
  • 26
    Monitoring
  • 23
    High-availability
  • 12
    Web-UI
  • 10
    Token-based acls
  • 6
    Gossip clustering
  • 5
    Dns server
  • 4
    Not Java
  • 1
    Docker integration
  • 1
    High Availability
  • 1
    Powerful UI
  • 1
    Service Discovery
  • 1
    Load Balancing
  • 1
    Health Checks

Sign up to add or upvote prosMake informed product decisions

What is Consul?

Consul is a tool for service discovery and configuration. Consul is distributed, highly available, and extremely scalable.

What is Marathon?

Marathon is an Apache Mesos framework for container orchestration. Marathon provides a REST API for starting, stopping, and scaling applications. Marathon is written in Scala and can run in highly-available mode by running multiple copies. The state of running tasks gets stored in the Mesos state abstraction.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Consul?
What companies use Marathon?
See which teams inside your own company are using Consul or Marathon.
Sign up for StackShare EnterpriseLearn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Consul?
What tools integrate with Marathon?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

What are some alternatives to Consul and Marathon?
etcd
etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. Itโ€™s open-source and available on GitHub. etcd gracefully handles master elections during network partitions and will tolerate machine failure, including the master.
Zookeeper
A centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. All of these kinds of services are used in some form or another by distributed applications.
SkyDNS
SkyDNS is a distributed service for announcement and discovery of services. It leverages Raft for high-availability and consensus, and utilizes DNS queries to discover available services. This is done by leveraging SRV records in DNS, with special meaning given to subdomains, priorities and weights (more info here: http://blog.gopheracademy.com/skydns).
Ambassador
Map services to arbitrary URLs in a single, declarative YAML file. Configure routes with CORS support, circuit breakers, timeouts, and more. Replace your Kubernetes ingress controller. Route gRPC, WebSockets, or HTTP.
Kubernetes
Kubernetes is an open source orchestration system for Docker containers. It handles scheduling onto nodes in a compute cluster and actively manages workloads to ensure that their state matches the users declared intentions.
See all alternatives