如何将执行环境传递给SGE

问题描述:

首先,“环境”一词具有不同的含义,因此让我澄清一下我的意思。如何将执行环境传递给SGE

我的工作在Linux上一个Python流量,并有一定的图书馆,软件元素和那些运行这个流程并认识到自定义命令所需的文件等(例如YAML)。当我说环境时,我指的是整套依赖项。

我在想的是一种将所有这些'必备条件'封装到某种东西(我不知道这种东西的技术术语,如果这是可能的话)并将这些东西传递给网格引擎的方法GE上的所有节点都不需要安装相同的一组程序和库,并且可以使用这些东西来运行作业。

有没有人碰到这样的情况?这是可能吗 ?

另外,我有ssh到每一个节点,并确保这些库等单独安装。

我看到两个主要选项。

  1. 虚拟环境:创建一个virtual environment,将在您的节点上安装nfs。你的工作应该使用那个虚拟环境。 (请注意,我想的virtualenv可与完整路径所以你需要将它们安装在他们的MAASTER节点上的相同路径。)
  2. 使用类似docker封装(或你写的,封装)的可执行文件,使他们需要的所有图书馆都是独立的。
+0

是,码头工人似乎是一个更加“做它一次”的做法是一个好主意。我正在使用几个节点,因为计算时间对作业不成问题 – 2014-09-05 19:12:17

+0

您是否成功使用Docker打包分发给工作节点的环境? – 2015-02-14 06:53:51