hadoop启动命令_0649-6.1.1-在C6集群中CDSW的Terminal执行hadoop命令异常分析

1.问题重现

Fayson在CDH6.1.1集群中安装了CDSW1.5,启动一个Session在会话的Terminal执行hadoop命令报如下错误:

cdsw@z24ku4qbzj1pcr62:~$ hadoop fs -ls /WARNING: log4j.properties is not found. HADOOP_CONF_DIR may be incomplete.Exception in thread "main" java.lang.RuntimeException: core-site.xml not found at org.apache.hadoop.conf.Configuration.loadResource(Configuration.java:2869) at org.apache.hadoop.conf.Configuration.loadResources(Configuration.java:2838) at org.apache.hadoop.conf.Configuration.getProps(Configuration.java:2715) at org.apache.hadoop.conf.Configuration.set(Configuration.java:1352) at org.apache.hadoop.conf.Configuration.set(Configuration.java:1324) at org.apache.hadoop.conf.Configuration.setBoolean(Configuration.java:1665)
c6abed1a13079598aca80fc408a1f655.png

2.问题分析

1.通过在Terminal终端输出当前会话的HADOOP_CONF_DIR环境变量

cdsw@z24ku4qbzj1pcr62:~$ env |grep HADOOP_CONF_DIR
8f7ba4db2191f48dfef1aa5de2c2d165.png

2.通过HADOOP_CONF_DIR环境变量配置的路径查看发现两个目录下均有core-site.xml配置文件

ef5325632591f09e8599d37a10484546.png

通过对HADOOP_CONF_DIR环境变量的分析得出,主要是由于在Hadoop3中不支持该环境变量多路径配置方式。

3.问题解决

关于以上问题,主要是由于HADOOP_CONF_DIR的环境变量配置了多路径导致,可以通过如下方式解决该问题。

3.1.Terminal中重新指定环境变量

通过在Terminal中临时指定HADOOP_CONF_DIR的环境变量即可解决该问题,如下截图所示:

a00d31361d0ff989482bbcfe04f1f138.png

3.2.CDSW中配置全局环境变量

1.使用管理员登录CDSW在“Admin”->“Engines”页面的如下位置添加全局的环境变量

8bfc5804d869e6a08599bfe5206a435d.png

2.重新启动Session验证hadoop命令

1a11756abf9a53241754f7942ab3f477.png

通过上图可以看到hadoop命令正常执行,并且HADOOP_CONF_DIR的环境变量也修改为我们指定的单路径。

3.3.修改Spark Gateway环境变量方式

1.登录Cloudera Manager进入配置界面选择Gateway搜索“spark*.sh”,在如下配置项增加HADOOP_CONF_DIR配置

2302dc3a29929179c371dd23447a75df.png

2.根据CM提示重启依赖服务(含CDSW),重启成功后在CDSW上进行验证

814696716705e7f32517ac530ae7d463.png

通过上图可以看到HADOOP_CONF_DIR环境变量已被修改为指定的/etc/hadop/conf路径。

4.问题总结

对于上述问题主要是由于Hadoop3中HADOOP_CONF_DIR环境变量不支持多路径配置导致的问题,可以通过重写HADOOP_CONF_DIR环境变量的方式解决问题。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值