본문 바로가기
Data 엔지니어링/Troubleshootting

Ambari를 통한 하둡 설치중 failed node에 대한 장애 해결 :: Data 쿡북

by 쿡북 2017. 8. 21.

오늘은 Ambari 설치과정에 있는 오류에 대해 적어본다.


Ambari에 대한 소개는 다음 링크를 참고한다

▶ 참고 : [빅데이터 플랫폼 구축 #3] Ambari 설치 http://datacookbook.kr/32


해결해야 하는 에러 현상은 다음과 같다.

1. Ambari 설치후 최초 hostname 등록까지는 진행되나 confirm hosts에서 filed됨

2. ssh key는 전부 복사한 상태이며 기타 설정은 모두 동일함

3. ambari-server.log 파일 확인결과ㅏ 다음과 같은 에러로그가 보임

INFO:root:BootStrapping hosts ['hadoop01', 'hadoop02', 'hadoop03'] using /usr/lib/python2.6/site-packages/ambari_server cluster primary OS: ubuntu16 with user 'root'with ssh Port '22' sshKey File /var/run/ambari-server/bootstrap/1/sshKey password File null using tmp dir /var/run/ambari-server/bootstrap/1 ambari: hadoop01; server_port: 8080; ambari version: 2.5.1.0; user_run_as: root

INFO:root:Executing parallel bootstrap

ERROR:root:ERROR: Bootstrap of host hadoop02 fails because previous action finished with non-zero exit code (127)

ERROR MESSAGE: Connection to hadoop02 closed.


STDOUT: env: `/var/lib/ambari-agent/tmp/os_check_type1503244398.py': 그런 파일이나 디렉터리가 없습니다


Connection to hadoop02 closed.


4. Ambari에 떠 있는 error 로그는 다음과 같음

==========================

Creating target directory...

==========================


Command start time 2017-08-21 00:53:16

chmod: '/var/lib/ambari-agent/data'에 접근할 수 없습니다: 그런 파일이나 디렉터리가 없습니다


Connection to hadoop02 closed.

SSH command execution finished

host=hadoop02, exitcode=0

Command end time 2017-08-21 00:53:18


..........

==========================

Running create-python-wrap script...

==========================


Command start time 2017-08-21 01:00:48

Cannot detect python for ambari to use. Please manually set  link to point to correct python binary


Connection to hadoop02 closed.

SSH command execution finished

host=hadoop02, exitcode=0

Command end time 2017-08-21 01:00:49



결국 원인은 4번의 하단에 python 을 실행시킬 명령어가 없기 때문에 ambari-server가 배포한 python 파일을 실행하지 못했다는 에러다.

참고로 ambari는 내부적으로 python 코드로 모든 명령어들이 수행된다.

추후에 ambari stack 관련 블로깅을 통해 차차 설명하겠다.


우선 python 이 설치되어 있는지를 확인하려면 linux 명령어인

which python 

을 실행시키면 python 명령어 위치가 뜨는지 확인해야 한다. 

만약 아무것도 뜨지 않는다면 python 이 설치되지 않은 것이므로 

apt-get install python

으로 설치하거나 수작업으로 설치해야 한다.


혹 한분이라도 해결되었다면 공감버튼을...


댓글