相关疑难解决方法(0)

Datanode进程未在Hadoop中运行

我使用本教程设置并配置了一个多节点Hadoop集群.

当我输入start-all.sh命令时,它会显示正确初始化的所有进程,如下所示:

starting namenode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-namenode-jawwadtest1.out
jawwadtest1: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-datanode-jawwadtest1.out
jawwadtest2: starting datanode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-datanode-jawwadtest2.out
jawwadtest1: starting secondarynamenode, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-secondarynamenode-jawwadtest1.out
starting jobtracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-jobtracker-jawwadtest1.out
jawwadtest1: starting tasktracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-tasktracker-jawwadtest1.out
jawwadtest2: starting tasktracker, logging to /usr/local/hadoop/libexec/../logs/hadoop-root-tasktracker-jawwadtest2.out
Run Code Online (Sandbox Code Playgroud)

但是,当我输入jps命令时,我得到以下输出:

31057 NameNode
4001 RunJar
6182 RunJar
31328 SecondaryNameNode
31411 JobTracker
32119 Jps
31560 TaskTracker
Run Code Online (Sandbox Code Playgroud)

如您所见,没有运行datanode进程.我尝试配置单节点群集但遇到了同样的问题.有人会知道这里可能出现什么问题吗?是否有任何配置文件未在教程中提及或我可能已查看过?我是Hadoop的新手,有点迷失,任何帮助都会非常感激.

编辑:hadoop-root-datanode-jawwadtest1.log:

STARTUP_MSG:   args = []
STARTUP_MSG:   version = 1.0.3
STARTUP_MSG:   build = https://svn.apache.org/repos/asf/hadoop/common/branches/$
************************************************************/
2012-08-09 23:07:30,717 INFO org.apache.hadoop.metrics2.impl.MetricsConfig: loa$
2012-08-09 …
Run Code Online (Sandbox Code Playgroud)

configuration hadoop process

36
推荐指数
6
解决办法
12万
查看次数

Hadoop:...被复制到0个节点而不是minReplication(= 1).有1个数据节点在运行,并且在此操作中不排除任何节点

尝试写入HDFS作为我的多线程应用程序的一部分时,我收到以下错误

could only be replicated to 0 nodes instead of minReplication (=1).  There are 1 datanode(s) running and no node(s) are excluded in this operation.
Run Code Online (Sandbox Code Playgroud)

我在这里尝试了重新格式化的最高评价答案,但这对我不起作用:HDFS错误:只能复制到0个节点,而不是1个节点

这是怎么回事:

  1. 我的应用程序由2个线程组成,每个线程配置有自己的Spring Data PartitionTextFileWriter
  2. 线程1是第一个处理数据的,它可以成功写入HDFS
  3. 但是,一旦线程2开始处理数据,我在尝试刷新文件时会收到此错误

线程1和2不会写入同一文件,尽管它们在我的目录树的根目录下共享一个父目录.

我的服务器上的磁盘空间没有问题.

我也在我的名称 - 节点日志中看到了这一点,但不确定它的含义:

2016-03-15 11:23:12,149 WARN org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicy: Failed to place enough replicas, still in need of 1 to reach 1 (unavailableStorages=[], storagePolicy=BlockStoragePolicy{HOT:7, storageTypes=[DISK], creationFallbacks=[], replicationFallbacks=[ARCHIVE]}, newBlock=true) For more information, please enable DEBUG log level on org.apache.hadoop.hdfs.server.blockmanagement.BlockPlacementPolicy
2016-03-15 11:23:12,150 WARN org.apache.hadoop.hdfs.protocol.BlockStoragePolicy: Failed to place enough replicas: …
Run Code Online (Sandbox Code Playgroud)

configuration hadoop hdfs

24
推荐指数
2
解决办法
2万
查看次数

使用copyFromLocal开关将数据移动到hdfs

我不知道这里发生了什么,但我试图将一个简单的文件从我本地文件系统的目录复制到为hdfs指定的目录.

在我的hdfs-site.xml中,我已使用以下属性指定hdfs的目录为/ home/vaibhav/Hadoop/dataNodeHadoopData -

<name>dfs.data.dir</name>
<value>/home/vaibhav/Hadoop/dataNodeHadoopData/</value>

and 

<name>dfs.name.dir</name>
<value>/home/vaibhav/Hadoop/dataNodeHadoopData/</value>
Run Code Online (Sandbox Code Playgroud)

我使用以下命令 -

bin/hadoop dfs -copyFromLocal /home/vaibhav/ml-100k/u.data /home/vaibhav/Hadoop/dataNodeHadoopData
Run Code Online (Sandbox Code Playgroud)

将文件u.data从其本地文件系统位置复制到我指定为Hdfs目录的目录.但是,当我这样做时,没有任何反应 - 没有错误,没有.并且没有文件被复制到hdsf.难道我做错了什么?可能存在任何权限问题?

建议需要.

我正在使用伪分布式单节点模式.

另外,在相关的说明中,我想问一下,在我的map reduce程序中,我已将配置设置为指向inputFilePath为/home/vaibhav/ml-100k/u.data.那么它不会自动将文件从给定位置复制到hdfs吗?

hadoop hdfs

11
推荐指数
1
解决办法
7万
查看次数

文件jobtracker.info只能复制到0个节点,而不是1个节点

我正在尝试设置Hadoop群集Fedora 17.当我给/bin/star-all.sh命令守护进程开始在主站和从站节点上.但是当我在主节点上查看数据节点的日志文件时,我得到了EROOR

错误org.apache.hadoop.security.UserGroupInformation:PriviledgedActionException as:hadoop1 cause:java.io.IOException:File /home/hadoop1/mapred/system/jobtracker.info只能复制到0个节点,而不是1个节点

2013-03-23 15:37:08,205 INFO org.apache.hadoop.ipc.Server:9100上的IPC服务器处理程序5,调用addBlock(/home/hadoop1/mapred/system/jobtracker.info,DFSClient_- 838454688,null)来自127.0.0.1:40173:错误:java.io.IOException:文件/home/hadoop1/mapred/system/jobtracker.info只能复制到0个节点,而不是1个java.io.IOException:File/home/hadoop1 /mapred/system/jobtracker.info只能复制到0个节点,而不是在org.apache.hadoop.hdfs的org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:1558)中复制1个节点. .server.namenode.NameNode.addBlock(NameNode.java:696)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:43)位于org.apache的org.apache.hadoop.ipc.RPC $ Server.call(RPC.java:563)的java.lang.reflect.Method.invoke(Method.java:601). hadoop.ipc.Server $处理 r $ 1.run(Server.java:1388)位于org.apache.hadoop.ipc.Server $ Handler $ 1.run(Server.java:1384),位于javax.security的java.security.AccessController.doPrivileged(Native Method). auth.Subject.doAs(Subject.java:415)org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1121)org.apache.hadoop.ipc.Server $ Handler.run(Server.java: 1382)

我也在尝试运行wordcound程序.使用命令将数据复制到HDFS时

$ bin/hadoop dfs -copyFromLocal/home/hadoop1/Documents/wordcount// home/hadoop1/hdfs/data 我得到以下错误

WARN hdfs.DFSClient:DataStreamer异常:org.apache.hadoop.ipc.RemoteException:java.io.IOException:文件/home/hadoop1/hdfs/data/wordcount/pg20417.txt只能复制到0个节点,而不是1个节点at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:1558)at the sun.reflect org.apache.hadoop.hdfs.server.namenode.NameNode.addBlock(NameNode.java:696)at sun.reflect位于org.apache.hadoop.ipc.RPC的java.lang.reflect.Method.invoke(Method.java:601)sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)的.GeneratedMethodAccessor5.invoke(未知来源)位于org.apache.hadoop.ipc.Server $ Handler $ 1.run(Server.java:1388)的$ Server.call(RPC.java:563)org.apache.hadoop.ipc.Server $ Handler $ 1.run(服务器.java:1384)位于org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java)的javax.security.auth.Subject.doAs(Subject.java:415)的java.security.AccessController.doPrivileged(Native Method) :1121)在org.apache.hadoop.ipc.S erver $ Handler.run(Server.java:1382)

at org.apache.hadoop.ipc.Client.call(Client.java:1070)
at org.apache.hadoop.ipc.RPC$Invoker.invoke(RPC.java:225)
at $Proxy1.addBlock(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at …
Run Code Online (Sandbox Code Playgroud)

hadoop

6
推荐指数
1
解决办法
1万
查看次数

Hadoop:有 0 个数据节点正在运行,此操作中没有排除任何节点

我在 VMware 上部署了 Hadoop 集群。它们都在 CentOS 7 上。

在 Master 上发出命令 jps:

[root@hadoopmaster anna]# jps
6225 NameNode
6995 ResourceManager
6580 SecondaryNameNode
7254 Jps
Run Code Online (Sandbox Code Playgroud)

在 Slave 上发出命令 jps:

[root@hadoopslave1 anna]# jps
5066 DataNode
5818 Jps
5503 NodeManager
Run Code Online (Sandbox Code Playgroud)

但是,我不知道为什么http://localhost:50070/dfshealth.html#tab-overview上的实时节点 显示为 0。而且我无法发出 hdfs dfs -put in/file/f1。它显示错误消息:

[root@hadoopmaster hadoop]# hdfs dfs -put in/file/f1 /user
16/01/06 02:53:14 WARN hdfs.DFSClient: DataStreamer Exception
org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /user._COPYING_ could only be replicated to 0 nodes instead of minReplication (=1).  There are 0 datanode(s) running and no node(s) …
Run Code Online (Sandbox Code Playgroud)

hadoop hdfs

5
推荐指数
1
解决办法
2万
查看次数

Hadoop:文件...只能复制到 0 个节点,而不是 1 个

我正在尝试在 8 节点 IB (OFED-1.5.3-4.0.42) 集群上部署 Hadoop-RDMA,并遇到以下问题(又名文件...只能复制到 0 个节点,而不是 1 个节点):

\n\n
\nfrolo@A11:~/hadoop-rdma-0.9.8> ./bin/hadoop dfs -copyFromLocal ../pg132.txt /user/frolo/input/pg132.txt\n警告: $HADOOP_HOME 已弃用。\n\ n14/02/05 19:06:30 警告 hdfs.DFSClient: DataStreamer 异常: java.lang.reflect.UndeclaredThrowableException\n 在 com.sun.proxy.$Proxy1.addBlock(未知来源)\n 在 sun.reflect.NativeMethodAccessorImpl .invoke0(本机方法)\n 在 sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)\n 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)\n 在 java.lang.reflect.Method .invoke(Method.java:606)\n 在 org.apache.hadoop.io.retry.RetryInvocalHandler.invokeMethod(未知来源)\n 在 org.apache.hadoop.io.retry.RetryInvocalHandler.invoke(未知来源)\ n 在 com.sun.proxy.$Proxy1.addBlock(未知来源)\n 在 org.apache.hadoop.hdfs.From.Code(未知来源)\n 在 org.apache.hadoop.hdfs.From.F(未知来源)源)\n 位于 org.apache.hadoop.hdfs.From.F(未知源)\n 位于 org.apache.hadoop.hdfs.The.run(未知源)\n由:org.apache.hadoop.ipc 引起。 RemoteException:java.io.IOException:文件/user/frolo/input/pg132.txt只能复制到0个节点,而不是org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(未知)的1\n源)\n 在 org.apache.hadoop.hdfs.server.namenode.NameNode.addBlock(未知源)\n 在 sun.reflect.GeneratedMethodAccessor6.invoke(未知源)\n 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl .java:43)\n 在 java.lang.reflect.Method.invoke(Method.java:606)\n 在 org.apache.hadoop.ipc.RPC$Server.call(未知来源)\n 在 org.apache .hadoop.ipc.rdma.madness.Code(未知来源)\n 位于 org.apache.hadoop.ipc.rdma.madness.run(未知来源)\n 位于 java.security.AccessController.doPrivileged(本机方法)\n在 javax.security.auth.Subject.doAs(Subject.java:415)\n 在 org.apache.hadoop.security.UserGroupInformation.doAs(未知来源)\n 在 org.apache.hadoop.ipc.rdma.be。运行(未知来源)\n 在 …

hadoop infiniband

0
推荐指数
1
解决办法
7309
查看次数

标签 统计

hadoop ×6

hdfs ×3

configuration ×2

infiniband ×1

process ×1