For Java,Python.

hadoop遇到的坑(持续更新)

2019.04.09

1. ssh远程命令脚本Commends.sh

allCommands.sh
#!/bin/bash
params=$@
$params
i=1
for((i=1;i<=2;i=$i+1));do
    echo ======== slave$i $params===========
    ssh slave$i "$params"
done
#vim test

遇到ssh远程命令找不到

bash: ***: command not found

  • 配置好所需环境【.bashrc】

    当你没有配置你所需环境时,非系统环境变量/etc/profile,就会找不到命令。

    如:java环境未在.bashrc中配置。

2. namenode或datanode无法启动

一般是下面几种原因:

  • 多次Hadoop namenode -format导致clusterID不一致

    • 解决办法1:

      关闭hadoop所有程序

      stop-all.sh
      

      删除tmp临时文件

      在hadoop根目录下执行

      rm -rf ./tmp
      

      重新格式化namenode

      hdfs namenode -format
      
  • hdfs配置文件出错

3. 无法启动子节点

在确认不是网络问题的前提下 关闭所有节点 stop-all.sh 然后重新格式化namenode节点

4. 权限问题

执行./start-all.sh等命令时,提示-bash: ./startup.sh: Permission denied

解决办法:用命令chmod修改权限

chmod u+x *.sh