Apache Mesos 0.27.0 Released
mesos.apache.org
mesos.apache.org
How does it compare to Yarn, particularly in a production perspective? Is it stable, easy to integrate?
We are currently thinking to switch from a Kafka-Spark(on Yarn)-Mongo stack to a SMACK stack (Spark, Mesos, Akka, Cassandra, Kafka)[1]. It seems that there is a good integration between theses projects. Also you can run Docker on Mesos using Marathon[2] so not only our data-driven stack could be on Mesos but the full stack.
[1] https://mesosphere.com/blog/2015/07/24/learn-everything-you-...
I use Mesos in production and it is great stuff. It also helps knowing 100% of the backend of Siri, 100% of Twitter, much of eBay, PayPal, Airbnb, Uber, etc all run entirely on mesos. It is simply battle tested.
Caveat: We only use it to run state-less applications. Applications like Kafka that require data persistence are run outside Mesos as data persistance is not yet handled reliably with Marathon.
[1] http://datajet.io/One-year-with-Apache-Mesos-The-Good-The-Ba...
Have you considered using some other tool there? I know there is a Kubernetes target for it. Of course, any non-GCE port of Kubernetes is in likely need of sponsorship/love. And of course, Kubernetes currently introduces some additional network overhead.
Still, it might be helpful there for handling problems like getting persistent storage mixed in.
If you're interested in getting involved in Kubernetes-on-something-else, we'd love to hear from you. Drop by Slack at slack.k8s.io!
Can I run more than 1 cluster per account AZ without a silent but very nasty failure condition where both clusters become wedged?
I have stuff in production on it and I need to take it down because the entire cluster is unreliable. Mostly because there are frustrating bugs in disk space management that hurt clusters.
I really like Kubernetes and you can see I've carried water for it here. I've been trying to tie it to mbrace because thatz be a nice cloud portability. But I'm much more impressed with the GCE experience than the AWS experience.
https://github.com/mesos/kafka
Mesos supports persistent volumes and what they call "dynamic reservations", which this framework supports. If the application is killed, and the host is still up, it will be restarted on the same host and re-attached to the volume which has the data, otherwise, kafka will just replicate to the new broker (as it does).
The initial code for adding the dynamic reservation bits was added last November as it is a relatively new feature in Mesos:
We ended up abandoning mesos just to get our prototype going.
Clicking the logo works and gets you to the project's actual front page (http://mesos.apache.org/), which has a decent description:
Apache Mesos abstracts CPU, memory, storage, and other compute resources away from machines (physical or virtual), enabling fault-tolerant and elastic distributed systems to easily be built and run effectively.
That's still pretty abstract of course, but at least it's attempting to answer "what is Mesos?" first thing on the page.
http://www.wired.com/2013/03/google-borg-twitter-mesos/
It was this article that helped me convince my coworkers that we should look into Mesos
That sounds to me like something everyone would care about. I have started setting Docker's log-opt to max-size=128m and max-file=3 expressly to side-step that kind of nonsense. It's a great happy medium between "logs go out over the network", which impedes one's ability to use "docker log" for quick-and-dirty viewing, but not blowing out the disks. We've enjoyed great success with logspout, since it captures every container, relieving us of the need to configure them individually.