我是新手,我正在努力找出解决这个问题的方法。我遵循这个流程是为了在 Ubuntu 15.10 上设置 Hadoop 2.7.2
http://idroot.net/tutorials/how-to-install-apache-hadoop-on-ubuntu-14-04/
当我启动"hdfs namenode 格式"时,我继续收到此错误错误:找不到或加载主类 org.apache.hadoop.hdfs.server.namenode.NameNode
这是巴什尔克
的内容export JAVA_HOME=/usr/lib/jvm/java-8-oracle
export HADOOP_INSTALL=/usr/local/hadoop
export PATH=$PATH:$HADOOP_INSTALL/bin
export PATH=$PATH:$HADOOP_INSTALL/sbin
export HADOOP_MAPRED_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_HOME=$HADOOP_INSTALL
export HADOOP_HDFS_HOME=$HADOOP_INSTALL
export YARN_HOME=$HADOOP_INSTALL
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_INSTALL/lib"
谁能帮我解决这个(我认为很愚蠢)问题?
非常感谢卡马
首先确保目录 namenode 和数据节点已存在于hdfs-site.xml
文件中指定的位置。您可以使用命令mkdir
来创建这些。
然后尝试使用
hdfs namenode -format
或
/usr/local/hadoop/bin/hdfs namenode -format
请注意连字符。
我的 bashrc 配置用于 hadoop:
#HADOOP VARIABLES START
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export HADOOP_CLASSPATH=${JAVA_HOME}/lib/tools.jar
#HADOOP VARIABLES END
<</div>
div class="one_answers"> 使用灰烬脚本解决了问题。 主要区别在于使用Open jdk而不是oracle jre。
感谢您的帮助!
我也有这个错误。对我来说,这只是因为/share/hadoop/yarn/文件夹中的某些文件丢失,这是由于 hadoop 下载不完整造成的.tar.gz仍然可以通过命令行进行抽象。可能会帮助你,干杯。
此问题背后的一个原因可能是用户定义的HDFS_DIR
环境变量。这由脚本选取,例如 libexec/hadoop-functions.sh
中的以下行:
HDFS_DIR=${HDFS_DIR:-"share/hadoop/hdfs"}
...
if [[ -z "${HADOOP_HDFS_HOME}" ]] &&
[[ -d "${HADOOP_HOME}/${HDFS_DIR}" ]]; then
export HADOOP_HDFS_HOME="${HADOOP_HOME}"
fi
解决方案是避免定义环境变量HDFS_DIR
。
就我而言,使用sudo
有所帮助,但原因错误:权限没有问题,但环境变量没有问题。