ssh免密登录的问题
以下操作均在root账户下进行。
注意:修改好配置文件之后,一定要重启ssh!!!!!
service ssh start
- 使用ssh进行实现免密登录的时候,出现permission denied的问题时,可以进行下面的操作
vim /etc/ssh/sshd_config
//修改该配置文件中的PermitRootLogin 将这个值改为yes
即 PermitRootLogin yes
注意是没有冒号的
- 主设备向从设备分发公钥的时候,如果出现Permission denied的问题,可以进行下面的操作
vim /etc/ssh/sshd_config
//同样是修改这个配置文件
PasswordAuthentication yes
- 出现connection closed的问题
在使用
service ssh status查看ssh的状态的时候,出现connection closed的问题的时候,重启一下虚拟机是一个解决方法(亲测有效)
Hadoop未找到该指令的问题
当在命令行输入
hadoop version的指令时,会出现说hadoop未找到该指令的问题,这时候就是路径的问题,使用
echo $PATH查看路径中是否出现了Hadoop bin目录的路径,如果没有,就要检查是否配置了Hadoop的路径或者是路径是否被正确配置。可以使用下面的命令进行配置
vim /etc/proflie
export PATH = $PATH:/path/to/hadoop/bin
// /path/to/hadoop/bin是实际Hadoop的安装路径
另外,如果执行
hdfs namenode -format出现command not found的问题,也可以使用上面的指令进行解决
还有!!!修改配置文件之后一定要执行
source /etc/profile使文件立即生效,如果不执行这个指令的话,配置好文件之后也可能不会生效。
jps之后缺少的问题
- 没有resourcemanager的问题
jps之后没有resourcemanager可能是未开启。resourcemanager是需要手动开启的,可以使用yarn-daemon.sh start resourcemanager指令进行手动开启 - 没有nodemanager的问题
jps之后没有nodemanager,我在遇到这个问题之后查看了运行的日志,发现是说Java的问题,然后了解到Hadoop版本和Java版本的兼容问题,这里建议使用jdk8,毕竟比较稳定。另外,可以在Hadoop的官网查看Hadoop和Java的兼容问题 - jps后没有datanode的问题
jps后没有datanode,很大程度上是因为多次格式化的问题,id会发生变化,修改namenode和datanode的集群Id,修改从而保持一致。首先要找到存放VERSION的路径,然后查看clusterID,将name中的id进行复制,粘贴到data中,反过来也可以,使二者保持一致即可。
总结
以上就是在进行完全分布式配置时遇到的所有的问题。