Tom is absolutely correct--you also need to ensure that your "special tasks" run as a user which is assigned a role w/ a special reservation to ensure they can always launch.
On Tue, Jan 6, 2015 at 2:38 PM, Tom Arnfeld <[email protected]> wrote: > I'm not sure if I'm fully aware of the use case but if you use a different > framework (aka Marathon) to launch these services, should the service die > and need to be re-launched (or even the slave restarts) could you not be in > a position where another framework has consumed all resources on that slave > and your "core" tasks cannot launch? > > Maybe if you're just using Marathon it might provide a sort of priority to > decide who gets what resources first, but with multiple frameworks you > might need to look into the slave resource reservations and framework roles. > > FWIW We're configuring these things out of band (via Chef to be specific). > > Hope this helps! > > -- > > Tom Arnfeld > Developer // DueDil > > (+44) 7525940046 > 25 Christopher Street, London, EC2A 2BS > > > On Tue, Jan 6, 2015 at 9:05 AM, Itamar Ostricher <[email protected]> > wrote: > >> Hi, >> >> I was wondering if the best approach to do what I want is to use mesos >> itself, or other Linux system tools. >> >> There are a bunch of services that our framework assumes are running on >> all participating slaves (e.g. logging service, data-bridge service, etc.). >> One approach to do that is in the infrastructure level, making sure that >> slave nodes are configured correctly (e.g. with pre-configured images, or >> other provisioning systems). >> Another approach would be to use mesos itself (maybe with something like >> Marathon) to schedule these services on all slave nodes. >> >> The advantage of the mesos-based approach is that it becomes trivial to >> account for the resource consumption of said services (e.g. make sure >> there's always at least 1 CPU dedicated to this). >> I'm not sure how to achieve something similar with the system-approach. >> >> Anyone has any insights on this? >> > >

