linux安装配置 flume

目录

[一 解压安装包](#一 解压安装包)

[二 配置部署](#二 配置部署)

(1)修改配置

(2)下载工具

(3)创建配置文件

(4)启动监听测试

(5)flume监控文件


一 解压安装包

这里提供了网盘资源

链接: 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)修改配置

将lib文件夹下的guava-11.0.2.jar删除以兼容Hadoop 3.1.3

复制代码
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

25 行 jdk 内存改大些

复制代码
 25  export JAVA_OPTS="-Xms2000m -Xmx2000m -Dcom.sun.management.jmxremote"

(2)下载工具

复制代码
yum install -y net-tools

安装 netcat

复制代码
yum install -y nc

安装 telnet 服务

复制代码
 yum install -y telnet-server

安装 telnet 客户端

复制代码
yum install -y telnet.*

测试 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:表示给agent起名为a1

--conf-file/-f:flume本次启动读取的配置文件是在job文件夹下flume-telnet.conf文件。

-Dflume.root.logger=INFO,console :-D表示flume运行时动态修改flume.root.logger参数属性值,并将控制台日志打印级别设置为INFO级别。日志级别包括:log、info、warn、error。

(5)flume监控文件

在 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

如果被监测到就是成功了

相关推荐
honsor7 分钟前
PoE温湿度传感器:一根网线供电+通信,即插即用,机房/配电室/仓库温湿度监测首选
运维·服务器·网络·数据库·人工智能·安全
码上有光14 分钟前
Linux:进程间通信——匿名管道通信、命名管道通信
android·java·linux·linux通信·匿名通信·命名通信
w01_02_0315 分钟前
cpu , 控制 ,计算。
linux
醇氧20 分钟前
uvicorn 详细介绍
linux·运维·python·python3.11
Qwier25 分钟前
Win Srv 2019 安装补丁后重启
运维·服务器·windows
海宇服务27 分钟前
零信任架构实战:基于海宇车辆出险记录核验构建自动化车险流转网关
运维·人工智能·架构·自动化
xiaoye-duck1 小时前
《Linux 网络编程》深入理解 IO 多路复用:select服务器完善、poll 接口详解与服务端改造实战
linux·网络
wacsii1 小时前
【Linux基础开发工具(二)】Vim编辑器从入门到实战:模式、命令、配置与常见问题全解析
linux
guo_wen_qiang1 小时前
云服务器elasticsearch环境搭建-单台
运维·elasticsearch·容器
Zhou1411361 小时前
CICD_01_持续集成与Jenkins入门
运维·ci/cd·jenkins