Hadoop日志文件收集系统flume的搭建

Hadoop日志文件收集系统flume

  • flume tar包下载
    • 解压并修改其解压文件夹名称(修改为flume)
    • 配置/etc/profile,并source生效
    • 配置flume-env.sh的JAVA_HOME
    • 进入flume安装路径,启动查看flume版本信息
    • 两个flume运用的实例

注意:做次实验的前提,Hadoop完全分布式系统或伪分布式系统必须要能运行,虚拟机本身必须安装了Java_jdk。
系统环境:VMware+centos7+Hadoop-2.7.3+flume-1.9.0

flume tar包下载

http://www.apache.org/dyn/closer.lua/flume/1.9.0/apache-flume-1.9.0-bin.tar.gz(我选的是第一个网址)
Hadoop日志文件收集系统flume的搭建_第1张图片

解压并修改其解压文件夹名称(修改为flume)

解压:tar -zxvf apache-flume-1.9.0-bin.tar.gz
修改文件夹名称:mv 修改前的名称 flume

配置/etc/profile,并source生效

打开配置文件: vi /etc/profile
添加一下配置(每个人的安装路径不一样,具体路径请参考自己的安装位置):

#flume
export FLUME_HOME=/opt/module/flume
export FLUME_CONF_DIR=$FLUME_HOME/conf
export PATH=$FLUME_HOME/bin:$PATH

使配置问价生效:source /etc/profile

配置flume-env.sh的JAVA_HOME

进入安装配置文件所在位置:cd conf
在这里插入图片描述
将flume-env.sh.template文件更名为flume-env.sh:mv flume-env.sh.template flume-env.sh
打开flume-env.sh文件:vi flume-env.sh
Hadoop日志文件收集系统flume的搭建_第2张图片
找到# export JAVA_HOME=/usr/lib/jvm/java-8-oracle
在下面添加一行自己的JAVA_HOME,如 上图所示(每个人的java_jdk安装路径不一样,请自行去 /etc/profile中查询自己的jdk)

进入flume安装路径,启动查看flume版本信息

进入bin目录:cd ../bin
执行命令:./flume-ng version
Hadoop日志文件收集系统flume的搭建_第3张图片
如图所示,则配置成功。
提示
若果之前安装了Hbase,则可能报错,如果报错则修改hbase-env.sh配置文件,将hbase-env.sh中的export HBASE_CLASSPATH=/opt/module…这一行注释掉(前面加上“#”),最后保存并退出,重新运行./flume-ng version

两个flume运用的实例

  1. 使用Flume接收来自AvroSource的信息
    (1)创建Agent配置文件
    在flume的安装根目录下执行:vi avro.conf
    在avro.conf文件中添加(下面代码中的4141要记住,下面教程中会用到):

    #first test
    a1.sources = r1
    a1.sinks = k1
    a1.channels = c1
    #Describe/configure the source
    a1.sources.r1.type = avro
    a1.sources.r1.channels = c1
    a1.sources.r1.bind = 0.0.0.0
    a1.sources.r1.port = 4141
    #Describe the sink
    a1.sinks.k1.type = logger
    #Use a channel which buffers events in memory
    a1.channels.c1.type = memory
    a1.channels.c1.capacity = 1000
    a1.channels.c1.transactionCapacity = 100
    #Bind the source and sink to the channel
    a1.sources.r1.channels = c1
    a1.sinks.k1.channel = c1
    

(2)执行下面命令启动日志控制台:
bin/flume-ng agent --conf conf/ --name a1 --conf-file avro.conf -Dflume.root.logger==INFO,console
如图所示没看见报错就是成功了:
Hadoop日志文件收集系统flume的搭建_第4张图片
(3)创建指定文件
Hadoop日志文件收集系统flume的搭建_第5张图片
次实验需要三个窗口,如上图所示。另外新开第二个xhell连接窗口或者其他的连接软件(secureCRT等,原理相同——>一个连接软件三个连接窗口),连接上你的这台虚拟机,并在flume的安装目录(我的是:/opt/module/flume)下创建log.00文件(方法:vi log.00,保存并退出———>这样就创建成功了)
在flume目录下执行:

sh -c 'echo "hello world"> /opt/module/flume/log.00'

再新开第三个窗口,进入flume目录,执行下面命令:

  ./bin/flume-ng avro-client --conf cong -H localhost -p 4141 -F /opt/module/flume/log.00

出现下图所示的信息,且没有报错——>成功
Hadoop日志文件收集系统flume的搭建_第6张图片
此时切换到第一个窗口,看看接收到的信息:
Hadoop日志文件收集系统flume的搭建_第7张图片
可以看到flume已经接收到了hello world了。
2. 使用flume接收来自netcatsource的信息
netcatsource可以把用户实时输入的信息不断地发送给flume,flume接收到以后可以进行相应的处理,例如显示到屏幕上。
在第二个窗口执行下面内容:
(1)在flume的安装目录的conf目录中新建example.conf文件(可在第二个窗口中进行):

vi example.conf

添加下面内容:

#exmple.conf: A single-node Flume configuration
# Name the components on this agent
a1.sources = r1
a1.sinks = k1
a1.channels = c1
# Describe/configure the source
# Flume提供了各种source的实现,包括Avro Source、 Exce Source、 Spooling Directory Source、 NetCat Source、 Syslog Source、 #Syslog TCP Source、Syslog UDP Source、 HTTP Source、 HDFS Source, etc
a1.sources.r1.type = netcat
a1.sources.r1.bind = localhost
a1.sources.r1.port = 44444
#记住上面44444端口号,下面会用到!
# Describe the sink
# 包括HDFS sink、 Logger sink、 Avro sink、 File Roll sink、 Null sink、 HBasesink, etc
a1.sinks.k1.type = logger

# Use a channel which buffers events in memory
# Flume对于Channel,则提供了Memory Channel、 JDBC Chanel、 File Channel,etc
a1.channels.c1.type = memory
a1.channels.c1.capacity = 1000
a1.channels.c1.transactionCapacity = 100

# Bind the source and sink to the channel
a1.sources.r1.channels = c1
a1.sinks.k1.channel = c1

(2)执行命令(在flume目录):
./bin/flume-ng agent --conf ./conf --conf-file ./conf/example.conf --name a1 -Dflume.root.logger=INFO,console
出现下图,证明运行成功:
Hadoop日志文件收集系统flume的搭建_第8张图片
(3)在第三个窗口安装Telnet服务(自行百度,网上教程丰富)
执行Telnet 会出现下面界面,证明Telnet安装成功,接着执行命令:telnet localhost 44444
界面如图所示:
Hadoop日志文件收集系统flume的搭建_第9张图片
(4)测试结果(在第三个窗口输入信息):
Hadoop日志文件收集系统flume的搭建_第10张图片
未完待续…

你可能感兴趣的:(计算机)