Hadoop-2.6.5报错STDERR: mkdir: Cannot create directory /user/.../files. Name node is in safe mode.

46 篇文章 0 订阅
10 篇文章 0 订阅

使用Python的MrJob写了MapReduce任务后,运行MapReduce任务的时候报错如下:经过排查发现,这是由于hadoop刚刚启动,还处于安全模式下,因此执行MapReduce任务会报错,等待一会,待hadoop安全正常的启动后,再执行同样的任务,就正常了。

如果还是报同样的错误,那么你可以离开安全模式,操作方法如下:bin/hadoop dfsadmin -safemode leave。

dfsadmin常用命令如下:leave(离开安全模式)、enter(进入安全模式)、get(获取当前模式状态)、wait(等待,知道安全模式结束)。

# python /home/test/hadoop/httpflow.py -r hadoop --jobconf mapreduce.job.priority=VERY_HIGH -o hdfs://data/hadoop/output/httpflow hdfs:///data/hadoop/data/tmp20180802
No configs found; falling back on auto-configuration
No configs specified for hadoop runner
Looking for hadoop binary in $PATH...
Found hadoop binary: /usr/local/soft/hadoop-2.6.5/bin/hadoop
Using Hadoop version 2.6.5
Looking for Hadoop streaming jar in /usr/local/soft/hadoop-2.6.5...
Found Hadoop streaming jar: /usr/local/soft/hadoop-2.6.5/share/hadoop/tools/lib/hadoop-streaming-2.6.5.jar
Creating temp directory /tmp/httpflow.root.20180802.023651.138363
STDERR: mkdir: Cannot create directory /user/root/tmp/mrjob/httpflow.root.20180802.023651.138363/files. Name node is in safe mode.
Traceback (most recent call last):
  File "/root/.virtualenvs/env3/lib/python3.6/site-packages/mrjob/fs/hadoop.py", line 286, in mkdir
    self.invoke_hadoop(args, ok_stderr=[_HADOOP_FILE_EXISTS_RE])
  File "/root/.virtualenvs/env3/lib/python3.6/site-packages/mrjob/fs/hadoop.py", line 173, in invoke_hadoop
    raise CalledProcessError(proc.returncode, args)
subprocess.CalledProcessError: Command '['/usr/local/soft/hadoop-2.6.5/bin/hadoop', 'fs', '-mkdir', '-p', 'hdfs:///user/root/tmp/mrjob/httpflow.root.20180802.023651.138363/files/']' returned non-zero exit status 1.

During handling of the above exception, another exception occurred:

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值