これは奇妙な問題です。ラップトップの電源が切れてシャットダウンしたときに、MRジョブ(単一ノード)を実行していました。ubuntu10.04に「バッテリーなし」の警告がないため
もう一度起動してhadoop(シングルノード)を起動しようとすると、すべてがうまくいき、コマンドラインから「jps」を発行すると、すべてのマスタープロセスとスレーブプロセスが一覧表示されます。また、「netstat -plten|grepjava」を発行してみました。
コマンドラインからの出力:
hduser @ fox:〜$ jps 10476 DataNode 1819年 10696 JobTracker 10813 TaskTracker 11741 Jps 10605 SecondaryNameNode 10360 NameNode hduser @ fox:〜$ sudo netstat -plten | grep java tcp 0 0 0.0.0.0:55376 0.0.0.0:* LISTEN 1000 141925 10476 / java tcp 0 0 0.0.0.0:42352 0.0.0.0:* LISTEN 1000 141790 10360 / java tcp 0 0 0.0.0.0:50070 0.0.0.0:* LISTEN 1000 142727 10360 / java tcp 0 0 0.0.0.0:50010 0.0.0.0:* LISTEN 1000 142818 10476 / java tcp 0 0 0.0.0.0:50075 0.0.0.0:* LISTEN 1000 143308 10476 / java tcp 0 0 0.0.0.0:50020 0.0.0.0:* LISTEN 1000 146358 10476 / java tcp 0 0 127.0.0.1:38533 0.0.0.0:* LISTEN 1000 143217 10813 / java tcp 0 0 102.173.156.27:54310 0.0.0.0:* LISTEN 1000 141913 10360 / java tcp 0 0 102.173.156.27:54311 0.0.0.0:* LISTEN 1000 142359 10696 / java tcp 0 0 0.0.0.0:50090 0.0.0.0:* LISTEN 1000 142827 10605 / java tcp 0 0 0.0.0.0:56779 0.0.0.0:* LISTEN 1000 142191 10605 / java tcp 0 0 0.0.0.0:55373 0.0.0.0:* LISTEN 1000 142251 10696 / java tcp 0 0 0.0.0.0:50030 0.0.0.0:* LISTEN 1000 142921 10696 / java
ジョブトラッカーのログファイルを確認しました。
2013-01-09 16:40:52,286警告org.apache.hadoop.hdfs.DFSClient:ブロックnullのエラー回復baddatanode[0]ノード==null 2013-01-09 16:40:52,286警告org.apache.hadoop.hdfs.DFSClient:ブロックの場所を取得できませんでした。ソースファイル"/home/hduser/hadoop/tmpnew/mapred/system/jobtracker.info"-中止しています... 2013-01-09 16:40:52,286警告org.apache.hadoop.mapred.JobTracker:ファイルhdfs:// master:54310 / home / hduser / hadoop / tmpnew / mapred / system / jobtracker.infoへの書き込みに失敗しました! 2013-01-09 16:40:52,287警告org.apache.hadoop.mapred.JobTracker:ファイルシステムの準備がまだできていません! 2013-01-09 16:40:52,290警告org.apache.hadoop.mapred.JobTracker:リカバリマネージャーの初期化に失敗しました。 org.apache.hadoop.ipc.RemoteException:java.io.IOException:ファイル/home/hduser/hadoop/tmpnew/mapred/system/jobtracker.infoは、1つではなく0つのノードにのみ複製できました。 org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:1558)で org.apache.hadoop.hdfs.server.namenode.NameNode.addBlock(NameNode.java:696)で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブメソッド)で sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)で java.lang.reflect.Method.invoke(Method.java:597)で org.apache.hadoop.ipc.RPC $ Server.call(RPC.java:563)で org.apache.hadoop.ipc.Server $ Handler $ 1.run(Server.java:1388)で org.apache.hadoop.ipc.Server $ Handler $ 1.run(Server.java:1384)で java.security.AccessController.doPrivileged(ネイティブメソッド)で javax.security.auth.Subject.doAs(Subject.java:396)で で org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1121) org.apache.hadoop.ipc.Server $ Handler.run(Server.java:1382)で org.apache.hadoop.ipc.Client.call(Client.java:1070)で org.apache.hadoop.ipc.RPC $ Invoker.invoke(RPC.java:225)で $ Proxy5.addBlock(不明なソース)で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブメソッド)で sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)で java.lang.reflect.Method.invoke(Method.java:597)で org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:82)で org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:59)で $ Proxy5.addBlock(不明なソース)で org.apache.hadoop.hdfs.DFSClient $ DFSOutputStream.locateFollowingBlock(DFSClient.java:3510)で org.apache.hadoop.hdfs.DFSClient $ DFSOutputStream.nextBlockOutputStream(DFSClient.java:3373)で org.apache.hadoop.hdfs.DFSClient $ DFSOutputStream.access $ 2600(DFSClient.java:2589)で org.apache.hadoop.hdfs.DFSClient $ DFSOutputStream $ DataStreamer.run(DFSClient.java:2829)で 2013-01-09 16:41:02,291警告org.apache.hadoop.mapred.JobTracker:再試行しています... 2013-01-09 16:41:02,331警告org.apache.hadoop.hdfs.DFSClient:DataStreamer例外:org.apache.hadoop.ipc.RemoteException:java.io.IOException:ファイル/ home / hduser / hadoop / tmpnew / mapred / system / jobtracker.infoは、1ノードではなく0ノードにのみ複製できました。 org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:1558)で org.apache.hadoop.hdfs.server.namenode.NameNode.addBlock(NameNode.java:696)で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブメソッド)で sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)で java.lang.reflect.Method.invoke(Method.java:597)で org.apache.hadoop.ipc.RPC $ Server.call(RPC.java:563)で org.apache.hadoop.ipc.Server $ Handler $ 1.run(Server.java:1388)で org.apache.hadoop.ipc.Server $ Handler $ 1.run(Server.java:1384)で java.security.AccessController.doPrivileged(ネイティブメソッド)で javax.security.auth.Subject.doAs(Subject.java:396)で org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1121)で org.apache.hadoop.ipc.Server $ Handler.run(Server.java:1382)で org.apache.hadoop.ipc.Client.call(Client.java:1070)で org.apache.hadoop.ipc.RPC $ Invoker.invoke(RPC.java:225)で $ Proxy5.addBlock(不明なソース)で sun.reflect.NativeMethodAccessorImpl.invoke0(ネイティブメソッド)で sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)で sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)で java.lang.reflect.Method.invoke(Method.java:597)で org.apache.hadoop.io.retry.RetryInvocationHandler.invokeMethod(RetryInvocationHandler.java:82)で org.apache.hadoop.io.retry.RetryInvocationHandler.invoke(RetryInvocationHandler.java:59)で $ Proxy5.addBlock(不明なソース)で org.apache.hadoop.hdfs.DFSClient $ DFSOutputStream.locateFollowingBlock(DFSClient.java:3510)で org.apache.hadoop.hdfs.DFSClient $ DFSOutputStream.nextBlockOutputStream(DFSClient.java:3373)で org.apache.hadoop.hdfs.DFSClient $ DFSOutputStream.access $ 2600(DFSClient.java:2589)で org.apache.hadoop.hdfs.DFSClient $ DFSOutputStream $ DataStreamer.run(DFSClient.java:2829)で
URLを使用してタスクトラッカーを表示できません-master:50060
そのため、タスクトラッカーが正しく起動していないように感じます。
感謝します。