启动Hadoop后使用JPS命令查看进程,发现只有NameNode和NodeManger。

原因:格式化两次namenode。导致namenode和datanode中的CID不一致。

$ hadoop namenode -format

解决方法:修改namenode和datanode的CID为同一个或者清除文件夹(先停止Hadoop所有服务)。

上述方法执行完没有结果则查看端口号是否被占用。

第一种

查看Hadoop下的配置文件core-site.xml内容:

$ vim /opt/hadoop2.6.5/etc/hadoop/core-site.xml
    <property>
<name>hadoop.tmp.dir</name>
<value>/home/huasheng/app/hadoop-2.6.5/tmp/</value>
</property>

发现临时目录在/home/huasheng/app/hadoop-2.6.5/tmp/ 下

$ cd /home/huasheng/app/hadoop-2.6.5/tmp/dfs
$ ls
data  name  namesecondary #name: namenode的信息
#data: datanode的信息 #查看name下的VERSION信息
$ cat name/current/VERSION #Fri Mar 15 10:12:21 CST 2019
namespaceID=596602248
clusterID=CID-b604bc78-8f8a-4cf6-a02b-3ac257ebef93
cTime=0
storageType=NAME_NODE
blockpoolID=BP-139131966-192.168.142.129-1552615941181
layoutVersion=-60 #修改data下的clusterID
$ vim data/current/VERSION #Fri Mar 15 10:37:33 CST 2019
storageID=DS-a9a026d4-3833-4086-91c4-17e68c157add
clusterID=CID-b604bc78-8f8a-4cf6-a02b-3ac257ebef93
cTime=0
datanodeUuid=b3848163-9ee4-4192-bc58-c96184c3dddd
storageType=DATA_NODE
layoutVersion=-56

启动Hadoop即可。

第二种

直接删除临时目录下文件,格式化namenode节点。

$ rm -rf /hadoop-2.6.5/tmp/
$ hadoop namenode -format

启动Hadoop即可。

但是我在测试的时候使用上述方法之后仍然没有解决。

#打开日志文件
$ cd /hadoop-2.6.5/logs/ #日志信息使用 类型-用户名-服务-hostname.log 的形式存储。比如datanode节点:
hadoop-huasheng-datanode-huas.log

查看后发现如下一段:

java.net.BindException: Port in use: 0.0.0.0:50090
at org.apache.hadoop.http.HttpServer2.openListeners(HttpServer2.java:892)
at org.apache.hadoop.http.HttpServer2.start(HttpServer2.java:828)
at org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode.initialize(SecondaryNameNode.java:276)
at org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode.<init>(SecondaryNameNode.java:192)
at org.apache.hadoop.hdfs.server.namenode.SecondaryNameNode.main(SecondaryNameNode.java:671)
Caused by: java.net.BindException: 地址已在使用
at sun.nio.ch.Net.bind0(Native Method)
at sun.nio.ch.Net.bind(Net.java:433)
at sun.nio.ch.Net.bind(Net.java:425)
at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
at org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
at org.apache.hadoop.http.HttpServer2.openListeners(HttpServer2.java:887)
... 4 more

查看端口是否被占用,如果被占用则杀掉对应进程即可

$ netstat -anp | grep 50090

[Hadoop] 启动HDFS缺少服务的更多相关文章

  1. Hadoop启动HDFS时DataNode未启动

    在用$HADOOP_HOME/sbin/start-dfs.sh启动HDFS时发现只有NameNode和SecondaryNameNode启动,没有DataNode. 查看logs下的DataNode ...

  2. hadoop启动中缺少datanode

    原文链接地址:https://blog.csdn.net/islotus/article/details/78357857 本人测试有效: 首先删除hadoop下的dfs文件(注:本文件不一定在had ...

  3. Hadoop框架:单服务下伪分布式集群搭建

    本文源码:GitHub·点这里 || GitEE·点这里 一.基础环境 1.环境版本 环境:centos7 hadoop版本:2.7.2 jdk版本:1.8 2.Hadoop目录结构 bin目录:存放 ...

  4. 启动HDFS之后一直处于安全模式org.apache.hadoop.hdfs.server.namenode.SafeModeException: Log not rolled. Name node is in safe mode.

    一.现象 三台机器 crxy99,crxy98,crxy97(crxy99是NameNode+DataNode,crxy98和crxy97是DataNode) 按正常命令启动HDFS之后,HDFS一直 ...

  5. Hadoop 系列文章(二) Hadoop配置部署启动HDFS及本地模式运行MapReduce

    接着上一篇文章,继续我们 hadoop 的入门案例. 1. 修改 core-site.xml 文件 [bamboo@hadoop-senior hadoop-2.5.0]$ vim etc/hadoo ...

  6. 格式化hdfs后,hadoop集群启动hdfs,namenode启动成功,datanode未启动

    集群格式化hdfs后,在主节点运行启动hdfs后,发现namenode启动了,而datanode没有启动,在其他节点上jps后没有datanode进程!原因: 当我们使用hdfs namenode - ...

  7. Hadoop格式化HDFS报错java.net.UnknownHostException: localhost.localdomain: localhost.localdomain

    异常描述: 在对HDFS格式化,执行hadoop namenode -format命令时,出现未知的主机名的问题,异常信息如下所示: [shirdrn@localhost bin]$ hadoop n ...

  8. Hadoop入门--HDFS(单节点)配置和部署 (一)

    一 配置SSH 下载ssh服务端和客户端 sudo apt-get install openssh-server openssh-client 验证是否安装成功 ssh username@192.16 ...

  9. Hadoop之HDFS及NameNode单点故障解决方案

    Hadoop之HDFS 版权声明:本文为yunshuxueyuan原创文章.如需转载请标明出处: http://www.cnblogs.com/sxt-zkys/QQ技术交流群:299142667 H ...

随机推荐

  1. wine安装稳定使用falsh播放器

    1安装wine,wine安装使用网上自行查找 2.安装flash播放器.exe 下载附件的falsh播放相关.tar.gz,解压后得到 Flash.ocx (flash10 for windows的插 ...

  2. dvi接口介绍

    Most graphics cards and motherboards feature a Digital Video Interface (DVI) connector for connectin ...

  3. LeetCode--036--有效的数独(java)

    判断一个 9x9 的数独是否有效.只需要根据以下规则,验证已经填入的数字是否有效即可. 数字 1-9 在每一行只能出现一次. 数字 1-9 在每一列只能出现一次. 数字 1-9 在每一个以粗实线分隔的 ...

  4. package.json bin的作用

    许多包有一个或多个可执行文件(executable),他们希望直接导入到全局路径里面,这样可以直接使用,npm很容易达到这点, A lot of packages have one or more e ...

  5. spring boot2 kafka

    一.软件版本 1.linux:centos6 2.zookeeper:zookeeper-3.4.1 3.kafka:kafka_2.12-2.2.0 4.jdk:1.8 5.instelliJ Id ...

  6. Java设计模式知识整理

    1.Java设计模式     Java设计模式分为三种类型,分别是:      ①.创建型设计模式:是对对象创建过程的各种问题和解决方案的总结           包括:静态工厂模式.抽象工厂模式.单 ...

  7. SqlServer 查看最近执行过的语句

    查看系统中最近执行的语句 ST.text AS '执行的SQL语句', QS.execution_count AS '执行次数', QS.total_elapsed_time AS '耗时', QS. ...

  8. QT:图形的描画(折线,柱状图,多边形)

    1. 创建一个继承于QWidget的类,重载一个叫paintEvent的函数, 2. 在paintEvent函数中调用Qpainter类,此类是一个重量级类,在paintEvent函数尽量只创建一次 ...

  9. go生成不重复的纯数字6位的随机数

    最近在学go, 按照入门指南学完go的基础语法, 开始学习go的标准库;  借用生成这个小任务复习一下go的基础语法. 推荐go编辑, jb公司的goland, 超级好用. 推荐go入门指南, htt ...

  10. 【密码技术】Part 4 SSL/TLS

    01 SSL/TLS基本概念 02 TLS协议流程图