Flume ( 플룸)
- 텍스트 형태의 데이터를 수집하기 위해 사용하는 빅데이터 기술입니다.
- 일반적으로 로그 수집에 사용됩니다. 예를 들면 톰켓에서 주기적으로 생성되는 웹 로그 분석에 많이 사용됩니다.
- 공식적으로 윈도우 서버는 없고 리눅스에서 지원을 합니다.
- 웹 서버 > 소스 > 채널 > 싱크 > 하둡 순으로 흐릅니다.
- 소스 = 원천 파일을 가져가기 위한 데몬이고 가지고 가서 하둡에 보내기 위해
- 채널이란 길을 통해 전송을 하고
- 싱크를 통해 맞춰서 보냅니다.
위 링크에서 플룸을 설치해 주면 됩니다.
받은 플룸을 winSCP를 이용해 sw파일로 옮겨줍니다.
파일이 정상적으로 들어간 것을 확인할 수 있습니다.
/usr/local에 복사해 줍니다.
tar -zxvf apache-flume-1.9.0-bin.tar.gz
명령어를 통해 압축을 해제해 줍니다.
링크를 생성해 줍니다.
Flume 환경설정
환경 변수를 설정해 줍니다.
환경 변수 설정을 다 했다면 적용까지 해 줍니다.
bin은 명령어 폴더입니다.
conf는 환경설정 폴더입니다.
환경 설정을 해 줍니다.
자바 경로를 설정해 주고 주석을 풀어줍니다.
메모리 사용 최대, 최소치를 정해주는 부분이라 주석을 풀어서 제한하고 사용합니다.
서버 로그 파일 수집
수집되는 경로 설정입니다.
/flumeData/src
src 폴더에 생성된 파일을 flume이 읽어서 저장합니다.
수집된 데이터 저장 장소입니다.
/flumeData/output
src 폴더로부터 저장된 파일들이 수집되는 장소입니다.
Flume 동작 설정을 해 줍니다.
생성 에이전트 : myFlume
동작 설정은 propertise 파일 생성을 통해 정의합니다.
myFlume.sources = dirSrc
myFlume.channels = memChannel
myFlume.sinks = fileSink
myFlume.sources.dirSrc.channels = memChannel
myFlume.sinks.fileSink.channel = memChannel
myFlume.sources.dirSrc.type = spoolDir
myFlume.sources.dirSrc.spoolDir = /flumeData/src
myFlume.sinks.fileSink.type = file_roll
myFlume.sinks.fileSink.sink.directory = /flumeData/output
myFlume.sinks.fileSink.sink.rollInterval = 0
myFlume.channels.memChannel.type = memory
myFlume.channels.memChannel.capacity = 100
Flume 동작 설정을 해 줍니다.
myFlume은 에이전트 명 입니다.
여기서 오타가 나서 아래서 좀 힘들었습니다.
항상 오타를 주의하면서 코딩해 줍니다.
서버 로그 파일 수집 - 실행
시작하기 전에 위에서 폴더 명을 잘 못 설정해서 다시 수정해 줍니다.
파일을 실행시키고 다른 putty를 켜줍니다.
새로운 putty에서 실행을 시켜줍니다.
정상적으로 파일이 만들어 졌습니다.
정상 실행 완료 !
'Data Base > Hadoop' 카테고리의 다른 글
[Hadoop] : 웹 서버 배포(3부) (0) | 2021.11.18 |
---|---|
[Hadoop] : 웹 서버 배포(2부) (0) | 2021.11.18 |
[Hadoop] : 웹 서버 배포(1부) (0) | 2021.11.18 |
[Hadoop] : Apache Flume 응용 (2부) (0) | 2021.11.11 |
[Hadoop] : Apache Flume 응용 (1부) (0) | 2021.11.11 |
댓글