datanode(datanode无法启动)

http://www.itjxue.com  2023-02-23 02:20  来源:未知  点击次数: 

小白求教,datanode无法正常启动是什么情况

这样的情况一般有2种可能:

1、datanode启动失败。可以像楼上说的倒datanode机器上执行jps命令查看datanode进程是否已经启动。如果jps不能正常显示,可以使用ps -ax | grep hadoop

2、datanode进程已经启动,仍在运行。出现这种情况是由于namenode和datanode中保存的namespaceID不同所引起的。知道的可能情况是启动过集群后,又重新执行了hadoop namenode -format导致的。解决方法是删掉datanode配置的dfs.data.dir目录,不过这样一来所有文件就都没有了。要慎重。

hadoop中datanode怎么启动

首先,哪些服务器作为datanode,是根据你的"hadoop的安装目录/etc/conf/slaves"配置的主机的别名来决定的。

其次,在第一次启动Hadoop前,必须先将HDFS格式化。使用hadoop namenode -format命令来格式化。

然后执行下述命令来启动hadoop相关组件。

cd hadoop的安装目录/sbin

./start-all.sh

最后通过直接输入jps命令,来查看namenode、datanode是否启动成功。

Hadoop没有启动datanodes

采用Hadoop自带的基准测试工具写入文件时,出现问题:

采用 $jps 命令查看,datanodes节点中只启动了“nodemanager",并无“datanodes”进程。

搜索后大多博客说是“多次格式化namenode导致的namenode与datanode之间的不一致”。

于是删除之前的dfs.datanode.data.dir目录(我没有数据就哦),并重新修改了各节点 /hadoop-3.1.3/etc/hadoop/hdfs-site.xml 的相关数据路径:

重新格式化 hadoop namenode -format

然后再启动集群,还真解决了吖~

datanode不能启动为什么

这样的情况一般有2种可能:

1、datanode启动失败。可以像楼上说的倒datanode机器上执行jps命令查看datanode进程是否已经启动。如果jps不能正常显示,可以使用ps -ax | grep hadoop

2、datanode进程已经启动,仍在运行。出现这种情况是由于namenode和datanode中保存的namespaceID不同所引起的。知道的可能情况是启动过集群后,又重新执行了hadoop namenode -format导致的。解决方法是删掉datanode配置的dfs.data.dir目录,不过这样一来所有文件就都没有了。要慎重。

那具体报什么错误呢,查看下日志吧

怎么停止和重新启用hadoop的DataNode

首先建立一个excludes文件.它是一个文本, 里面每行就是想要停掉的主机名.这里excludes 放在 $HADOOP_HOME下

例如

CS02

CS03

CS04

CS05

CS06

CS07

CS08

CS09

CS10

这样就表明要把9台机器给停了.

然后在conf/hadoop-site.xml添加这样的属性:

property

namedfs.hosts.exclude/name

valueexcludes/ value

/property

做完这步, 用bin/hadoop dfsadmin -refreshNodes命令更新结点以及hadoop配置

然后你可以通过 bin/hadoop dfsadmin -report 就可以查看到类似这样的信息:

Name: 192.168.0.86:50010

State : Decommission in progress

Total raw bytes: 30452150272 (28.36 GB)

Remaining raw bytes: 17727606637(16.51 GB)

Used raw bytes: 6480990208 (6.04 GB)

% used: 21.28%

Last contact: Thu Nov 27 02:25:40 CST 2008

Name: 192.168.0.89:50010

State : Decommissioned

Total raw bytes: 0 (0 KB)

Remaining raw bytes: 0(0 KB)

Used raw bytes: 4703211520 (4.38 GB)

% used: ∞%

Last contact: Thu Jan 01 08:00:00 CST 1970

可以看到86在停止中, 89已经停止了.

在没停止之前, mapreduce会拒绝操作. 会出异常的

hdfs在写数据的过程中datanode死掉怎么办

在写入的时候不会重新重新分配datanode。 如果写入时,一个datanode挂掉,会将已经写入的数据放置到data queue的顶部,并将挂掉的datanode移出pipline,将数据写入到剩余的datanode.在写入结束后, namenode会收集datanode的信息,发现此文件的replication没有达到配置的要求(default=3),然后寻找一个datanode保存副本。

(责任编辑:IT教学网)

更多

推荐HTML/Xhtml文章