这里介绍的flume版本为flume-0.9.4-cdh3u3,下载地址:  https://ccp.cloudera.com/display/SUPPORT/CDH3+Downloadable+Tarballs

下载解压后到 FLUME_HOME/bin目录:

  1. [hadoop@localhost bin]$ sh flume 
  2. usage: flume command [args...] 
  3. commands include:  
  4.   dump            Takes a specified source and dumps to console 
  5.   source          Takes a specified source and dumps to console 
  6.   node            Start a Flume node/agent (with watchdog) 
  7.   master          Start a Flume Master server (with watchdog) 
  8.   version         Dump flume build version information  
  9.   node_nowatch    Start a flume node/agent (no watchdog) 
  10.   master_nowatch  Start a Flume Master server (no watchdog) 
  11.   class <class>   Run specified fully qualified class using Flume environment (no watchdog) 
  12.                    ex: flume com.cloudera.flume.agent.FlumeNode  
  13.   classpath       Dump the classpath used by the java executables 
  14.   shell           Start the flume shell 
  15.   killmaster      Kill a running master 
  16.   dumplog         Takes a specified WAL/DFO log file and dumps to console 
  17.   sink            Start a one-shot flume node with console source and specified sink 


 dump:
  将指定的source dump到console
  在当前目录下创建文件 test, 输入一行记录"hello flume!", 执行以下命令

  1. [hadoop@localhost bin]$ sh flume source 'text("test")' 

    • 2012-03-27 05:51:14,859 [logicalNode dump-9] INFO debug.ConsoleEventSink: ConsoleEventSink( debug ) opened
    • localhost [INFO Tue Mar 27 05:51:14 PDT 2012] hello flume!
    • 2012-03-27 05:51:14,865 [logicalNode dump-9] INFO debug.TextFileSource: File test closed

 source:
  
source命令等同于dump
 node:
   启动flume node节点,同时启动watchdog进程(watchdog进程会监控node节点进程,一旦发现node节点进程挂掉,会立即重启node节点进程)
 master:
   启动flume master节点,同时启动watchdog进程
 node_nowatch:
   启动flume node节点,但不启动watchdog进程
 master_nowatch:
    启动flume master节点, 但不启动watchdog进程
 sink:
   指定一个sink, 将console作为source

  1. [hadoop@localhost bin]$ sh flume sink 'text("test","raw")' 

  在console中输入:hello flume^_^
  查看test文件

  1. [hadoop@localhost bin]$ cat test  
  2. hello flume^_^ 
  3. [hadoop@localhost bin]$  

 shell:
   进入flume shell,需要指定master地址及端口,连接上后可以运行flume集群管理命令, 查看帮助命令如下:

  1. [flume (disconnected)] help 
  2. I know about these commands: 
  3.  
  4.     connect host[:adminport=35873[:reportport=45678]] 
  5.     exec    (requires a command and arguments) 
  6.     exec config node 'source' 'sink' 
  7.     exec decommission logicalnode 
  8.     exec map physicalnode logicalnode 
  9.     exec multiconfig 'spec' 
  10.     exec noop [delaymillis (no arg means no wait)] 
  11.     exec refresh 'spec' 
  12.     exec refreshAll  
  13.     exec setChokeLimit physicalnode chokeid limit 
  14.     exec spawn physicalnode logicalnode (synonym for exec map. deprecated.) 
  15.     exec unmap physicalnode logicalnode 
  16.     exec unmapAll  
  17.     getconfigs  
  18.     getmappings [physical node] 
  19.     getnodestatus  
  20.     getreports  
  21.     help  
  22.     quit  
  23.     source load a file and execute flume shell commands in it 
  24.     submit    (requires a command and arguments) 
  25.     submit config node 'source' 'sink' 
  26.     submit decommission logicalnode 
  27.     submit map physicalnode logicalnode 
  28.     submit multiconfig 'spec' 
  29.     submit noop  
  30.     submit refresh 'spec' 
  31.     submit refreshAll  
  32.     submit spawn physicalnode logicalnode (synonym for submit map. deprecated.) 
  33.     submit unmap physicalnode logicalnode 
  34.     submit unmapAll  
  35.     wait  [maxmillis (0==infinite) [, cmdid]] 
  36.     waitForNodesActive  [maxmillis (0==infinite) [, node[, ...]]] 
  37.     waitForNodesDone  [maxmillis (0==infinite) [, node[, ...]]] 
  38. [flume (disconnected)]