복붙노트

[HADOOP] 셔플 오류 : 초과 max_failed_unique_matche : 구제 아웃

HADOOP

셔플 오류 : 초과 max_failed_unique_matche : 구제 아웃

나는 hadoop에 익숙하지 않고 나는 단어 계산 예제를 실행하려고 시도하고있다. 내 컴퓨터에 가상 컴퓨터로 만든 4 개의 노드 클러스터가 있습니다. 작업이 맵 작업을 완료 할 때마다 약 16 %의 작업을 줄이면이 ​​오류가 표시됩니다.

셔플 오류 : MAX_FAILED_UNIQUE_FETCHES 초과했습니다. 구제 아웃.

12/05/24 04:43:12 WARN mapred.JobClient : 작업 출력을 읽는 중 오류가 발생했습니다 .Machine3-VirtualBox

노예가 다른 노예로부터 데이터를 검색 할 수없는 것 같습니다. 일부 링크에서 나는 / etc / hosts 파일의 불일치로 인해이를 발견 할 수 있음을 발견했다. 그러나 나는 그 (것)들을 십자가 검사하고, 모두 일관되다. 아무도 나를 도울 수 있습니까?

해결법

  1. ==============================

    1.공용 hadoop 포트 (이 경우 태스크 추적기의 경우 50060)의 클러스터 노드간에 통신을 차단하는 방화벽이 있습니까? 포트 50060에서 한 노드에서 다른 노드로 컬을하고 http 응답 코드를 확인하여 테스트하십시오.

    공용 hadoop 포트 (이 경우 태스크 추적기의 경우 50060)의 클러스터 노드간에 통신을 차단하는 방화벽이 있습니까? 포트 50060에서 한 노드에서 다른 노드로 컬을하고 http 응답 코드를 확인하여 테스트하십시오.

    curl -I http://node1:50060/
    

    위의 'node1'을 $ HADOOP_HOME / conf / slaves 파일의 각 값으로 바꾸십시오

    편집 그래서 이것이 아마도 DNS 문제 일 것입니다. 여기에 여러분이 시도해야 할 것이 있습니다 :

  2. ==============================

    2.터미널에 $ hostname을 입력하여 각 노드의 호스트 이름을 확인하십시오. 머신의 동일한 이름 (마스터 노드에서는 마스터, 슬레이브 노드에서는 슬레이브)을 가져야합니다. 그렇지 않으면, 노드 이름 (master / slave)으로 / etc / hostname을 변경하십시오. 그런 다음 시스템을 다시 시작하십시오. 그것은 효과가 있습니다.

    터미널에 $ hostname을 입력하여 각 노드의 호스트 이름을 확인하십시오. 머신의 동일한 이름 (마스터 노드에서는 마스터, 슬레이브 노드에서는 슬레이브)을 가져야합니다. 그렇지 않으면, 노드 이름 (master / slave)으로 / etc / hostname을 변경하십시오. 그런 다음 시스템을 다시 시작하십시오. 그것은 효과가 있습니다.

    간단한 그룹

  3. from https://stackoverflow.com/questions/10729543/shuffle-errorexceeded-max-failed-unique-matche-bailing-out by cc-by-sa and MIT license