You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by ji...@apache.org on 2016/09/17 00:39:09 UTC

[1/3] mesos git commit: Marked the nvidia gpu isolator as nesting aware.

Repository: mesos
Updated Branches:
  refs/heads/master 45fea2107 -> 67d8518e5


Marked the nvidia gpu isolator as nesting aware.

Review: https://reviews.apache.org/r/51977


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/67d8518e
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/67d8518e
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/67d8518e

Branch: refs/heads/master
Commit: 67d8518e5afee5e72495dc80711e4f0300597f30
Parents: 6280e16
Author: Jie Yu <yu...@gmail.com>
Authored: Fri Sep 16 15:13:08 2016 -0700
Committer: Jie Yu <yu...@gmail.com>
Committed: Fri Sep 16 17:38:59 2016 -0700

----------------------------------------------------------------------
 src/slave/containerizer/mesos/isolators/gpu/isolator.cpp | 6 ++++++
 src/slave/containerizer/mesos/isolators/gpu/isolator.hpp | 2 ++
 2 files changed, 8 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/67d8518e/src/slave/containerizer/mesos/isolators/gpu/isolator.cpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/isolators/gpu/isolator.cpp b/src/slave/containerizer/mesos/isolators/gpu/isolator.cpp
index 528c8ea..e3756c9 100644
--- a/src/slave/containerizer/mesos/isolators/gpu/isolator.cpp
+++ b/src/slave/containerizer/mesos/isolators/gpu/isolator.cpp
@@ -182,6 +182,12 @@ Try<Isolator*> NvidiaGpuIsolatorProcess::create(
 }
 
 
+bool NvidiaGpuIsolatorProcess::supportsNesting()
+{
+  return true;
+}
+
+
 Future<Nothing> NvidiaGpuIsolatorProcess::recover(
     const list<ContainerState>& states,
     const hashset<ContainerID>& orphans)

http://git-wip-us.apache.org/repos/asf/mesos/blob/67d8518e/src/slave/containerizer/mesos/isolators/gpu/isolator.hpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/isolators/gpu/isolator.hpp b/src/slave/containerizer/mesos/isolators/gpu/isolator.hpp
index d94f6cf..cd79033 100644
--- a/src/slave/containerizer/mesos/isolators/gpu/isolator.hpp
+++ b/src/slave/containerizer/mesos/isolators/gpu/isolator.hpp
@@ -83,6 +83,8 @@ public:
       const Flags& flags,
       const NvidiaComponents& components);
 
+  virtual bool supportsNesting();
+
   virtual process::Future<Nothing> recover(
       const std::list<mesos::slave::ContainerState>& states,
       const hashset<ContainerID>& orphans);


[2/3] mesos git commit: Marked cgroups isolator as nesting aware.

Posted by ji...@apache.org.
Marked cgroups isolator as nesting aware.

Review: https://reviews.apache.org/r/51976


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/6280e160
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/6280e160
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/6280e160

Branch: refs/heads/master
Commit: 6280e160f10e4f90279d2946dabcf7650d16b7ac
Parents: aaa574e
Author: Jie Yu <yu...@gmail.com>
Authored: Fri Sep 16 15:12:03 2016 -0700
Committer: Jie Yu <yu...@gmail.com>
Committed: Fri Sep 16 17:38:59 2016 -0700

----------------------------------------------------------------------
 src/slave/containerizer/mesos/isolators/cgroups/cgroups.cpp | 6 ++++++
 src/slave/containerizer/mesos/isolators/cgroups/cgroups.hpp | 2 ++
 2 files changed, 8 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/6280e160/src/slave/containerizer/mesos/isolators/cgroups/cgroups.cpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/isolators/cgroups/cgroups.cpp b/src/slave/containerizer/mesos/isolators/cgroups/cgroups.cpp
index ecfa5db..ed7150a 100644
--- a/src/slave/containerizer/mesos/isolators/cgroups/cgroups.cpp
+++ b/src/slave/containerizer/mesos/isolators/cgroups/cgroups.cpp
@@ -140,6 +140,12 @@ Try<Isolator*> CgroupsIsolatorProcess::create(const Flags& flags)
 }
 
 
+bool CgroupsIsolatorProcess::supportsNesting()
+{
+  return true;
+}
+
+
 void CgroupsIsolatorProcess::initialize()
 {
   foreachvalue (const Owned<Subsystem>& subsystem, subsystems) {

http://git-wip-us.apache.org/repos/asf/mesos/blob/6280e160/src/slave/containerizer/mesos/isolators/cgroups/cgroups.hpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/isolators/cgroups/cgroups.hpp b/src/slave/containerizer/mesos/isolators/cgroups/cgroups.hpp
index 38d1428..cf143ee 100644
--- a/src/slave/containerizer/mesos/isolators/cgroups/cgroups.hpp
+++ b/src/slave/containerizer/mesos/isolators/cgroups/cgroups.hpp
@@ -50,6 +50,8 @@ public:
 
   virtual ~CgroupsIsolatorProcess();
 
+  virtual bool supportsNesting();
+
   virtual process::Future<Nothing> recover(
       const std::list<mesos::slave::ContainerState>& states,
       const hashset<ContainerID>& orphans);


[3/3] mesos git commit: Added a virtual function to Isolator to tell is it supports nesting.

Posted by ji...@apache.org.
Added a virtual function to Isolator to tell is it supports nesting.

Review: https://reviews.apache.org/r/51975


Project: http://git-wip-us.apache.org/repos/asf/mesos/repo
Commit: http://git-wip-us.apache.org/repos/asf/mesos/commit/aaa574ef
Tree: http://git-wip-us.apache.org/repos/asf/mesos/tree/aaa574ef
Diff: http://git-wip-us.apache.org/repos/asf/mesos/diff/aaa574ef

Branch: refs/heads/master
Commit: aaa574efbb06b945f08cde99ca253962c9ef06a5
Parents: 45fea21
Author: Jie Yu <yu...@gmail.com>
Authored: Fri Sep 16 15:07:43 2016 -0700
Committer: Jie Yu <yu...@gmail.com>
Committed: Fri Sep 16 17:38:59 2016 -0700

----------------------------------------------------------------------
 include/mesos/slave/isolator.hpp           | 8 ++++++++
 src/slave/containerizer/mesos/isolator.cpp | 6 ++++++
 src/slave/containerizer/mesos/isolator.hpp | 7 +++++++
 3 files changed, 21 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mesos/blob/aaa574ef/include/mesos/slave/isolator.hpp
----------------------------------------------------------------------
diff --git a/include/mesos/slave/isolator.hpp b/include/mesos/slave/isolator.hpp
index d5880ee..b16f832 100644
--- a/include/mesos/slave/isolator.hpp
+++ b/include/mesos/slave/isolator.hpp
@@ -41,6 +41,14 @@ class Isolator
 public:
   virtual ~Isolator() {}
 
+  // Returns true if this isolator supports nested containers. This
+  // method is designed to allow isolators to opt-in to support nested
+  // containers.
+  virtual bool supportsNesting()
+  {
+    return false;
+  }
+
   // Recover containers from the run states and the orphan containers
   // (known to the launcher but not known to the slave) detected by
   // the launcher.

http://git-wip-us.apache.org/repos/asf/mesos/blob/aaa574ef/src/slave/containerizer/mesos/isolator.cpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/isolator.cpp b/src/slave/containerizer/mesos/isolator.cpp
index 253ff3c..ccdcb9a 100644
--- a/src/slave/containerizer/mesos/isolator.cpp
+++ b/src/slave/containerizer/mesos/isolator.cpp
@@ -46,6 +46,12 @@ MesosIsolator::~MesosIsolator()
 }
 
 
+bool MesosIsolator::supportsNesting()
+{
+  return process->supportsNesting();
+}
+
+
 Future<Nothing> MesosIsolator::recover(
     const list<ContainerState>& state,
     const hashset<ContainerID>& orphans)

http://git-wip-us.apache.org/repos/asf/mesos/blob/aaa574ef/src/slave/containerizer/mesos/isolator.hpp
----------------------------------------------------------------------
diff --git a/src/slave/containerizer/mesos/isolator.hpp b/src/slave/containerizer/mesos/isolator.hpp
index b94947b..aaad346 100644
--- a/src/slave/containerizer/mesos/isolator.hpp
+++ b/src/slave/containerizer/mesos/isolator.hpp
@@ -41,6 +41,8 @@ public:
   explicit MesosIsolator(process::Owned<MesosIsolatorProcess> process);
   virtual ~MesosIsolator();
 
+  virtual bool supportsNesting();
+
   virtual process::Future<Nothing> recover(
       const std::list<mesos::slave::ContainerState>& states,
       const hashset<ContainerID>& orphans);
@@ -79,6 +81,11 @@ class MesosIsolatorProcess : public process::Process<MesosIsolatorProcess>
 public:
   virtual ~MesosIsolatorProcess() {}
 
+  virtual bool supportsNesting()
+  {
+    return false;
+  }
+
   virtual process::Future<Nothing> recover(
       const std::list<mesos::slave::ContainerState>& states,
       const hashset<ContainerID>& orphans)