2012-09-25 4 views
2

AWS의 S3 버킷에있는 모든 항목을 쓰는 Flume consolidator가 있습니다.Flume HDFS 싱크의 S3 경로 오류

디렉토리 경로에 문제가 있습니다.

이벤트는/flume/events/% y- % m- % d/% H % M에 기록되지만 // flume/events/% y- % m- % d에 있습니다./% H % M.

Flume이 처음에 "/"를 하나 더 추가하는 것 같습니다.

이 문제점에 대한 아이디어가 있습니까? 내 경로 구성에 문제가 있습니까?

master.sources = source1 
master.sinks = sink1 
master.channels = channel1 

master.sources.source1.type = netcat 
# master.sources.source1.type = avro 
master.sources.source1.bind = 0.0.0.0 
master.sources.source1.port = 4555 

master.sources.source1.interceptors = inter1 
master.sources.source1.interceptors.inter1.type = timestamp 

master.sinks.sink1.type = hdfs 
master.sinks.sink1.hdfs.path = s3://KEY:[email protected]/flume/events/%y-%m-%d/%H%M 
master.sinks.sink1.hdfs.filePrefix = event 
master.sinks.sink1.hdfs.round = true 
master.sinks.sink1.hdfs.roundValue = 5 
master.sinks.sink1.hdfs.roundUnit = minute 

master.channels.channel1.type = memory 
master.channels.channel1.capacity = 1000 
master.channels.channel1.transactionCapactiy = 100 

master.sources.source1.channels = channel1 
master.sinks.sink1.channel = channel1 

답변

0

Flume NG HDFS 싱크는 S3 지원에 특별한 기능을 구현하지 않습니다. Hadoop에는 S3에 대한 일부 내장 지원 기능이 있지만 적극적으로 작업하는 사람은 없습니다. 내가들은 바에 따르면 다소 오래된 버전이며 실패로 인한 내구성 문제가있을 수 있습니다.

그건 그렇고, "충분히 좋아"그것을 사용하는 사람들을 알고 있습니다.

"// xyz"(여러 개의 인접한 슬래시가 있음)가 S3의 유효한 경로 이름입니까? 대부분의 유닉스는 인접한 슬래시를 접습니다.

+0

예, "// xyz"는 S3의 유효한 경로입니다. 그러나이 로그 항목을 살펴보십시오 : [DEBUG - org.jets3t.service.impl.rest.httpclient.RestS3Service.setupConnection (RestS3Service.java:811)] S3 URL : https://BUCKET.s3.amazonaws.com:443/ % 2F –

+3

해결되었습니다! * .hdfs.path가 s3 : //에서 s3n : //으로 변경되었으며 완벽하게 작동합니다! –

+0

니스! 솔루션을 게시 주셔서 감사합니다. –