hadoop - NameNode 的用户名必须与 DataNode 的用户名相同吗?

我使用用户 hduser@master 运行 namenode,datanodes 使用 user1@slave1、user1@slave2 运行。设置 SSH key 工作正常,我可以从 master 远程 ssh 到我的 DataNode 机器。

但是,当我尝试为我的数据节点运行 hadoop-daemons.sh 时,它会失败,因为它尝试使用错误的用户进行 ssh:

hduser@master:~$ hadoop-daemons.sh start datanode
hduser@slave3's password: hduser@slave1's password: hduser@slave2's password:
slave1: Permission denied (publickey,password).
slave2: Permission denied (publickey,password).
slave3: Permission denied (publickey,password).

我试图为我的主人重置公钥和私钥并将其复制到数据节点
$ ssh-keygen -t rsa -P ""
$ ssh-copy-id -i $HOME/.ssh/id_rsa.pub user1@slave1

但是给了我同样的错误。
NameNode 上的用户是否需要与 DataNode 上的用户相同?

最佳答案

答:重置虚拟机并添加相同用户并在数据节点上安装 Hadoop 后,使用与名称节点相同的用户,它可以工作。所以我想答案是肯定的……

https://stackoverflow.com/questions/55250978/

相关文章:

docker - ssh进入boot2docker-您可以从boot2docker vm中看到-v文

docker - 权限被拒绝:docker-machine create

docker - 在Boot2Docker中使用MySQL时JDBC连接缓慢

java - 无法从 PHP 执行 Hadoop Jar

installation - fedora 20(32位)上的Docker无法正常工作

hadoop - 在我们的发现集群中提高 yarn 容器利用率的建议

docker - 我必须创建一个隧道来访问另一台主机上的 docker 容器吗?

hadoop - 使用sqoop排除表

docker - Docker容器访问群集IP

hadoop - 如何在Hortonworks Sandbox中编译WordCount.java?