3 ms·
Could you compare Diego to Mesos? On the face of it, this sounds like a similar system.
by amouat 11y ago
Could you compare Diego to Mesos? On the face of it, this sounds like a similar system.
- jacques_chester 11y agoThey're arguably symmetric. Based on my very limited understanding: Diego works by auctioning tasks/LRPs to cells, which bid based on free resources. Mesos works by auctioning free resources to tasks/LRPs, which accept or reject based on their own policies. The analogy I got from Onsi was that Diego is "demand-driven", Mesos is "supply-driven". They have different sweet spots. Diego is built to be the heart of a PaaS, so it aims for fast success or failure for accepting tasks and processes. Consumers can decide whether to build further scheduling intelligence, but Diego doesn't make it explicit. Mesos exposes some of the placement/scheduling logic back to the client explicitly. For example, if you are OK with a gigantic batch job running intermittently, Mesos can more or less do that without fuss. The job will simply wait until enough free resources are available on the cluster. This is one of the observations that drove Mesos. Whereas Diego will tell you very quickly if that capability is unavailable currently. On the flipside, Diego requires no additional configuration. It also doesn't require a central view of available resources to be maintained in order to perform placement. That said, Diego does maintain a central view of tasks and LRPs that have been placed, in order to relaunch failed ones. That said, I have sometimes been wrong about my understanding of Diego and Mesos, so YMMV.
- amouat 11y agoThanks, sounds accurate at least :)
- jacques_chester 11y agoNo worries. If you want to learn more, I can put you in touch with the Diego or Lattice teams. I should also note in passing that Diego can place and manage Docker containers, Windows .NET apps and classic buildpack-staged apps, with the architectural flexibility to extend to more kinds of managed resources (eg, with the right backend, it could manage unikernel apps). That alone sets it apart from the pack.
- lifty 11y agoI think Nomad aims to be similarly flexible in the type of resources it can manage.
- jacques_chester 11y agoYes, in a different way. Diego pushes the question of the underlying runtime environment down to Garden, so if you add a backend, Diego can drive it.