flume最主要的作用就是实时读取服务器本地磁盘的数据,将数据写入到hdfs中
架构:
开始安装
一,上传压缩包,解压并更名
解压:[root@siwen install]# tar -zxf apache-flume-1.9.0-bin.tar.gz -C ../soft/
[root@siwen install]# cd ../soft/
更名:[root@siwen soft]# mv apache-flume-1.9.0-bin/ flume190
二:修改配置文件
1,flume-env.sh文件
[root@siwen soft]# cd ./flume190/conf/
复制flume-env.sh文件:[root@siwen conf]# cp flume-env.sh.template flume-env.sh
[root@siwen conf]# vim ./flume-env.sh
export JAVA_OPTS="-Xms1000m -Xmx2000m -Dcom.sun.management.jmxremote"
export JAVA_HOME=/opt/soft/jdk180
2,netcat-logger.conf文件
[root@siwen conf]# vim ./netcat-logger.conf
# Name the components on this agent a1表示agent的名称
a1.sources=r1 #r1表示a1的source名称
a1.sinks=k1 #k1表示a1的sink名称
a1.channels=c1 #c1表示a1的channel名称
# configure the source
a1.sources.r1.type=netcat #表示a1的输入源类型为netcat端口类型
a1.sources.r1.bind=localhost #表示a1的监听的主机
a1.sources.r1.port=8888 #表示a1的监听的端口号
# Use a channel which buffers events in memory
a1.channels.c1.type=memory # 表示示a1的channel类型是memory内存型
a1.channels.c1.capacity=1000 # 表示a1的channel总容量1000个event
a1.channels.c1.transactionCapacity=100 # 表示a1的channel传输时收集到了100条event以后再去提交事务
# Describe sink
a1.sinks.k1.type=logger
a1.sources.r1.channels=c1 #表示将r1和c1连接起来
a1.sinks.k1.channel=c1 #表示将k1和c1连接起来
三:下载工具
//下载netcat
[root@siwen conf]# yum install -y nc
//查看telnet
[root@siwen conf]# yumlist telnet.*
//安装telnet
[root@siwen conf]# yum install telnet-server
[root@siwen conf]# yum install telnet.*
四:启动
启动的命令:[root@siwen flume190]# ./bin/flume-ng agent --name a1 --conf ./conf/ --conf-file ./conf/netcat-logger.conf -Dflume.root.logger=INFO,console
注意:
–conf/-c:表示配置文件存储在 conf/目录
–name/-n:表示给 agent 起名为 a1
–conf-file/-f:flume 本次启动读取的配置文件是在 job 文件夹下的 netcat-logger.conf 文件
-Dflume.root.logger=INFO,console :-D 表示 flume 运行时动态修改 flume.root.logger
# 重新开一个窗口 拨号发送hello
[root@siwen ~]# telnet 192.168.255.159 8888
主机那边就会得到反馈