검색결과 리스트
taildir에 해당되는 글 1건
- 2013.03.07 flume 설치 해보고 로그 수집하기
flume 이란 ?
FLUME ARCHITECTURE
master : 저장소 + Flume master
Agent : 데이터를 생산하는 시스템에 설치.
Collector : 에이전트로 부터 데이터를 수집하여 HDFS에 보내는 역할
( 에이전트와 콜렉터 상태 모니터링 )
에이전트가 발생한 로그나 데이터들을 모니터링하여 데이터 스트림을 생성하여 콜렉터로 보낸다.
콜렉터는 작은 스트림들을 묶어서 보다 큰 스트림으로 뭉친 다음 HDFS에 저장한다
하둡을 설치한 머신에 flume을 같이 설치하는 경우에는 hadoop namenode 포트를 변경해 줘야 한다.
왜 그런지 모르겠으나 flume 설치후 namenode가 시작이 안된다.
그리고 flume설치후 리부트를 하면 flume master 데몬은 띄우면 안된다.
자동 실행되기때문에 재 실행하면 떠있는 데몬이 죽는다.
flume 다운로드
http://archive.cloudera.com/cdh4-deprecated/cdh/4/flume-0.9.4-cdh4.0.1.tar.gz
압축해제
tar xvfz flume-0.9.4-cdh4.0.1.tar.gz
환경변수 설정
gedit /etc/profile
export FLUME_HOME=/usr/lib/flume
export FLUME_CONF_DIR=/usr/lib/flume/conf
flume-site.xml 수정
cd /home/hadoop/flume/conf
vi flume-site.xml
<configuration>
<property>
<name>flume.master.servers</name>
<value>flumemaster</value>
<description>This is the address for the config servers status
server (http)
</description>
</property>
</configuration>
flume master 실행
$ ./bin/flume master
flume을 최초에 실행하고 나서 리부트 하면
자동으로 Flume 데몬이 뜨므로 다시 띄우면 안됨
다시 띄우면 데몬이 죽고 다시 실행이 안됨
http://localhost:35871/
Flume Agent 실행
새로운 터미널을 열어서 아래 행을 실행한다.
$ ./bin/flume node_nowatch -n agent01
http://localhost:35862/
Flume Collector
새로운 터미널을 열어서 아래 행을 실행한다.
$ ./bin/flume node_nowatch -n collector01
tail과 tailDir 소스 설정법
규칙 : tail("filename"[,startFromEnd=false]{.delim="regex", delimMode="exclude|prev|next"})
사용예 : tail("파일명")
규칙 : 약("dirname"[, fileregex=".*"[, startFromEnd=(false[, recurseDepth=0]]]{,delim="regex", delimMode="exclude|prev|next"})
사용예 : tailDir("디렉터리명)
실습을 위한 flume master 설정
http://localhost:35871/
위 url로 들어가서 config에서 설정하는 방법과 쉘 커멘드에서 설정하는 방법이 있다.
아래는 쉘 커멘드로 설정하는 방법이다.
flume 쉘 커멘드 실행
새로운 터미널을 연다.
$./flume shell -c localhost
exec config agent 'tail("/usr/lib/flume/test.txt")' 'agentSink("localhost",35853)'
exec config collector 'collectorSource(35853)' 'collectorSink("file:///usr/local/flume/collected", "test")'
exec config agent 'tailDir("/usr/local/hadoop-1.0.4/logs/")' 'agentSink("localhost",35853)'
exec config collector 'collectorSource(35853)' 'collectorSink("file:///usr/local/flume/collected", hadoop_log")'
flume master에서 결과 확인
http://localhost:35871/
colleced 폴더에 로그파일이 수집된 모습
수집된 파일의 내용
hadoop 데몬 (0) | 2013.02.19 |
---|---|
하둡 Master / Slave 접근방식과 ssh의 설정 (0) | 2013.02.19 |
하둡 설정 파일 (0) | 2013.02.19 |
HDFS의 특징 (0) | 2013.02.19 |
hadoop HDFS 명령어 (0) | 2013.02.19 |
RECENT COMMENT