Uploaded image for project: 'Mesos'
  1. Mesos
  2. MESOS-1718

Command executor can overcommit the agent.

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Accepted
    • Critical
    • Resolution: Unresolved
    • None
    • None
    • agent
    • Twitter Mesos Q4 Sprint 3, Twitter Mesos Q4 Sprint 4, Twitter Mesos Q4 Sprint 5, Twitter Mesos Q4 Sprint 6
    • 3

    Description

      Currently we give a small amount of resources to the command executor, in addition to resources used by the command task:

      https://github.com/apache/mesos/blob/0.20.0-rc1/src/slave/slave.cpp#L2448

      ExecutorInfo Slave::getExecutorInfo(
          const FrameworkID& frameworkId,
          const TaskInfo& task)
      {
        ...
          // Add an allowance for the command executor. This does lead to a
          // small overcommit of resources.
          executor.mutable_resources()->MergeFrom(
              Resources::parse(
                "cpus:" + stringify(DEFAULT_EXECUTOR_CPUS) + ";" +
                "mem:" + stringify(DEFAULT_EXECUTOR_MEM.megabytes())).get());
        ...
      }
      

      This leads to an overcommit of the slave. Ideally, for command tasks we can "transfer" all of the task resources to the executor at the slave / isolation level.

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              bmahler Benjamin Mahler
              Benjamin Mahler Benjamin Mahler
              Votes:
              1 Vote for this issue
              Watchers:
              16 Start watching this issue

              Dates

                Created:
                Updated: