首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法正常启动hadoop datanode

无法正常启动hadoop datanode
EN

Stack Overflow用户
提问于 2014-03-07 02:48:51
回答 3查看 4K关注 0票数 3

我正在尝试安装Hadoop2.2.0,在启动dataenode服务时遇到以下错误,请帮助我提前解决这个issue.Thanks。

nodename 3627@prassanna-Studio-1558 2014-03-11 08:48:16,426块池org.apache.hadoop.hdfs.server.datanode.DataNode:初始化失败(存储id DS-1960076343-127.0.1 ).1-50010-1394127604582)服务至localhost/127.0.0.1:9000 java.io.IOException: /home/prassanna/usr/local/hadoop/yarn_data/hdfs/datanode: namenode clusterID =CID-fb61a70-4b15-470e-a1d0-12653e357a10;数据节点= CID-8bf63244-0510-4db6-a949-8f74b50f2be9 at org.apache.hadoop.hdfs.server.datanode.DataStorage.doTransition(DataStorage.java:391) at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:191) at org.apache.hadoop.hdfs.server.datanode.DataStorage.recoverTransitionRead(DataStorage.java:219) at org.apache.hadoop.hdfs.server.datanode.DataNode.initStorage(DataNode.java:837) at org.apache.hadoop.hdfs.server.datanode.DataNode.initBlockPool(DataNode.java:808) at org.apache.hadoop.hdfs.server.datanode.BPOfferService.verifyAndSetNamespaceInfo(BPOfferService.java:280) at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.connectToNNAndHandshake(BPServiceActor.java:222) at org.apache.hadoop.hdfs.server.datanode.BPServiceActor.run(BPServiceActor.java:664) at java.lang.Thread.run(Thread.java:662) 2014-03-11 08:48:16,427警告org.apache.hadoop.hdfs.server.datanode.DataNode:结束块池服务:块池BP-611836968-127.0.1.1-1394507838610 (存储id DS-1960076343-127.0.1.1-50010-13941276082)服务到本地主机/127.0.0.1:9000 2014-03-11 08:48:16,532 INFO org.apache.hadoop.hdfs.server.datanode.DataNode:已删除块池BP-611836968-127.0.1.1-1394507838610 (存储id DS-1960076343-127 ).0.1.1-50010-1394127604582) 2014-03-11 08:48:18,532警告org.apache.hadoop.hdfs.server.datanode.DataNode:退出数据节点2014-03-11 08:48:18 534 INFO org.apache.hadoop.util.ExitUtil:状态0 2014-03-11 08:48:18 536 INFO org.apache.hadoop.hdfs.server.datanode.DataNode: SHUTDOWN_MSG: /**********************************关机_MSG:在prassanna-Studio-1558/127.0.1.1关闭DataNode

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-03-07 04:49:34

这只是显示datanode试图启动,但接受了一些异常,然后就死了。

请检查hadoop安装文件夹中的logs文件夹下的datanode日志(除非您更改了配置)以确定异常。它通常指向某种类型的配置问题(尤指配置问题)。网络设置(/etc/host)与此相关,但有相当多的可能性。

票数 3
EN

Stack Overflow用户

发布于 2014-03-07 06:19:05

确保您准备好了正确的配置和正确的路径。这是运行Hadoop在ubuntu上的一个链接。

我已经使用这个链接在我的机器上安装hadoop,它工作得很好。

票数 4
EN

Stack Overflow用户

发布于 2017-08-14 09:20:38

把这个转过来,

1.查看JAVA_HOME--

代码语言:javascript
复制
    readlink -f $(which java) 
    /usr/lib/jvm/java-7-openjdk-amd64/jre/bin/java 

2.如果JAVA不可用,请按命令安装

代码语言:javascript
复制
    sudo apt-get install defalul-jdk 

而不是运行1和检查终端。

代码语言:javascript
复制
    java -version 
    javac -version 

3.配置SSH

Hadoop需要SSH访问来管理它的节点,也就是说,如果您想在其上使用Hadoop,那么远程机器加上您的本地机器(这就是我们在本简短教程中要做的)。因此,对于Hadoop的单节点设置,我们需要为用户配置对本地主机的SSH访问。

代码语言:javascript
复制
    sudo apt-get install ssh
    sudo su hadoop
    ssh-keygen -t rsa -P “”
    cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
    ssh localhost

下载并解压缩hadoop-2.7.3(读过写允许的Chosse dirrectory )

集合环境变量

代码语言:javascript
复制
    sudo gedit .bashrc
    source .bashrc

设置配置文件

为了完成Hadoop设置,必须修改以下文件:

代码语言:javascript
复制
~/.bashrc   (Already done)
(PATH)/etc/hadoop/hadoop-env.sh 
(PATH)/etc/hadoop/core-site.xml 
(PATH)/etc/hadoop/mapred-site.xml.template 
(PATH)/etc/hadoop/hdfs-site.xm

gedit (PATH)/etc/hadoop/hadoop-env.sh

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

gedit (PATH)/etc/hadoop/core-site.xml: 

(HOME)/etc/hadoop/core-site.xml文件包含Hadoop在启动时使用的配置属性。此文件可用于覆盖Hadoop开头的默认设置。

代码语言:javascript
复制
    ($ sudo mkdir -p /app/hadoop/tmp)

打开文件,在<configuration></configuration>标记之间输入以下内容:

代码语言:javascript
复制
gedit /usr/local/hadoop/etc/hadoop/core-site.xml 
<configuration> 
 <property> 
  <name>hadoop.tmp.dir</name> 
  <value>/app/hadoop/tmp</value> 
  <description>A base for other temporary directories.</description> 
 </property> 

 <property> 
  <name>fs.default.name</name> 
  <value>hdfs://localhost:54310</value> 
  <description>The name of the default file system.  A URI whose 
  scheme and authority determine the FileSystem implementation.  The 
  uri's scheme determines the config property (fs.SCHEME.impl) naming 
  the FileSystem implementation class.  The uri's authority is used to 
  determine the host, port, etc. for a filesystem.</description> 
 </property> 
</configuration>


(PATH)/etc/hadoop/mapred-site.xml 

默认情况下,(PATH)/etc/hadoop/文件夹包含(PATH)/etc/hadoop/mapred-site.xml.template文件,必须用名称mapred-site.xml重命名/复制该文件:

代码语言:javascript
复制
cp /usr/local/hadoop/etc/hadoop/mapred-site.xml.template /usr/local/hadoop/etc/hadoop/mapred-site.xml 

mapred-site.xml文件用于指定用于MapReduce的框架。

我们需要在<configuration></configuration>标记之间输入以下内容:

代码语言:javascript
复制
    <configuration> 
     <property> 
      <name>mapred.job.tracker</name> 
      <value>localhost:54311</value> 
      <description>The host and port that the MapReduce job tracker runs 
      at.  If "local", then jobs are run in-process as a single map 
      and reduce task. 
      </description> 
     </property> 
    </configuration>

(PATH)/etc/hadoop/hdfs-site.xml 

需要为正在使用的集群中的每个主机配置(PATH)/etc/hadoop/hdfs-site.xml文件。

它用于指定将用作主机上的namenode和datanode的目录。

在编辑这个文件之前,我们需要为这个Hadoop安装创建两个包含namenode和datanode的目录。这可以使用以下命令来完成:

代码语言:javascript
复制
sudo mkdir -p /usr/local/hadoop_store/hdfs/namenode 
sudo mkdir -p /usr/local/hadoop_store/hdfs/datanode 

打开文件,在<configuration></configuration>标记之间输入以下内容:

代码语言:javascript
复制
    gedit (PATH)/etc/hadoop/hdfs-site.xml 

    <configuration> 
     <property> 
      <name>dfs.replication</name> 
      <value>1</value> 
      <description>Default block replication. 
      The actual number of replications can be specified when the file is created. 
      The default is used if replication is not specified in create time. 
      </description> 
     </property> 
     <property> 
       <name>dfs.namenode.name.dir</name> 
       <value>file:/usr/local/hadoop_store/hdfs/namenode</value> 
     </property> 
     <property> 
       <name>dfs.datanode.data.dir</name> 
       <value>file:/usr/local/hadoop_store/hdfs/datanode</value> 
     </property> 
    </configuration> 

格式化新Hadoop文件系统

现在,需要对Hadoop文件系统进行格式化,以便我们可以开始使用它。格式命令应该具有写权限,因为它在/usr/local/hadoop_store/文件夹下创建当前目录:

代码语言:javascript
复制
    bin/hadoop namenode -format 

代码语言:javascript
复制
    bin/hdfs namenode -format

HADOOP设置完成

现在启动hdfs

代码语言:javascript
复制
start-dfs.sh
start-yarn.sh

检查网址:http://localhost:50070/

用于停止HDFS

代码语言:javascript
复制
stop-dfs.sh
stop-yarn.sh
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22240488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档