복붙노트

[HADOOP] 수로는 - 계층화 데이터 브로 소스 및 싱크 [폐쇄]를 사용하여 흐르는

HADOOP

수로는 - 계층화 데이터 브로 소스 및 싱크 [폐쇄]를 사용하여 흐르는

나는 다른 컴퓨터에 두 개의 에이전트 사이에 브로 소스 / 싱크를 사용하여 간단한 계층 형 데이터 흐름을 설정하려고 시도하고있다.

( "제"라고도 함)는 VM-01 호스트 노드의 제 1 약제는 netcat을 소스, memorychannel 및 브로 싱크를 갖는다.

"집"라는 VM-02 호스트 노드에서 제 2 제제는 (a 브로 소스, 메모리 채널, 및 HDFS 싱크를 갖는다.

여기에 첫 번째 에이전트 "에이전트"에 대한 설정입니다.

agent.sources=s1
agent.channels=c1
agent.sinks=k1

agent.sources.s1.type=netcat
agent.sources.s1.channels=c1
agent.sources.s1.bind=vm-host-01
agent.sources.s1.port=12345

agent.channels.c1.type=memory

agent.sinks.k1.type=avro
agent.sinks.k1.channel=c1
agent.sinks.k1.hostname=vm-host-02
agent.sinks.k1.port=42424

여기서 두 번째 시스템에서 제 2 제제 "집"에 대한 구성은 :

collector.sources=av1
collector.channels=c1
collector.sinks=k1

collector.sources.av1.type=avro
collector.sources.av1.bind=vm-host-02
collector.sources.av1.port=42424
collector.sources.av1.channels=c1

collector.channels.c1.type=memory

collecor.sinks.k1.type=hdfs
collecor.sinks.k1.hdfs.path=/user/root/flume/mydata
collecor.sinks.k1.hdfs.fileType=DataStream
collecor.sinks.k1.hdfs.writeType=text
collecor.sinks.k1.hdfs.filePrefix=Hello
collecor.sinks.k1.hdfs.fileSuffix=.txt
collecor.sinks.k1.channel=c1

내가 어떤 문자열을 첫 번째 호스트로 (VM 호스트-01) 텔넷 입력하면 이제 첫 번째 에이전트의 명령 프롬프트가 변경되지 않습니다. (나도 두 번째 호스트의 명령 프롬프트하지 않습니다).

나는 "에이전트"에 대한 설정을 편집하고 HDFS과의 싱크를 변경하는 경우, 나는, 문자열을 입력에서 텔넷이 acknolwedge 명령 프롬프트를보고는 HDFS에 썼다되어 있습니다.

그냥 아 브로 싱크를 추가하면 입력을 받아들이로부터 netcat을 소스를 비활성화 할 것으로 보인다.

해결법

  1. ==============================

    1.아차, 나는 "집"과 같은 "컬렉터"를 mispelled.

    아차, 나는 "집"과 같은 "컬렉터"를 mispelled.

  2. from https://stackoverflow.com/questions/23965075/flume-tiering-data-flows-using-the-avro-source-and-sink by cc-by-sa and MIT license