Ubuntu下伪分布式安装Hadoop启动后jps无NameNode等输出解决办法

Posted Z.Q.Feng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu下伪分布式安装Hadoop启动后jps无NameNode等输出解决办法相关的知识,希望对你有一定的参考价值。


项目场景

  • 系统:Ubuntu20.04(也适用于低版本以及虚拟机)
  • Hadoop版本:hadoop3.2.2(同理适用于其他版本)
  • Hadoop安装方式:伪分布式

问题描述

/usr/lcoal/hadoop 目录下,使用 ./sbin/start-dfs.sh 命令启动 Hadoop 后,使用 jps 命令无 NameNode、DataNode、SecondaryNode 等输出(全部没有或部分缺失)

hadoop@Ubuntu:\\usr\\local\\hadoop$ jps
2198 Jps
7689 DataNode

原因分析

总结了一下可能有以下三种原因(可以每一种解决方法都试试,或者就自己分析 logs 文件夹里的日志分件分析):

  1. 配置文件出错
  2. 当前用户对 Hadoop 目录的操作权限不够
  3. Hadoop 启动时 tmp 目录初始化出错

注:这里若 NameNode、DataNode、SecondaryNode 全部没有,则大概率是第 1、2 种情况,若只有部分结点缺失,则可能是第三种情况


解决方案

1. 配置文件出错

先进入你的 Hadoop 安装目录:

cd /usr/lcoal/hadoop # 看你自己装在哪

检查 core-site.xml 配置文件:

vim ./etc/hadoop/core-site.xml

检查 <configuration></configuratipn> 里的内容和如下内容是否有出入:

<configuration>
	<property>
	    <name>hadoop.tmp.dir</name>
	    <value>file:/usr/local/hadoop/tmp</value>
	    <description>Abase for other temporary directories.</description>
	</property>
	<property>
	    <name>fs.defaultFS</name>
	    <value>hdfs://localhost:9000</value>
	</property>
</configuration>

接着是检查 hdfs-site.xml 文件:

vim ./etc/hadoop/hdfs-site.xml

同样还是检查 <configuration></configuratipn> 里的内容和如下内容是否有出入:

<configuration>
	<property>
	    <name>dfs.replication</name>
	    <value>1</value>
	</property>
	<property>
	    <name>dfs.namenode.name.dir</name>
	    <value>file:/usr/local/hadoop/tmp/dfs/name</value>
	</property>
	<property>
	    <name>dfs.datanode.data.dir</name>
	    <value>file:/usr/local/hadoop/tmp/dfs/data</value>
	</property>
</configuration>

有的话,修改内容后重新启动 Hadoop:

./sbin/start-dfs.sh

2. 当前用户对 Hadoop 目录的操作权限不够

输入以下命令赋予用户相关权限:

# sudo chown -R Hadoop安装目录 用户名 
sudo chown -R /usr/local/hadoop hadoop

接着重新启动 Hadoop:

./sbin/start-dfs.sh

3. Hadoop 启动时 tmp 目录初始化出错

若前两种方法都不管用,可以试试这种情况,先关闭所有 HDFS 服务:

./sbin/stop-all.sh

删除 tmp 目录:

sudo rm -rf ./tmp

接着再重新启动 HDFS:

./sbin/start-dfs.sh

总结

以上是关于Ubuntu下伪分布式安装Hadoop启动后jps无NameNode等输出解决办法的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu下伪分布式安装Hadoop详细教程

Ubuntu下伪分布式安装Hadoop详细教程

Hadoop在Ubuntu系统下伪分布式安装Hadoop,Spark和Hive

Ubuntu下为Hadoop安装配置Hbase教程

hadoop启动后jps查不到namenode的解决办法

ubuntu16.04安装hadoop3.02(伪分布式)+集群