安裝包下載安裝
上傳至/opt/software 目錄下
解壓
[kevin@hadoop112 software]$ tar -zxvf apache-flume-1.7.0-bin.tar.gz -C /opt/module/
- 改名
[kevin@hadoop112 software]$ cd /opt/module/
[kevin@hadoop112 module]$ mv apache-flume-1.7.0-bin flume-1.7.0
- 配置
[kevin@hadoop112 module]$ cd flume-1.7.0/conf/
[kevin@hadoop112 conf]$ mv flume-env.sh.template flume-env.sh
[kevin@hadoop112 conf]$ vim flume-env.sh
export JAVA_HOME=/opt/module/jdk1.8.0_241
測試--監(jiān)控端口數(shù)據(jù)官方案例
- 安裝 netcat 工具
[kevin@hadoop112 flume-1.7.0]$ sudo yum install -y nc
- 判斷 44444 端口是否被占用
[kevin@hadoop112 flume-1.7.0]$ sudo netstat -tunlp | grep 44444
- 創(chuàng)建 Flume Agent 配置文件 flume-netcat-logger.conf
[kevin@hadoop112 flume-1.7.0]$ mkdir jobs
[kevin@hadoop112 flume-1.7.0]$ cd jobs/
[kevin@hadoop112 jobs]$ touch flume-netcat-logger.conf
[kevin@hadoop112 jobs]$ vim flume-netcat-logger.conf
- 在 flume-netcat-logger.conf 文件中添加如下內(nèi)容。
# Name the components on this agent
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# Describe/configure the source
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44444
# Describe the sink
a1.sinks.k1.type = logger
# Use a channel which buffers events in memory
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100
# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
- 先開啟 flume 監(jiān)聽端口
[kevin@hadoop112 flume-1.7.0]$ bin/flume-ng agent -c conf/ -n a1 -f jobs/flume-netcat-logger.conf -Dflume.root.logger=INFO,console
這里成了阻塞進程
參數(shù)說明:
--conf/-c:表示配置文件存儲在 conf/目錄
--name/-n:表示給 agent 起名為 a1
--conf-file/-f:flume 本次啟動讀取的配置文件是在 job 文件夾下的 flume-telnet.conf
文件。
-Dflume.root.logger=INFO,console :-D 表示 flume 運行時動態(tài)修改 flume.root.logger
參數(shù)屬性值,并將控制臺日志打印級別設(shè)置為 INFO 級別。日志級別包括:log、info、warn、
error。
- 另開一個會話,使用 netcat 工具向本機的 44444 端口發(fā)送內(nèi)容
[kevin@hadoop112 ~]$ nc localhost 44444
# 然后在這個會話隨便輸入一些內(nèi)容,回車,回看上面的阻塞進程是否接收到這里所輸入的內(nèi)容
- 退出 Ctrl + C
分發(fā)
[kevin@hadoop112 module]$ xsync.sh flume-1.7.0/