메뉴 건너뛰기

Cloudera, BigData, Semantic IoT, Hadoop, NoSQL

Cloudera CDH/CDP 및 Hadoop EcoSystem, Semantic IoT등의 개발/운영 기술을 정리합니다. gooper@gooper.com로 문의 주세요.


/tmp/data/work_result에 파일이 들어오면 spooldir에 의해서 파일을 읽어 memoryChannel을 통하여 HDFS의 hdfs://nameservice1:8020/DATA/work_result에 저장한다.

spool된 파일은 "agent.sources.spooldirSource.deletePolicy = immediate"설정에 의해서 OS상의 파일이 삭제된다.

그리고 HDFS에는 flume소유자로 파일이 생성된다.


---------flume.conf-----------

agent.sources = spooldirSource

agent.channels = memoryChannel

agent.sinks = hdfsSink


agent.sources.spooldirSource.type = spooldir

agent.sources.spooldirSource.spoolDir = /tmp/data/work_result

agent.sources.spooldirSource.channels = memoryChannel

agent.sources.spooldirSource.deserializer.maxLineLength = 100000000

agent.sources.spooldirSource.basenameHeader = true

agent.sources.spooldirSource.deletePolicy = immediate


agent.channels.memoryChannel.type = memory

agent.channels.memoryChannel.capacity = 1000000

agent.channels.memoryChannel.transactionCapacity = 1000



agent.sinks.hdfsSink.type = hdfs

agent.sinks.hdfsSink.channel = memoryChannel

agent.sinks.hdfsSink.hdfs.path = hdfs://nameservice1:8020/DATA/work_result

agent.sinks.hdfsSink.hdfs.fileType = DataStream

agent.sinks.hdfsSink.hdfs.rollCount = 0

agent.sinks.hdfsSink.hdfs.rollInterval= 300

agent.sinks.hdfsSink.hdfs.rollSize= 100000000

agent.sinks.hdfsSink.hdfs.batchSize = 100

agent.sinks.hdfsSink.hdfs.filePrefix = %{basename}

agent.sinks.hdfsSink.hdfs.kerberosPrincipal = flume@GOOPER.COM

agent.sinks.hdfsSink.hdfs.kerberosKeytab = /var/lib/keytab/flume.keytab

agent.sinks.hdfsSink.hdfs.proxyUser = flume

위로