hadoop-env.sh 重新配置JAVA_HOME

hadoop-env.sh 重新配置JAVA_HOME

问题描述:

hadoop为什么需要在 hadoop-env.sh 重新配置JAVA_HOME? 因为我之前已经在/etc/profile 里面配置JAVA_HOME,Hadoop访问不到/etc/profile 吗

这个网上不是已经有标准答案了吗?

hadoop执行启动脚本时候会加载这个hadoop-env.sh,如果这里面配置了$JAVA_HOME会覆盖/etc/profile里面的$JAVA_HOME 先启动NameNode,然后再通过ssh启动slaves(也就是DataNode、NodeManager这些) ssh过去的时候如果配在/etc/profile,每次都得source一下~ 所以,Hadoop放在hadoop-env.sh里面,这样的话ssh远程执行的时候也不用source /etc/profile了。