• flume的案列测试之收集socket端数据,并显示到logger端


    步骤:

    1.在Linux下安装netcat工具,用户开启socket客户端:

      a.切换至root下

        $>su root

      b.执行安装命令

        $>yum install -y nc

      c.切换至Alex_lei用户下,模拟聊天室:

        $>nc

        开启服务端 $>nc -l 55555

        开启客户端 $>nc localhost 55555

    2.创建Agent

      编写agent配置信息,在{FLUME_HOME/conf}目录下,新建example.conf,添加以下代码:

      a1.sources = s1

      a1.channels = c1
      a1.sinks = k1

      #定义agent的source属性
      a1.sources.s1.type = netcat
      a1.sources.s1.bind = master
      a1.sources.s1.port = 55555

      #配置agent的sink属性
      a1.sinks.k1.type = logger

      #配置agent的channel的属性
      a1.channels.c1.type = memory

      a1.sources.s1.channels = c1
      a1.sinks.k1.channel = c1 //注意:a1.sinks.k1.channel后不用有s

    3.开启flume进程

    $>flume-ng agent --name a1 --conf /home/Alex_lei/soft/flume/conf/ --conf-file /home/hyxy/soft/flume/conf/example.conf -Dflume.root.logger=INFO,consol

    4.开启nc客户端

      $>nc master 55555

      hello world

      zhang san

    5.结果

      在flume的会话窗口中,显示以下信息:
      Event: { headers:{} body: 68 65 6C 6C 6F 20 77 6F 72 6C 64 hello world }
      Event: { headers:{} body: 7A 68 61 6E 67 20 73 61 6E zhang san }

    总结:agent包含三个组件为Source,Channel,Sink,分别代表的意思是数据源,中间管道,起到桥梁的作用,写到什么地方。上述Source为Console,Channel默认为memory内存,Sink为logger。

      若我们要写到hdfs或者hive,我们可以去flume的官网查看相关配置文件的信息,根据自己的需要选择,选择hdfs,我们就去Flume sink下zhaodao hdfs选项查看相关的配置信息进行配置就可以。 

      当然还可以将多个flume串联进行配置,也可以多个flume并联最后输入到一个flume的agent进行写出,官网具有详细的配置方案。 

  • 相关阅读:
    Google官方教程之Selling In-app Products
    In-app Billing 概述
    Android SDK和ADT无法更新的解决办法
    在NGUI中高效优化UIScrollView之UIWrapContent的简介以及使用
    cocos2d-x 3.1 编译脚本android-build.py
    Storm---DirectGroup(直接分组)
    Lucene Spatial构建地理空间索引
    Log4j2日志配置
    Guava缓存使用
    Maven 多套环境配置
  • 原文地址:https://www.cnblogs.com/lyr999736/p/10201924.html
Copyright © 2020-2023  润新知