首先我们需要下载此次任务所需要的工具Xshell与flume的压缩包
链接:https://pan.baidu.com/s/1iXBWhVDVFUaAt6TUKgiwLA
提取码:wc9i
一、压缩包的传输
1、使用xshell连接到虚拟机后点击“帮助”下方的XFTP插件图标的(不会使用xhell远程连接的可以参考这篇文章)
2、找到下载好的filme的tar包双击开始传输到虚拟机上
二、解压
1、在xshell上或者是虚拟机的终端输入命令:tar -zvxf apache-flume-1.7.0-bin.tar.gz开始解压tar包
2、输入命令:ll 就可以查看已经解压好的内容了,接着输入命令:cd apache-flume-1.7.0-bin/conf/进入conf文件下
三、配置文件与环境变量
1、输入命令:nano flume-env.sh (或者vi flume-env.sh), 添加JDK安装路径(如没有,则需安装JDK) export JAVA_HOME=/home/yt/jdk18.0.2.1(这里为自己服务器上JDK的位置)
2、在conf下创建一个flume.conf的文件夹
3、输入命令:ls看是否创建成功
4、输入命令:nano /etc/profile配置环境改变量,输入以下内容
export FLUME_HOM=...........(这里为自己flume的安装路径)
export PATH=$PATH:$FLUME_HOME/bin(ctrl+x+Y保存)
5、输入命令:source /etc/profile加载环境变量使它生效
四、查看版本信息
输入命令:flume-ng version查看版本信息
五、创建并启动agent
1、首先我们需要安装netcat网络工具,在这之前先把镜像改为阿里云的镜像, 输入命令:vim /etc/yum.repos.d/CentOS-Base.repo编辑里面内容
2、将原来的[base]以下的内容全部换成以下内容
[base]
name=CentOS-6.10
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/os/$basearch/
gpgcheck=0
enabled=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-6
#released updates
[updates]
name=CentOS-6.10
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/updates/$basearch/
gpgcheck=0
enabled=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-6
#additional packages that may be useful
[extras]
name=CentOS-6.10
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/extras/$basearch/
gpgcheck=0
enabled=1
gpgkey=http://vault.centos.org/RPM-GPG-KEY-CentOS-6
4、保存后输入如下命令
5、接下来就可以使用命令:yum install -y nc下载网络工具
出现如图即为完成
6、接着在解压好的fulme文件下创建通过jobs文件
7、创建好jobs文件以后输入命令:nano netcat-flume-logger.conf编辑里面内容
输入内容为
example.conf: A single-node Flume configuration
Name the components on this agent
yt:表示 agent 的名称
r1:表示 yt 的 Source 的名称
k1:表示 yt 的 Sink 的名称
c1:表示 yt 的 Channel 的名称
yt.sources = r1
yt.sinks = k1
yt.channels = c1
Describe/configure the source
表示 yt 的输入源类型为 netcat 端口类型
yt.sources.r1.type = netcat
表示 a1 的监听的主机
yt.sources.r1.bind = localhost
表示 yt 的监听的端口号
yt.sources.r1.port = 44444
Describe the sink
表示 yt 的输出目的地是控制台 logger 类型
yt.sinks.k1.type = logger
Use a channel which buffers events in memory
表示 yt 的 channel 类型是 memory 内存型
yt.channels.c1.type = memory
表示 yt 的 channel 总容量 1000 个
event yt.channels.c1.capacity = 1000
表示 yt 的 channel 传输时收集到了 100 条 event 以后再去提交事务 yt.channels.c1.transactionCapacity = 100
Bind the source and sink to the channel
表示将 r1 和 c1 连接起来
yt.sources.r1.channels = c1
表示将 k1 和 c1 连接起来
yt.sinks.k1.channel = c1
8、完成什么步骤后输入命令flume-ng agent -c conf/ -n yt -f jobs/netcat-flume-logger.conf -Dflume.root.logger=INFO,console启动agent
六、验证
1、在虚拟机的终端上输入命令:nc localhost 44444+enter在输入内容hello
2、打开xhell发现已经监听到我们输入分内容。
如图就全部完成了
版权归原作者 qq_61247494 所有, 如有侵权,请联系我们删除。