安装节点要求:
- jdk1.8以上
- 内存空间足够
- 磁盘空间足够
- 文件夹具有读写权限
- hadoop
- zookeeper
1.上传安装包
put c:/apache-flume-1.8.0-bin.tar.gz
2.解压
tar -xzvf apache-flume-1.8.0-bin.tar.gz -C /home/hadoop/apps
3.修改配置文件
cd /home/hadoop/apps/apache-flume-1.8.0-bin/conf
修改模板名
mv flume-env.sh.template flume-env.sh
进行编辑
vi flume-env.sh
flume一般不配置环境变量,至此安装完成
4.远程发送flume
使用中一般要用到多台机器
scp -r apache-flume-1.8.0-bin hadoop02:/home/hadoop/apps/
scp -r apache-flume-1.8.0-bin hadoop03:/home/hadoop/apps/
5.简单使用
选择文件存放路径(可随意设置)
cd /home/hadoop/apps/apache-flume-1.8.0-bin/conf
直接新建一个
vi example.conf
加入以下内容
# a1 当前这个agent的名字
# a1 的 source 别名
a1.sources = r1
# a1 的sink 别名
a1.sinks = k1
# a1 的通道 别名
a1.channels = c1
# 指定source 来自于端口的
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44455
# 指定channel
a1.channels.c1.type = memory
# 指定sink的类型 logger 控制台打印
a1.sinks.k1.type = logger
# 绑定 channel sink source
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1
启动flume,确保没有报错
../bin/flume-ng agent --conf conf --conf-file /home/hadoop/apps/apache-flume-1.8.0-bin/conf/example.conf --name a1 -Dflume.root.logger=INFO,console
然后我们在当前虚拟机中在打开一个窗口
安装一下telnet用来模拟消息发送
sudo yum install -y telnet
安装完成之后连接我们在上面设置的44455窗口(若flume没有正常启动,telnet会报连接被拒的错误)
telnet localhost 44455
直接输入消息按回车发送
hello world
可以看到另一个窗口接收到了消息
关闭的时候只需要使用ctrl+c直接终止就可以了,再用kill -9 杀掉 Application进程