1) 在jobconf目錄建立flume-hdfs.conf檔案
# 1.定義agent的名字a2
a2.sources = r2
a2.sinks = k2
a2.channels = c2
#2.定義Source
a2.sources.r2.type = exec
a2.sources.r2.command = tail -F /opt/Felix Felix是檔案,這裡把自己坑了一次
a2.sources.r2.shell = /bin/bash -c
#3.定義sink
a2.sinks.k2.type = hdfs
a2.sinks.k2.hdfs.path = hdfs://bigdata121:9000/flume/%H (注意修改為自己的機器)
#上傳檔案的字首
a2.sinks.k2.hdfs.filePrefix = Andy-
#是否按照時間滾動檔案夾
a2.sinks.k2.hdfs.round = true
#多少時間機關建立一個新的檔案夾
a2.sinks.k2.hdfs.roundValue = 1
#重新定義時間機關
a2.sinks.k2.hdfs.roundUnit = hour
#是否使用本地時間戳
a2.sinks.k2.hdfs.useLocalTimeStamp = true
#積攢多少個Event才flush到HDFS一次
a2.sinks.k2.hdfs.batchSize = 1000
#設定檔案類型,可支援壓縮
a2.sinks.k2.hdfs.fileType = DataStream
#多久生成一個新的檔案
a2.sinks.k2.hdfs.rollInterval = 600
#設定每個檔案的滾動大小
a2.sinks.k2.hdfs.rollSize = 134217700
#檔案的滾動與Event數量無關
a2.sinks.k2.hdfs.rollCount = 0
#最小副本數
a2.sinks.k2.hdfs.minBlockReplicas = 1
# 4.定義Channel
a2.channels.c2.type = memory
a2.channels.c2.capacity = 1000
a2.channels.c2.transactionCapacity = 100
# 5.連結
a2.sources.r2.channels = c2
a2.sinks.k2.channel = c2
執行監控配置 指令如下 :
/opt/module/flume1.8.0/bin/flume-ng agent \
--conf /opt/module/flume1.8.0/conf/ \
--name a2 \
--conf-file /opt/module/flume1.8.0/jobconf/flume-hdfs.conf
注: flume-hdfs.conf 這個檔案是自己配置的,還有jobconf 檔案夾也是建立的
在bigdata112上寫入資料到vi Andy ,結果如下