想要保持 hadoop 奴隶的用户名@主机名不同

Want to keep username@hostname of hadoop slaves different

我正在设置一个 hadoop-2.7.3 多节点集群。为了添加从节点,我编辑了从文件和 /etc/hosts 文件。我还向他们添加了 ssh pass key 现在在执行 start-dfs.sh 之后,hadoop 连接到 user1@myStyle 这是我,到这里为止一切正常。但是现在不是连接到名称为 user2@node1 的其他节点,而是连接到不存在的 user1@node1。那么,我怎样才能连接到 user2@node1 而不是 user1@node1

OS:-Ubuntu 16.04
Hadoop Version:-2.7.3

第 1 步:

slaves 文件必须包含以下形式的条目(每行一个机器名称):

machine_hostname1

machine_hostname2
...

在上面,每一行代表集群中机器的实际名称,必须与/etc/hosts文件中指定的完全相同。

第 2 步:

使用以下命令检查您是否能够手动连接到每台机器:

ssh -i ~/.ssh/<"keyfilename"> <"username">@publicNameOfMachine

不要在上面的命令中键入引号或 angle-brackets,并将组件替换为您选择的名称。

第 3 步:

如果手动连接不上,要么是你的key文件不对,要么没有放在目标机的.ssh目录下,要么没有Linux600权限对于文件。

第四步:

NameNode 的.ssh 目录下是否有配置文件。该文件应包含每台机器以下 4 行的条目:

Host <"ShortMachineName">

HostName <"MachinePublicName">

User <"username">

IdentityFile ~/.ssh/<keyfilename>

不要在上面的4个命令中输入引号或angle-brackets,并将组件替换为您选择的名称。这 4 行是每台机器。

确保您没有为每台机器重复(cut-paste 错误)用户名 and/or 机器名称。它必须与您配置的用户名和机器名相匹配。