考虑这种情况:
我让 namenode 用户说 NN-USER-01,这意味着 NN-USER-01 必须对集群中存在的所有数据节点进行无密码 ssh,以便可以顺利处理 Namenode 和 Datanode 之间的所有通信,对吗?
现在考虑一种情况,当我需要使用 namenode 中的不同用户(例如 NN-USER-02)提交作业时,我是否需要在 NN-USER-02 和所有数据节点之间设置无密码 ssh?
有什么办法可以处理这种情况吗?
最佳答案
不!用户 NN-User-02 所需的只是有权访问 HDFS 上/user 目录中的新目录,例如:/user/NN-USER-02。郑重声明,任何节点上的任何用户都不需要对所有节点进行无密码 SSH。原因如下:
Namenode根本不与Datanode通信。只有数据节点与名称节点通信。因此,默认情况下,您不需要任何用户对所有数据节点进行无密码 SSH。也就是说,我们通常从一个节点(任何“一个”用户)到所有其他节点都使用无密码 SSH,以便更轻松地将配置文件(在 Hadoop 集群的 tarball/包安装中更改时)无缝地分发到所有节点,而无需每次都输入密码。
关于linux - 关于hadoop用户及其各自的权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31459001/