0

私は Hadoop/Pig の初心者です。

Hadoop クラスターに 3 つのノードがあります。マシンの1つにNamenodeとセカンダリnamenodeとジョブトラッカー、他の2つのマシンにデータノードとタスクトラッカーがあります。3 つのノードはすべて別個の物理マシンです。

サンプル map reduce の例を 2 ノード クラスターで実行すると、正常に動作します。ただし、3 番目のノードを追加すると、次のエラーが表示されます。

740514、OP:MAPRED_SHUFFLE、CLIID:TIRMING_201206271903_0002_M_000000_0、期間:37426656 2012-06-27 19:13:13:20,458 WARN org.apache.hadoop.mapred.mapred.tasktracker:getMapoutputtuptut( DiskChecker$DiskErrorException: org.apache.hadoop.fs.LocalDirAllocator$AllocatorPerContext.getLocalPathToRead(Local:javat.java) で構成されたローカル ディレクトリのいずれかに taskTracker/airavat/jobcache/job_201206271903_0002/attempt_201206271903_0002_m_000001_0/output/file.out.index が見つかりませんでした429) org.apache.hadoop.fs.LocalDirAllocator.getLocalPathToRead(LocalDirAllocator.java:160) で org.apache.hadoop.mapred.TaskTracker$MapOutputServlet.doGet(TaskTracker.java:3857) で javax.servlet.http.HttpServlet javax.servlet.http の .service(HttpServlet.java:707)。org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:511) の HttpServlet.service(HttpServlet.java:820) org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1221) のorg.apache.hadoop.http.HttpServer$QuotingInputFilter.doFilter(HttpServer.java:835) で org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212) で org.mortbay.jetty.servlet .ServletHandler.handle(ServletHandler.java:399) で org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) で org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182) でorg.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766) で org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450) で org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230) org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) org.mortbay.jetty.Server.handle(Server.java:326) org.mortbay .jetty.HttpConnection.handleRequest(HttpConnection.java:542) で org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928) で org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549) でorg.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: 410) org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) でjetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) org.mortbay.jetty.Server.handle(Server.java:326) org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) org .mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928) で org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549) で org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) ) org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) で org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410) で org.mortbay.thread.QueuedThreadPool$PoolThread.run( QueuedThreadPool.java:582)jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152) org.mortbay.jetty.Server.handle(Server.java:326) org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542) org .mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928) で org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549) で org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212) ) org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) で org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410) で org.mortbay.thread.QueuedThreadPool$PoolThread.run( QueuedThreadPool.java:582)org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928) での handleRequest(HttpConnection.java:542) org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549) で org.mortbay.jetty .HttpParser.parseAvailable(HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410) at org. mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928) での handleRequest(HttpConnection.java:542) org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549) で org.mortbay.jetty .HttpParser.parseAvailable(HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410) at org. mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)404) org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410) で org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) で404) org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:410) で org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582) で

2012-06-27 19:13:20,458 WARN org.apache.hadoop.mapred.TaskTracker: 不明な子のマップ出力が正しくありません:試行_201206271903_0002_m_000001_0。無視されました。

http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu-linux-multi-node-cluster/の指示に従いました

ここで何が欠けていますか?

4

1 に答える 1

0

問題の正確な解決策をお伝えすることはできませんが、何らかの方法で確認するためのチェックリストを提供できます。お役に立てれば。

  1. 新しく追加されたノードで dfs および mapred デーモンを開始しましたか?
  2. スレーブ構成ファイルに 3 番目のノードを追加しましたか?
  3. hdfs-site ファイルで指定したデータ パスを確認し、3 番目のノードがそこにデータを書き込めることを確認します。
于 2012-06-28T04:31:36.867 に答える