2012-06-28 2 views
0

본인은 하둡/돼지 초보자입니다.Hadoop 세 번째 노드를 추가하면 오류가 발생합니다.

나는 hadoop 클러스터에 3 개의 노드가 있습니다. 네임 노드와 보조 namenode 및 작업 추적기가 다른 두 시스템의 데이터 노드 및 작업 추적기 중 하나에 있습니다. 세 노드는 모두 별도의 물리적 컴퓨터입니다.

2 노드 클러스터에서 예제 맵 축소 예제를 실행하면 정상적으로 작동합니다. 그러나 세 번째 노드를 추가하면 다음 오류가 발생합니다.

740,514, OP : MAPRED_SHUFFLE, cliID : attempt_201206271903_0002_m_000000_0, 시간 : 37,426,656 2012-06-27 19 : 13 : getMapOutput (attempt_201206271903_0002_m_000001_0,0) 실패는 20,458 org.apache.hadoop.mapred.TaskTracker가 WARN : org.apache.hadoop.util.DiskChecker $ DiskErrorException는 : org.apache.hadoop에서 구성된 지역 디렉토리 의에서 taskTracker/airavat/jobcache/job_201206271903_0002/attempt_201206271903_0002_m_000001_0/출력/file.out.index 을 찾을 수 없습니다 .fs.LocalDirAllocator $ AllocatorPerContext.getLocalPathToRead (LocalDirAllocator.java:429) at org.apa che.hadoop.fs.LocalDirAllocator.getLocalPathToRead (LocalDirAllocator.java:160) at org.apache.hadoop.mapred.TaskTracker $ MapOutputServlet.doGet (TaskTracker.java:3857) at javax.servlet.http.HttpServlet.service (HttpServlet.java:707) 에서 javax.servlet.http.HttpServlet.service (HttpServlet.java:820) at org.mortbay.jetty.servlet.ServletHolder.handle (ServletHolder.java:511) at org.mortbay. jetty.servlet.ServletHandler $ CachedChain.doFilter (ServletHandler.java:1221) org.apache.hadoop.http.HttpServer $ QuotingInputFilter.doFilter (HttpServer.java:835) at org.mortbay.jetty.servlet.ServletHandler $ CachedChain.doFilter (ServletHandler.java:1212) at org.mortbay.jetty.servlet.ServletHandler.handle (ServletHandler.java:399) at org.mortbay.jetty.security.SecurityHandler.handle (SecurityHandler.java:216) at org.mortbay.jetty.servlet.SessionHandler.handle (SessionHandler.java:182) at org.mortbay.jetty.handler. org.mortbay.jetty.handler.ContextHandlerCollection.handle에서 org.mortbay.jetty.webapp.WebAppContext.handle (WebAppContext.java:450) 에서 ContextHandler.handle (ContextHandler.java:766) (ContextHandlerCollection.java:230) at org.mortbay.jetty.handler.HandlerWrapper.handle (HandlerWrapper.java:152) at org.mortbay.jetty.Server.handle (Server.java:326) at org.mortbay.jetty.HttpConnection.handleRequest (HttpConnection.java:542) at org.mortbay.jetty.HttpConnection $ RequestHandler.headerComplete (HttpConnection.java:928) a org.mortbay.jetty.HttpParser.parseNext (HttpParser.java:549) at org.mortbay.jetty.HttpParser.parseAvailable (HttpParser.java:212) at org.mortbay.jetty.HttpConnection.handle (HttpParser.java:549) : org.mortbay.thread.QueuedThreadPool $ PoolThread.run (QueuedThreadPool.java:582에서 404) org.mortbay.io.nio.SelectChannelEndPoint.run (SelectChannelEndPoint.java:410에서 ) )

2012-06 -27 19 : 13 : 20,458 WAR org.apache.hadoop.mapred.TaskTracker : 잘못된지도 출력을 가진 알 수없는 자식 : attempt_201206271903_0002_m_000001_0. 무시 됨.

나는 내가 여기에 실종 어떤 지시 http://www.michael-noll.com/tutorials/running-hadoop-on-ubuntu-linux-multi-node-cluster/

를 따랐다?

답변

0

정확하게 문제를 해결할 수는 없지만 어떻게 든 확인할 수있는 체크리스트를 제공 할 수 있습니다. 희망이 도움이됩니다.

  1. 새로 추가 된 노드에서 dfs 및 mapred 데몬을 시작 했습니까?
  2. 세 번째 노드를 슬레이브 구성 파일에 추가 했습니까?
  3. hdfs-site 파일에서 지정한 데이터 경로를 확인하고 세 번째 노드가 데이터를 쓸 수 있는지 확인하십시오.
관련 문제