您的位置:首页 > 其它

flume参考文档

2016-07-20 14:19 363 查看
问题导读:

1.node向master发送心跳之后等待反馈的最大时长由哪个参数来决定,默认多长时间?

2.当primary sink(可以认为是第一collector)故障后,重启primary sink的一个延迟时间,在此期间,agent将把数据发送到secondary sink(可能是第二collector)由哪个参数来决定?

3.collector的默认发送目录通过哪个参数可以配置?

4.flume command执行命令的方式有几种?
[align=left]
[/align]
[align=left]Flume配置文件(flume-site.conf)[/align]

[align=left]1、 watchdog[/align]
[align=left]watchdog.restarts.max[/align]
[align=left]watchdog每分钟重启的最大数???[/align]
[align=left]2、 common node[/align]
[align=left]flume.config.heartbeat.period[/align]
[align=left]node发送心跳周期,默认5000(毫秒)[/align]
[align=left]flume.node.status.port[/align]
[align=left]node web端口[/align]
[align=left]flume.node.heartbeat.backoff.ceiling[/align]
[align=left]node向master发送心跳之后等待反馈的最大时长,默认60000(毫秒)[/align]
[align=left]flume.node.http.autofindport[/align]
[align=left]如果已有node启动,允许第二个node自动选择一个未使用的端口做web服务。多个node的界面端口从35862、35863向后延续[/align]
[align=left]3、agent[/align]
[align=left]flume.agent.logdir[/align]
[align=left]agent日志路径[/align]
[align=left]flume.agent.logdir.maxage[/align]
[align=left]当前处于打开状态agent日志文件收集信息的时长,在这之后该日志文件将会被关闭,并将数据发送到网络,默认10000(毫秒)[/align]
[align=left]flume.agent.logdir.retransmit[/align]
[align=left]在end-to-end模式下agent向collector发送数据失败后再次发送的间隔时长,默认60000(毫秒),建议至少是flume.collector.roll.millis的两倍[/align]
[align=left]flume.agent.failover.backoff.initial[/align]
[align=left]当primary sink(可以认为是第一collector)故障后,重启primary sink的一个延迟时间,在此期间,agent将把数据发送到secondary sink(可能是第二collector)[/align]
[align=left]flume.agent.failover.backoff.max[/align]
[align=left]在一定时限内尝试链接故障节点失败后,agent将把数据转发向备用节点[/align]
[align=left]4、collector[/align]
[align=left]flume.collector.event.host[/align]
[align=left]默认collector地址[/align]
[align=left]flume.collector.port[/align]
[align=left]默认collector端口[/align]
[align=left]flume.collector.dfs.dir[/align]
[align=left]最终数据发向目录(默认),可以是本地,可以是hdfs,默认是/tmp[/align]
[align=left]flume.collector.dfs.compress.codec[/align]
[align=left]压缩格式GzipCodec, DefaultCodec (deflate), BZip2Codec,默认是None[/align]
[align=left]flume.collector.roll.millis[/align]
[align=left]hdfs文件切换(关闭后新建)的时长[/align]
[align=left]flume.collector.output.format[/align]
[align=left]collector发送数据格式avro, avrojson(默认), avrodata…[/align]
[align=left]5、master[/align]
[align=left]flume.master.servers[/align]
[align=left]用逗号分隔多个master地址列表[/align]
[align=left]flume.master.store[/align]
[align=left]master配置存储方式(zookeeper/memory) zookeeper保证master的配置在多master节点之间同步,memory则保存在内存中,其配置随着master宕机而丢失[/align]
[align=left]flume.master.serverid[/align]
[align=left]master的唯一标识[/align]
[align=left]flume.master.http.port[/align]
[align=left]http端口[/align]
[align=left]flume.master.heartbeat.missed.max[/align]
[align=left]判断节点失效的最大未达心跳数[/align]
[align=left]flume.master.savefile[/align]
[align=left]当前flume配置文件的路径,默认conf/current.flume[/align]
[align=left]flume.master.savefile.autoload[/align]
[align=left]启动时是否加载current.flume,默认false[/align]
[align=left]flume.master.gossip.period[/align]
[align=left]master通信周期(毫秒)[/align]
[align=left]flume.master.heartbeat.rpc[/align]
[align=left]THRIFT/AVRO[/align]
[align=left]flume.event.rpc[/align]
[align=left]THRIFT/AVRO[/align]
[align=left]flume.report.server.rpc.type[/align]
[align=left]THRIFT/AVRO[/align]
[align=left]6、zookeeper[/align]
[align=left]flume.master.zk.logdir[/align]
[align=left]zookeeper日志路径[/align]
[align=left]7、thrift[/align]
[align=left]flume.thrift.socket.timeout.ms[/align]
[align=left]thrift网络连接超时时间(毫秒)[/align]


[align=left]1.command shell(flume command)[/align]

[align=left]help[/align]
[align=left]帮助[/align]
[align=left]connect master:port[/align]
[align=left]登录master[/align]
[align=left]config logicalnode source sink[/align]
[align=left]为逻辑节点配置一个source到sink的映射[/align]
[align=left]getnodestatus[/align]
[align=left]获得节点状态(HELLO, CONFIGURING, ACTIVE, IDLE, ERROR, DECOMMISSIONED, LOST )[/align]
[align=left]HELLO, node启动时[/align]
[align=left]CONFIGURING, node被配置后[/align]
[align=left]ACTIVE, 一个event从source送达到sink[/align]
[align=left]IDLE, source中所有evnet发送完毕后[/align]
[align=left]ERROR, 节点故障退出,数据没有flush[/align]
[align=left]DECOMMISSIONED, node被master移除[/align]
[align=left]LOST, master长时间未收到node心跳[/align]
[align=left]getconfigs[/align]
[align=left]获得配置[/align]
[align=left]getmappings [physical node][/align]
[align=left]如果physical node参数被省略,将显示所有logical node到physical node的映射关系[/align]
[align=left]exec[/align]
[align=left]同步执行命令[/align]
[align=left]Source file[/align]
[align=left]执行脚本.[/align]
[align=left]submit[/align]
[align=left]异步执行命令[/align]
[align=left]wait ms [cmdid][/align]
[align=left]设定一个时间,周期检查命令进程的状态(success or failure)[/align]
[align=left]waitForNodesActive ms node1 [node2 […]][/align]
[align=left]设定一个时间,检查node是否处于使用(configuring, active)状态[/align]
[align=left]waitForNodesDone ms node1 [node2 […]][/align]
[align=left]设定一个时间,检查node是否处于未用(IDLE, ERROR, LOST)状态[/align]
[align=left]quit[/align]
[align=left]退出[/align]
[align=left]2.command shell(exec & submit command)[/align]
[align=left]双引号[/align]
[align=left]包含转义字符的java string[/align]
[align=left]单引号[/align]
[align=left]能引住除单引号之外的所有字符[/align]
[align=left]noop[/align]
[align=left]touch master, 不做操作[/align]
[align=left]config logicalnode source sink[/align]
[align=left]为逻辑节点配置source到sink的映射[/align]
[align=left]multiconfig flumespec[/align]
 
[align=left]unconfig logicalnode[/align]
[align=left]取消逻辑节点的配置,影响master调整故障转移列表(failover list)[/align]
[align=left]refreshAll logicalnode[/align]
[align=left]刷新[/align]
[align=left]save filename[/align]
[align=left]保存current configuration到master硬盘[/align]
[align=left]load filename[/align]
[align=left]从master中加载current configuration[/align]
[align=left]map physicalnode logicalnode[/align]
[align=left]配置物理节点到逻辑节点的映射关系,master的配置将被同步到logicalnode[/align]
[align=left]spawn physicalnode logicalnode[/align]
[align=left]恢复[/align]
[align=left]decommission logicalnode[/align]
 
[align=left]unmap physicalnode logicalnode[/align]
[align=left]取消映射[/align]
[align=left]unmapAll[/align]
[align=left]全部取消[/align]
[align=left]purge logicalnode[/align]
[align=left]清除状态,类似重启一个logical node, 适用于(DECOMMISSIONED、 LOST)状态[/align]
[align=left]purgeAll[/align]
[align=left]清除所有logical node的状态[/align]


Flume
Source

[align=left]1、Flume’s Tiered Event Sources[/align]
[align=left]collectorSource[(port)][/align]
[align=left]Collector source,监听端口汇聚数据[/align]
[align=left]autoCollectorSource[/align]
[align=left]通过master协调物理节点自动汇聚数据[/align]
[align=left]logicalSource[/align]
[align=left]逻辑source,由master分配端口并监听rpcSink[/align]
[align=left]2、Flume’s Basic Sources[/align]
[align=left]null[/align]
 
[align=left]console[/align]
[align=left]监听用户编辑历史和快捷键输入,只在node_nowatch模式下可用[/align]
[align=left]stdin[/align]
[align=left]监听标准输入,只在node_nowatch模式下可用,每行将作为一个event source[/align]
[align=left]rpcSource(port)[/align]
[align=left]由rpc框架(thrift/avro)监听tcp端口[/align]
[align=left]text("filename")[/align]
[align=left]一次性读取一个文本,每行为一个event[/align]
[align=left]tail("filename"[, startFromEnd=false])[/align]
[align=left]每行为一个event。监听文件尾部的追加行,如果startFromEnd为true,tail将从文件尾读取,如果为false,tail将从文件开始读取全部数据[/align]
[align=left]multitail("filename"[, file2 [,file3… ] ])[/align]
[align=left]同上,同时监听多个文件的末尾[/align]
[align=left]tailDir("dirname"[, fileregex=".*"[, startFromEnd=false[, recurseDepth=0]]])[/align]
[align=left]监听目录中的文件末尾,使用正则去选定需要监听的文件(不包含目录),recurseDepth为递归监听其下子目录的深度[/align]
[align=left]seqfile("filename")[/align]
[align=left]监听hdfs的sequencefile,全路径[/align]
[align=left]syslogUdp(port)[/align]
[align=left]监听Udp端口[/align]
[align=left]syslogTcp(port)[/align]
[align=left]监听Tcp端口[/align]
[align=left]syslogTcp1(port)[/align]
[align=left]只监听Tcp端口的一个链接[/align]
[align=left]execPeriodic("cmdline", ms)[/align]
[align=left]周期执行指令,监听指令的输出,整个输出都被作为一个event[/align]
[align=left]execStream("cmdline")[/align]
[align=left]执行指令,监听指令的输出,输出的每一行被作为一个event[/align]
[align=left]exec("cmdline"[,aggregate=false[,restart=false[,period=0]]])[/align]
[align=left]执行指令,监听指令的输出,aggregate如果为true,整个输出作为一个event如果为false,则每行作为一个event。如果restart为true,则按period为周期重新运行[/align]
[align=left]synth(msgCount,msgSize)[/align]
[align=left]随即产生字符串event,msgCount为产生数量,msgSize为串长度[/align]
[align=left]synthrndsize(msgCount,minSize,maxSize)[/align]
[align=left]同上,minSize – maxSize[/align]
[align=left]nonlsynth(msgCount,msgSize)[/align]
 
[align=left]asciisynth(msgCount,msgSize)[/align]
[align=left]Ascii码字符[/align]
[align=left]twitter("username","pw"[,"url"])[/align]
[align=left]尼玛twitter的插件啊[/align]
[align=left]irc("server",port, "nick","chan")[/align]
 
[align=left]scribe[(+port)][/align]
[align=left]Scribe插件[/align]
[align=left]report[(periodMillis)][/align]
[align=left]生成所有physical node报告为事件源[/align]


Flume
Sinks

[align=left]1、Flume’s Collector Tier Event Sinks[/align]
[align=left]collectorSink( "fsdir","fsfileprefix",rollmillis)[/align]
[align=left]collectorSink,数据通过collector汇聚之后发送到hdfs, fsdir 是hdfs目录,fsfileprefix为文件前缀码[/align]
[align=left]2、Flume’s Agent Tier Event Sinks[/align]
[align=left]agentSink[("machine"[,port])][/align]
[align=left]Defaults to agentE2ESink,如果省略,machine参数,默认使用flume.collector.event.host与flume.collector.event.port作为默认collecotr(以下同此)[/align]
[align=left]agentE2ESink[("machine"[,port])][/align]
[align=left]执着的agent,如果agent发送event没有收到collector成功写入的状态码,该event将被agent重复发送,直到接到成功写入的状态码[/align]
[align=left]agentDFOSink[("machine" [,port])][/align]
[align=left]本地热备agent,agent发现collector节点故障后,不断检查collector的存活状态以便重新发送event,在此间产生的数据将缓存到本地磁盘中[/align]
[align=left]agentBESink[("machine"[,port])][/align]
[align=left]不负责的agent,如果collector故障,将不做任何处理,它发送的数据也将被直接丢弃[/align]
[align=left]agentE2EChain("m1[:_p1_]" [,"m2[:_p2_]"[,…]])[/align]
[align=left]指定多个collector提高可用性。 当向主collector发送event失效后,转向第二个collector发送,当所有的collector失败后,它会非常执着的再来一遍...[/align]
[align=left]agentDFOChain("m1[:_p1_]"[, "m2[:_p2_]"[,…]])[/align]
[align=left]同上,当向所有的collector发送事件失效后,他会将event缓存到本地磁盘,并检查collector状态,尝试重新发送[/align]
[align=left]agentBEChain("m1[:_p1_]"[, "m2[:_p2_]"[,…]])[/align]
[align=left]同上,当向所有的collector发送事件失效后,他会将event丢弃[/align]
[align=left]autoE2EChain[/align]
[align=left]无需指定collector, 由master协调管理event的流向[/align]
[align=left]autoDFOChain[/align]
[align=left]同上[/align]
[align=left]autoBEChain[/align]
[align=left]同上[/align]
[align=left]3、Flume’s Logical Sinks[/align]
[align=left]logicalSink("logicalnode")[/align]
 
[align=left]4、Flume’s Basic Sinks[/align]
[align=left]在不使用collector收集event的情况下,可将source直接发向basic sinks[/align]
[align=left]null[/align]
[align=left]null[/align]
[align=left]console[("formatter")][/align]
[align=left]转发到控制台[/align]
[align=left]text("txtfile" [,"formatter"])[/align]
[align=left]转发到文本文件[/align]
[align=left]seqfile("filename")[/align]
[align=left]转发到seqfile[/align]
[align=left]dfs("hdfspath")[/align]
[align=left]转发到hdfs[/align]
[align=left]customdfs("hdfspath"[, "format"])[/align]
[align=left]自定义格式dfs[/align]
[align=left]+escapedCustomDfs("hdfspath", "file", "format")[/align]
 
[align=left]rpcSink("host"[, port])[/align]
[align=left]Rpc框架[/align]
[align=left]syslogTcp("host"[,port])[/align]
[align=left]发向网络地址[/align]
[align=left]irc("host",port, "nick", "chan")[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: