我正在运行一个带有传统资源管理器(SLURM)的小型HPC群集,供用户排队工作。
我需要用户能够在不互相干预的情况下启动Hadoop作业。
Hadoop 2.7附带了自己的资源管理器YARN,因此其守护进程与SLURM一起永久运行会导致资源冲突。 我得到了Hadoop,即HDFS和YARN,在群集上运行良好,Terasort在两个数据节点上比一个数据节点加速了近两倍。现在我想让其他用户安全地运行他们的Hadoop作业,请求他们需要的数据节点数。
有一个特殊的用户hduser可以启动所有Hadoop守护进程,它具有从管理节点到计算节点的无密码ssh访问。 普通用户只能访问管理节点(SLURM使用Munge身份验证启动工作人员)
所以问题是:
普通用户是否可以在hduser启动所有守护进程后运行Hadoop作业?
是否可以告诉YARN nodemanager不要使用节点,除非用户以某种方式锁定'它?然后将此节点专用于该用户的作业?我的想法是,我可以通过SLURM设置并保持锁定,让YARN完成其余工作。
到目前为止,我想避免向普通用户授予ssh计算节点或启动守护进程的权限,如本指南所示: http://www.glennklockwood.com/data-intensive/hadoop/on-hpc.html 但毕竟,