Closed pwang7 closed 10 years ago
If you're asking about using Mesos with lxc (or cgroups) vs Docker, you need to explicitly tell the Mesos slave to use an external containizer (e.g. Deimos).
After installed Deimos, it seems that Mesos slaves run all jobs inside docker. So my question is with Deimos installed, can I choose to run some jobs inside docker and others without docker (say, with cgroups)?
If the Mesos slave is not configured to use external isolation and provided with the path to Deimos (and by extension made aware of Docker), it will not (more accurately cannot) use Docker containers.
--isolation=VALUE Isolation mechanisms to use, e.g., 'posix/cpu,posix/mem'
or 'cgroups/cpu,cgroups/mem' or 'external'. (default: posix/cpu,posix/mem)
--containerizer_path=VALUE The path to the external containerizer executable used when
external isolation is activated (--isolation=external).
@pwang7 At present, you can run them all with Deimos -- or all not. We've experimented with a "non-containerizer" (container.image
would be non:///
) in Deimos to allow it but this code is not in master.
@solidsnack That's exactly what I'm looking for. Thanks!
Another question, can I still use Chronos to run job with Deimos installed and mesos slave using external isolation?
All Chronos tasks will run in Deimos, too -- the scheduler doesn't need to understand anything about the containerizer. They're at different layers.
If I installed deimos on mesos slaves, can I still use the mesos default shell executor? If so, how to specify which executor to use? Thanks!