[Chukwa] 척와 설치 따라하기

하둡에서 파생된 로그를 수집하고 , 분석할 수 있는 오픈소스 솔루션입니다. 물론 로그를 분석하는 것은 하둡의 맵-리듀스를 이용합니다.

하둡 자체가 로그를 분석하기 위한 목적으로 태어났기 때문에, 로그를 수집하는 솔루션은 어찌보면 당연하게 하둡에서 파생될 수 밖에 없었을 거라 생각합니다.

설치법 자체는 간단합니다. 척와 소스를 내려 받습니다.

http://ftp.daum.net/apache/hadoop/chukwa/chukwa-0.4.0/ 여기에 가면 있습니다.

  
   $ cd ~/work
   $ tar xvzf chukwa-0.4.0.tar.gz
   $ cd chukwa-0.4.0
   $ ant

  
하면 컴파일 되면서 설치 완료 입니다.
척와를 제대로 동작시키기 위해서는 하둡이 설치되어 있어야 합니다.

하둡 설치는 예전 문서를 참조하시면 됩니다.

   ~/work/hadoop-1.0.2


에 하둡이 설치되어 있다고 가정합니다. 버젼은 1.0.2 버젼입니다. 그리고 물론 하둡은 떠 있는 상태여야만 합니다.

chukwa-env.sh 파일을 열어서 간단하게 편집해줍니다.

   $ cd ~/work/chukwa-0.4.0/
   $ emacs conf/chukwa-env.sh

chukwa-env.sh 내용


   export JAVA_HOME=/usr/lib/jvm/default-java
  
   export HADOOP_HOME="/home/crazia/work/hadoop-1.0.2"
   export HADOOP_CONF_DIR="/home/crazia/work/hadoop-1.0.2/conf"

   export chukwaRecordsRepository="/chukwa/"

   export CHUKWA_PID_DIR=/home/crazia/tmp/chukwa/pidDir

   export CHUKWA_LOG_DIR=/home/crazia/tmp/chukwa/log

 
위와 같은 부분을 찾아서 자신의 환경에 맞춰서 변경해줍니다.

  
$ emacs conf/collectors


collectors 내용
  
http://localhost:8080


이부분은 콜렉터 (로그 저장하는 데몬)가 떠 있는 위치를 지정하는 것입니다.

  
$ emacs conf/initial_adaptors

initial_adaptors 내용

  
   # add org.apache.hadoop.chukwa.datacollection.adaptor.ExecAdaptor Iostat 60 /usr/bin/iostat -x -k 55 2 0
   # add org.apache.hadoop.chukwa.datacollection.adaptor.ExecAdaptor Df 60 /bin/df -l 0
   # add org.apache.hadoop.chukwa.datacollection.adaptor.ExecAdaptor Sar 60 /usr/bin/sar -q -r -n ALL 55 0
   add org.apache.hadoop.chukwa.datacollection.adaptor.ExecAdaptor Top 60 /usr/bin/top -b -n 1 -c 0

앞의 세개는 루트 권한을 필요로 하기 때문에 # 처리 해 줍니다.

   $ cd ~/work/hadoop-1.0.2
   $ cp hadoop-core-1.0.2.jar hadoop-1.0.2-core.jar

   구동되는데 이 파일 (hadoop-1.0.2-core.jar) 이 필요합니다.

  
   $ cd ~/work/chukwa-0.4.0/lib
   $ cp ~/work/hadoop-1.0.2/lib/commons-configuration-1.6.jar .

컬렉터를 띄우는데 이 파일 (commons-configuration-1.6.jar) 이 필요하더군요.

이제 컬렉터를 띄워줍니다.

   $ cd ~/work/chuckwa-0.4.0
   $ bin/start-collectors.sh

로 띄우고

 
  $ bin/chukwa agent


로 agent 를 띄워줍니다.
  
http://localhost:50070 에서 실제로 파일이 저장되는지 확인해 봅니다. 대략 5분마다 한번씩  저장됩니다.