Linux 설치 및 구성 Flume

목차

1. 설치 패키지의 압축을 푼다

두 가지 구성 배포

        (1) 구성 수정 

        (2) 도구 다운로드 

        (3) 구성 파일 생성 

        (4) 듣기 테스트 시작 

        (5) 수로 모니터링 파일 


1. 설치 패키지의 압축을 푼다

        네트워크 디스크 리소스가 여기에 제공됩니다.

링크: https://pan.baidu.com/s/1Z0aItCHMybYpXkt3_RUaVw?pwd=s6pg 추출 코드: s6pg

        여기의 설치 패키지는 /opt/install 폴더에 있습니다.

        /opt/soft 디렉터리에 압축을 푼다. 

tar -zxf /opt/install/apache-flume-1.9.0-bin.tar.gz -C /opt/soft

        추출된 폴더 이름 바꾸기

cd /opt/soft
 mv apache-flume-1.9.0-bin/ flume190

두 가지 구성 배포

        (1) 구성 수정 

        Hadoop 3.1.3과 호환되도록 lib 폴더에서 guava-11.0.2.jar을 삭제합니다.

cd ../lib
rm -rf ./guava-11.0.2.jar
 cp /opt/soft/hadoop313/share/hadoop/common/lib/guava-27.0-jre.jar ./

        /opt/soft/flume190/conf/ 디렉토리를 입력하십시오.

 cd flume190/conf/

        Flume-env.sh.template이 flume-env.sh에 복사됩니다.

cp flume-env.sh.template ./flume-env.sh

         이 파일을 수정하세요

 vim flume-env.sh

         22행: jdk 경로를 원하는 대로 수정합니다.

22  export JAVA_HOME=/opt/soft/jdk180

         JDK 메모리 25라인 더 커짐

 25  export JAVA_OPTS="-Xms2000m -Xmx2000m -Dcom.sun.management.jmxremote"

        (2) 도구 다운로드 

yum install -y net-tools

        넷캣 설치 

yum install -y nc

        텔넷 서비스 설치

 yum install -y telnet-server

        텔넷 클라이언트 설치

yum install -y telnet.*

        텔넷 테스트

        두 개의 창을 각각 클라이언트와 서버로 엽니다.

        고객

telnet localhost 7777

        서비스 터미널

nc -lk 7777

        클라이언트가 전화를 걸어 명령문을 입력한 후 서버는 다음을 수신할 수 있습니다.

        서버가 중단되면 클라이언트도 중단됩니다.

        포트 7777이 사용 중인지 확인

netstat -lnp | grep 7777

        (3) 구성 파일 생성 

         myconf2 폴더 생성

mkdir myconf2

        conf 파일 생성 

 vim ./netcat-logger.conf
a1.sources=r1
a1.channels=c1
a1.sinks=k1

a1.sources.r1.type=netcat
a1.sources.r1.bind=localhost
a1.sources.r1.port=7777

a1.channels.c1.type=memory

a1.sinks.k1.type=logger

a1.sources.r1.channels=c1
a1.sinks.k1.channel=c1

        (4) 듣기 테스트 시작 

        이때 실행되는 경로는 /opt/soft/flume190이며, 이 명령의 일부 매개변수 경로는 상대 경로이므로 현재 경로에서 실행해야 한다.

 ./bin/flume-ng agent --name a1 --conf ./conf/ --conf-file ./conf/myconf2/netcat-logger.conf  -Dflume.root.logger=INFO,console

        이때 클라이언트에서 다시 컨텐츠를 다이얼하면 콘솔에서 볼 수 있습니다.

작성하는 첫 번째 방법:

[atguigu@hadoop102 flume]$ bin/flume-ng agent --conf conf/ --name a1 --conf-file job/flume-netcat-logger.conf -Dflume.root.logger=INFO,console

두 번째 글쓰기 방법:

[atguigu@hadoop102 flume]$ bin/flume-ng agent -c conf/ -n a1 -f job/flume-netcat-logger.conf -Dflume.root.logger=INFO,console

매개변수 설명:

--conf/-c: 구성 파일이 conf/ 디렉터리에 저장되어 있음을 나타냅니다.

--name/-n: 에이전트 이름을 a1로 지정합니다.

--conf-file/-f: 이번에 flume이 읽은 구성 파일은 job 폴더에 있는 flume-telnet.conf 파일입니다.

-Dflume.root.logger=INFO,console: -D는 flume이 실행 중일 때 flume.root.logger 매개변수 속성 값을 동적으로 수정하고 콘솔 로그 인쇄 수준을 INFO 수준으로 설정한다는 의미입니다. 로그 수준에는 로그, 정보, 경고, 오류가 포함됩니다.

        (5) 수로 모니터링 파일 

        myconf 폴더에서 새 구성 파일을 편집합니다.

vim ./flumelogger.econf
a2.sources=r1
a2.channels=c1
a2.sinks=k1

a2.sources.r1.type=exec
a2.sources.r1.command=tail -f /opt/kb23/flumefile.log

a2.channels.c1.type = memory
a2.channels.c1.capacity = 1000
a2.channels.c1.transactionCapacity = 100

a2.sinks.k1.type = logger

a2.sources.r1.channels = c1
a2.sinks.k1.channel = c1

        모니터링되는 파일 만들기

        내가 여기에 있는 것은 /opt/kb23/flumefile.log입니다.

        이 명령의 의미는 이 파일에 무언가가 추가되는 한 Flume에서 모니터링한다는 것입니다.

        달리다

 ./bin/flume-ng agent --name a2 --conf ./conf/ --conf-file ./conf/myconf2/filelogger.conf  -Dflume.root.logger=INFO,console

        flumefile.log 테스트에 뭔가를 쓰세요(다른 창)

echo "hello dio" >> /opt/kb23/flumefile.log

        감지되면 성공한 것입니다.

Guess you like

Origin blog.csdn.net/jojo_oulaoula/article/details/133124876