我们目前正在使用luigi、mrjob和其他框架来运行使用python的hadoo流作业。我们已经能够使用自己的virtualenv来发布这些作业,因此节点中没有安装特定的python依赖项(请参阅本文)。我想知道是否有人对anaconda/conda package manager做过类似的工作。警察。我也知道conda cluster,不过它看起来是一个更复杂/更复杂的解决方案(它位于付费墙后面)。
vawmfj5a1#
2019年更新:答案是肯定的,方法是使用康达包https://conda.github.io/conda-pack/
pxy2qtax2#
我不知道如何将conda环境打包到tar/zip中,然后将其解压到另一个盒子中并准备好使用,就像您提到的示例中那样,这可能是不可能的。至少在所有工作节点中没有anaconda,在不同的操作系统之间移动也可能有问题。anaconda集群是为了解决这个问题而创建的(免责声明:我是anaconda集群开发人员),但是它使用了更复杂的方法,基本上我们使用配置管理系统(salt)在集群中的所有节点中安装anaconda并控制conda环境。我们使用配置管理系统是因为我们还部署了hadoop堆栈(spark和它的朋友),我们需要针对大型集群,但实际上,如果您只需要部署anaconda,并且没有太多节点,那么您应该能够使用fabric(anaconda集群在某些部分也使用fabric)并在普通笔记本电脑上运行它。如果您对anaconda cluster感兴趣,请参阅以下文档:http://continuumio.github.io/conda-cluster/
2条答案
按热度按时间vawmfj5a1#
2019年更新:
答案是肯定的,方法是使用康达包
https://conda.github.io/conda-pack/
pxy2qtax2#
我不知道如何将conda环境打包到tar/zip中,然后将其解压到另一个盒子中并准备好使用,就像您提到的示例中那样,这可能是不可能的。至少在所有工作节点中没有anaconda,在不同的操作系统之间移动也可能有问题。
anaconda集群是为了解决这个问题而创建的(免责声明:我是anaconda集群开发人员),但是它使用了更复杂的方法,基本上我们使用配置管理系统(salt)在集群中的所有节点中安装anaconda并控制conda环境。
我们使用配置管理系统是因为我们还部署了hadoop堆栈(spark和它的朋友),我们需要针对大型集群,但实际上,如果您只需要部署anaconda,并且没有太多节点,那么您应该能够使用fabric(anaconda集群在某些部分也使用fabric)并在普通笔记本电脑上运行它。
如果您对anaconda cluster感兴趣,请参阅以下文档:http://continuumio.github.io/conda-cluster/