我正在使用由 slurm 管理的集群来运行一些纱线/hadoop 基准测试。为此,我在 slurm 分配的节点上启动 hadoop 服务器,然后在它们上运行基准测试。我意识到这不是运行生产 hadoop 集群的预期方式,但需要。
为此,我首先编写了一个与 srun eg 一起运行的脚本srun -N 4 setup.sh
。该脚本编写配置文件并在分配的节点上启动服务器,编号最小的机器充当主节点。这一切都有效,我能够运行应用程序。
但是,因为我想启动服务器一次,然后在它们上启动多个应用程序,而不是在开始时重新启动/编码所有内容,所以我想salloc
改用它。我原以为这将是一个简单的运行salloc -N 4
然后运行的情况srun setup.sh
。不幸的是,这不起作用,因为不同的服务器无法相互通信。有人可以向我解释一下使用srun
和使用salloc
之间的操作环境有什么区别srun
吗?
非常感谢
丹尼尔