Apache的配置水槽
安装水槽后,需要使用配置文件,该文件是具有键值对的Java属性文件来配置它。我们需要的值传递给该文件中的密钥。
在水槽的配置文件,我们需要 -
- 名称当前代理的组件。
- 描述/配置源。
- 描述/配置下沉。
- 描述/配置通道。
- 绑定源和宿的频道。
通常我们可以在水槽多个代理。我们可以通过使用唯一的名称区分每个代理。并使用这个名字,我们必须配置每个代理。
命名组件
首先,你需要的名字/列出的组件,如源,汇和代理渠道,如下图所示。
agent_name.sources = source_name agent_name.sinks = sink_name agent_name.channels = channel_name
水槽支持各种源,汇和渠道。它们列出在下面给出的表中。
| 来源 | 通道 | 水槽 |
|---|---|---|
|
|
|
您可以使用其中任何一个。例如,如果你正在传输使用Twitter源通过一个内存通道到HDFS沉Twitter数据,并代理名称ID TwitterAgent,然后
TwitterAgent.sources = Twitter TwitterAgent.channels = MemChannel TwitterAgent.sinks = HDFS
列出代理的组件后,必须通过它们的属性值,提供描述源(S),沉(s)和渠道(S)。
描述源
每个来源将有属性的单独列表。命名为“类型”的属性是共同的每个源,它是用来指定我们使用的源的类型。
随着属性“类型”,它是需要提供一个特别的源的所有要求的属性的值来对其进行配置,如下所示。
agent_name.sources. source_name.type = value agent_name.sources. source_name.property2 = value agent_name.sources. source_name.property3 = value
例如,如果我们考虑到Twitter的来源 ,以下是属性,这是我们必须提供值来配置它。
TwitterAgent.sources.Twitter.type = Twitter (type name) TwitterAgent.sources.Twitter.consumerKey = TwitterAgent.sources.Twitter.consumerSecret = TwitterAgent.sources.Twitter.accessToken = TwitterAgent.sources.Twitter.accessTokenSecret =
描述水槽
就像源,每个接收器将具有属性的单独列表。命名为“类型”的属性是共同的每片,并且它是用来指定我们正在使用的接收器的类型。随着属性“类型”,它是需要提供值到特定接收器的所有要求的特性,以对其进行配置,如下所示。
agent_name.sinks. sink_name.type = value agent_name.sinks. sink_name.property2 = value agent_name.sinks. sink_name.property3 = value
例如,如果我们考虑HDFS下沉 ,下面是属性,这是我们必须提供值来配置它。
TwitterAgent.sinks.HDFS.type = hdfs (type name) TwitterAgent.sinks.HDFS.hdfs.path = HDFS directory’s Path to store the data
描述这个频道
水槽提供了多种渠道源和汇之间传输数据。因此,与源和通道沿,它是需要来描述在代理所使用的信道。
为了描述每个通道,您需要设置所需的属性,如下图所示。
agent_name.channels.channel_name.type = value agent_name.channels.channel_name. property2 = value agent_name.channels.channel_name. property3 = value
例如,如果我们考虑内存通道 ,下面是属性,这是我们必须提供值来配置它。
TwitterAgent.channels.MemChannel.type = memory (type name)
绑定源和宿到Channel
由于通道连接源和汇,它需要两者结合的信道,如下所示。
agent_name.sources.source_name.channels = channel_name agent_name.sinks.sink_name.channels = channel_name
下面的示例演示如何绑定源和汇的渠道。在此,我们认为微型博客Twitter源,内存通道和 HDFS水槽 。
TwitterAgent.sources.Twitter.channels = MemChannel TwitterAgent.sinks.HDFS.channels = MemChannel
启动水槽代理
配置后,我们开始水槽代理。它完成如下 -
$ bin/flume-ng agent --conf ./conf/ -f conf/twitter.conf Dflume.root.logger=DEBUG,console -n TwitterAgent
在这里 -
代理 -命令启动水槽剂
--conf,-c <CONF> -在conf目录使用配置文件
-f <文件> -指定配置文件路径,如果失踪
--name,-n <名> - Twitter的代理的名称
-D属性=值 -设置Java系统属性值。