zoukankan      html  css  js  c++  java
  • Flume NG安装部署及数据采集测试

    转载请注明出处:http://www.cnblogs.com/xiaodf/

    Flume作为日志收集工具,监控一个文件目录或者一个文件,当有新数据加入时,采集新数据发送给消息队列等。

    1 安装部署Flume

    若要采集数据节点的本地数据,每个节点都需要安装一个Flume工具,用来做数据采集。

    1.1 下载并安装

    到官网去下载最新版本的Flume

    下载地址为:http://flume.apache.org/,目前最新版本为1.6.0,需要1.7及以上版本的JDK。

    1、解压

    tar -xzvf apache-flume-1.6.0-bin.tar.gz  -C /usr/local/

    2、安装JDK1.7

       如果节点上JDK版本低于1.7,需要安装1.7或以上版本的JDK

    JDK 1.7 下载地址:

    http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

    在Flume目录下创建一个java目录,存放JDK

    cd /usr/local/apache-flume-1.6.0-bin
    mkdir java
    cd java
    tar -xzvf jdk-7u79-linux-x64.tar.gz

    1.2 配置Flume系统参数

    修改 flume-env.sh 配置文件,主要是JAVA_HOME变量设置

    cd /usr/local/apache-flume-1.6.0-bin/conf
    cp flume-env.sh.template flume-env.sh
    

    在flume-env.sh里面设置FLUME_CLASSPATH变量和JAVA_HOME变量,

    示例:

    export JAVA_HOME=/usr/local/apache-flume-1.6.0-bin/java/jdk1.7.0_79
    FLUME_CLASSPATH="/usr/local/apache-flume-1.6.0-bin/"
    

    变量具体内容根据实际修改

    1.3 添加Flume第三方依赖

    此处自定义了一个flume拦截器,没有的话,可忽略此步。

    添加第三方依赖包flume-plugins-1.0-SNAPSHOT.jar,此包实现了一个Flume拦截器,将Flume采集到的数据进行序列化、结构化等预处理,最后每条数据生成一条Event数据返回。

    cd /usr/local/apache-flume-1.6.0-bin
    mkdirplugins.d    --创建依赖目录,目录名必须为plugins.d
    cdplugins.d
    mkdirflume-plugins          --项目目录,目录名随意
    cdflume-plugins
    mkdirlib           --jar包目录,目录名必须为lib
    

    将第三方jar包flume-plugins-1.0-SNAPSHOT.jar放在lib目录下

    1.4 创建Flume agent配置文件

    创建flume启动配置文件,指定source,channel,sink 3个组件内容。每个组件都有好几种配置选项,具体配置请查看Flume官网。

    创建配置文件flume.conf,示例如下:

    a1.sources = x1
    a1.sinks = y1
    a1.channels = z1
    # Describe/configure thesource
    a1.sources.x1.type =exec
    a1.sources.x1.channels =z1
    a1.sources.x1.command =tail -F /home/xdf/exec.txt
    # Describe the sink
    a1.sinks.y1.type =logger
    # Use a channel whichbuffers events in memory
    a1.channels.z1.type =memory
    a1.channels.z1.capacity= 1000
    a1.channels.z1.transactionCapacity= 100
    # Bind the source andsink to the channel
    a1.sources.x1.channels =z1
    a1.sinks.y1.channel = z1

    1.5 启动Flume Agent

    进入Flume安装目录,开启agent。

    cd /usr/local/apache-flume-1.6.0-bin
    ./bin/flume-ng agent--conf conf --conf-file flume.conf --name a3 -Dflume.root.logger=INFO,console
    

    注意:-Dflume.root.logger=INFO,console仅为 debug 使用,请勿生产环境生搬硬套,否则大量的日志会返回到终端。-c/--conf 后跟配置目录,-f/--conf-file 后跟具体的配置文件,-n/--name 指定agent的名称。

    1.6 测试

    上面配置的example.conf文件,实现的功能是监控文件/home/xdf/exec.txt,

    如果有新数据写入时,Flume就会采集到新数据并打印在控制台上。

    测试用例:向/home/xdf/exec.txt文件中写入内容“hello flume”。

    echo 'hello flume'>> /home/xdf/exec.txt
    

    Flume 终端窗口此时会打印出如下信息,就表示成功了:

    2015-06-3016:01:52,910 (SinkRunner-PollingRunner-DefaultSinkProcessor) [INFO -org.apache.flume.sink.LoggerSink.process(LoggerSink.java:94)]
     Event: {headers:{} body: 68 65 6C 6C 6F 20 66 6C 75 6D 65 hello flume }
    

    至此,Flume安装部署完毕。

  • 相关阅读:
    SharePoint 在文本编辑框中插入图片报错
    SharePoint 修改列表阀值
    SharePoint 获取SPListItem附件地址
    SharePoint 验证用户组是否存在当前用户方法
    SharePoint中查看用户登录IP与用户名
    SharePoint CAML中通过ID查找Lookup字段
    SharePoint 服务器修改密码(前端服务器与数据库服务器分开)
    20191128-1 总结
    康哲 20191121-1 每周例行报告
    对成员的感谢
  • 原文地址:https://www.cnblogs.com/xiaodf/p/6023453.html
Copyright © 2011-2022 走看看