在这里,我面临着非常奇怪的问题,在ubuntu12.04服务器,64位版本。我手动安装了java7jdk(copy将jdk文件夹粘贴到/usr/lib/jvm中,并进行了大量配置,以管理java、javac和jps命令正常工作)。按格式设置节点名称时-
hadoop namenode -format
我的外壳显示:
$HADOOP_HOME is deprecated
然后突然返回shell而不格式化namenode。在启动hadoop守护程序之后,还可以执行以下操作:
start-all.sh
它们首先显示以下信息:
Warning: $HADOOP_HOME is deprecated.
starting namenode, logging to /usr/local/hadoop-1.2.1/libexec/../logs/hadoop-ubuntu1-namenode-jci1.out
jci1: starting datanode, logging to /usr/local/hadoop-1.2.1/libexec/../logs/hadoop-ubuntu1-datanode-jci1.out
jci1: starting secondarynamenode, logging to /usr/local/hadoop-1.2.1/libexec/../logs/hadoop-ubuntu1-secondarynamenode-jci1.out
starting jobtracker, logging to /usr/local/hadoop-1.2.1/libexec/../logs/hadoop-ubuntu1-jobtracker-jci1.out
jci1: starting tasktracker, logging to /usr/local/hadoop-1.2.1/libexec/../logs/hadoop-ubuntu1-tasktracker-jci1.out
但是,当我尝试通过“jps”查看流程时,输出结果如下:
9351 -- main class information unavailable
9184 -- main class information unavailable
9520 -- main class information unavailable
9612 -- process information unavailable
9831 Jps
一段时间后,jps只显示jps进程:
9831 Jps
我无法理解为什么守护进程在启动后立即停止。是java问题吗?请给我一些建议我该怎么办才能解决它。
1条答案
按热度按时间c0vxltue1#
最终解决了这个问题,因为java是hadoop的核心,所以jdk应该是兼容的,并且具有hadoop运行时所需的所有必要文件。在我的例子中,罪魁祸首是另一个openjdk-6,它与oraclejdk1.7并行,因此我清除了以前的安装,并将oraclejava作为惟一的java替代安装。现在我的namenode格式化没有任何问题,同时查看hadoop守护进程的日志文件也解决了我的另一个问题。