flume安裝及配置介紹(轉(zhuǎn)載)

Flume的下載方式:

wget http://www.apache.org/dyn/closer.lua/flume/1.6.0/apache-flume-1.6.0-bin.tar.

下載完成之后区岗,使用tar進(jìn)行解壓

tar -zvxf? apache-flume-1.6..0-bin.tar.

進(jìn)入flume的conf配置包中兆衅,使用命令touch flume.conf,然后cp flume-conf.properties.template flume.conf

使vim/gedit flume.conf 編輯配置文件,需要說(shuō)明的的是,Flume conf文件用的是Java版的property文件的key-value鍵值對(duì)模式.

在Flume配置文件中,我們需要

1. 需要命名當(dāng)前使用的Agent的名稱(chēng).

2. 命名Agent下的source的名字.

3. 命名Agent下的channal的名字.

4. 命名Agent下的sink的名字.

5. 將source和sink通過(guò)channal綁定起來(lái).

一般來(lái)說(shuō),在Flume中會(huì)存在著多個(gè)Agent,所以我們需要給它們分別取一個(gè)名字來(lái)區(qū)分它們,注意名字不要相同,名字保持唯一!

例如:

#Agent取名為 agent_name

#source 取名為 source_name ,一次類(lèi)推

agent_name.source=source_name

agent_name.channels=channel_name

agent_name.sinks= sink_name

上圖對(duì)應(yīng)的是單個(gè)Agent,單個(gè)sink,單個(gè)channel情況,如下圖

如果我們需要在一個(gè)Agent上配置n個(gè)sink,m個(gè)channel(n>1, m>1),

那么只需要這樣配置即可:

#Agent取名為 agent_name

#source 取名為 source_name ,一次類(lèi)推

agent_name.source=source_name ,source_name1

agent_name.channels=channel_name,channel_name1

agent_name.sinks= sink_name,sink_name1

上面的配置就表示一個(gè)Agent中有兩個(gè) source,sink,channel的情況,如圖所示

以上是對(duì)多sink,channel,source情況,對(duì)于 多個(gè)Agent,只需要給每個(gè)Agent取一個(gè)獨(dú)一無(wú)二的名字即可!

Flume支持各種各樣的sources,sinks,channels,它們支持的類(lèi)型如下:

以上的類(lèi)型,你可以根據(jù)自己的需求來(lái)搭配組合使用,當(dāng)然如果你愿意,你可以為所欲為的搭配.比如我們使用Avro source類(lèi)型,采用Memory channel,使用HDFS sink存儲(chǔ),那我們的配置可以接著上的配置這樣寫(xiě)

#Agent取名為 agent_name

#source 取名為 source_name ,一次類(lèi)推

agent_name.source=Avro

agent_name.channels=MemoryChannel

agent_name.sinks= HDFS

當(dāng)你命名好Agent的組成部分后,你還需要對(duì)Agent的組成sources , sinks, channles去一一描述. 下面我們來(lái)逐一的細(xì)說(shuō)脑蠕;

Source的配置

注: 需要特別說(shuō)明酌泰,在Agent中對(duì)于存在的N(N>1)個(gè)source媒佣,其中的每一個(gè)source都需要單獨(dú)進(jìn)行配置,首先我們需要對(duì)source的type進(jìn)行設(shè)置陵刹,然后在對(duì)每一個(gè)type進(jìn)行對(duì)應(yīng)的屬性設(shè)置.其通用的模式如下:

agent_name.sources. source_name.type =value

agent_name.sources. source_name.property2=value

agent_name.sources. source_name.property3= value

具體的例子默伍,比如我們Source選用的是Avro模式

#Agent取名為 agent_name

#source 取名為 source_name ,一次類(lèi)推

agent_name.source=Avro

agent_name.channels=MemoryChannel

agent_name.sinks=HDFS

#——————————sourcec配置——————————————#

agent_name.source.Avro.type=avro

agent_name.source.Avro.bind=localhost

agent_name.source.Avro.port= 9696#將source綁定到MemoryChannel管道上

agent_name.source.Avro.channels= MemoryChannel

Channels的配置

Flume在source和sink配間提供各種管道(channels)來(lái)傳遞數(shù)據(jù).因而和source一樣,它也需要配置屬性衰琐,同source一樣也糊,對(duì)于N(N>0)個(gè)channels,

需要單個(gè)對(duì)它們注意設(shè)置屬性,它們的通用模板為:

agent_name.channels.channel_name.type =value

agent_name.channels.channel_name. property2=value

agent_name.channels.channel_name. property3= value

具體的例子羡宙,假如我們選用memory channel類(lèi)型狸剃,那么我先要配置管道的類(lèi)型

agent_name.channels.MemoryChannel.type = memory

但是我們現(xiàn)在只是設(shè)置好了管道自個(gè)兒屬性,我們還需要將其和sink狗热,source鏈接起來(lái)钞馁,也就是綁定,綁定設(shè)置如下斗搞,我們可以分別寫(xiě)在source指攒,sink處慷妙,也可以集中寫(xiě)在channel處

agent_name.sources.Avro.channels =MemoryChannel

agent_name.sinks.HDFS.channels=? MemoryCHannel

Sink的配置

sink的配置和Source配置類(lèi)似僻焚,它的通用格式:

agent_name.sinks. sink_name.type =value

agent_name.sinks. sink_name.property2=value

agent_name.sinks. sink_name.property3= value

具體例子,比如我們?cè)O(shè)置Sink類(lèi)型為HDFS ,那么我們的配置單就如下:

agent_name.sinks.HDFS.type =hdfs

agent_name.sinks.HDFS.path= HDFS‘s path

以上就是對(duì)Flume的配置文件詳細(xì)介紹膝擂,下面在補(bǔ)全一張完整的配置圖:

# Licensed to the Apache Software Foundation (ASF) under one

# or more contributor license agreements.? See the NOTICE file

# distributed withthisworkforadditional information

# regarding copyright ownership.? The ASF licensesthisfile

# to you under the Apache License, Version2.0(the

#"License"); you may not usethisfile except in compliance

# with the License.? You may obtain a copy of the License at

#

#? http://www.apache.org/licenses/LICENSE-2.0#

# Unless required by applicable law or agreed to in writing,

# software distributed under the License is distributed on an

#"AS IS"BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY

# KIND, either express or implied.? See the Licenseforthe

# specific language governing permissions and limitations

# under the License.

# The configuration file needs to define the sources,

# the channels and the sinks.

# Sources, channels and sinks are defined per agent,

# inthiscasecalled 'agent'#define agent

agent.sources=seqGenSrc

agent.channels=memoryChannel

agent.sinks=loggerSink kafkaSink

#

# For each one of the sources, the type is defined

#默認(rèn)模式 agent.sources.seqGenSrc.type= seq / netcat /avro

agent.sources.seqGenSrc.type=avro

agent.sources.seqGenSrc.bind=localhost

agent.sources.seqGenSrc.port= 9696#####數(shù)據(jù)來(lái)源####

#agent.sources.seqGenSrc.coommand= tail -F /home/gongxijun/Qunar/data/data.log

# The channel can be defined as follows.

agent.sources.seqGenSrc.channels=memoryChannel

#+++++++++++++++定義sink+++++++++++++++++++++#

# Each sink's type must be definedagent.sinks.loggerSink.type=logger

agent.sinks.loggerSink.type=hbase

agent.sinks.loggerSink.channel=memoryChannel

#表名

agent.sinks.loggerSink.table=flume

#列名

agent.sinks.loggerSink.columnFamily=gxjun

agent.sinks.loggerSink.serializer=org.apache.flume.sink.hbase.MyHbaseEventSerializer

#agent.sinks.loggerSink.serializer=org.apache.flume.sink.hbase.RegexHbaseEventSerializer

agent.sinks.loggerSink.zookeeperQuorum=localhost:2181agent.sinks.loggerSink.znodeParent= /hbase

#Specify the channel the sink should use

agent.sinks.loggerSink.channel=memoryChannel

# Each channel's type is defined.#memory

agent.channels.memoryChannel.type=memory

agent.channels.memortChhannel.keep-alive = 10# Other config values specific to each type of channel(sink or source)

# can be defined as well

# Inthiscase, it specifies the capacity of the memory channel

#agent.channels.memoryChannel.checkpointDir= /home/gongxijun/Qunar/data

#agent.channels.memoryChannel.dataDirs= /home/gongxijun/Qunar/data , /home/gongxijun/Qunar/tmpData

agent.channels.memoryChannel.capacity= 10000000agent.channels.memoryChannel.transactionCapacity= 10000#define the sink2 kafka

#+++++++++++++++定義sink+++++++++++++++++++++#

# Each sink's type must be definedagent.sinks.kafkaSink.type=logger

agent.sinks.kafkaSink.type=org.apache.flume.sink.kafka.KafkaSink

agent.sinks.kafkaSink.channel=memoryChannel

#agent.sinks.kafkaSink.server=localhost:9092agent.sinks.kafkaSink.topic= kafka-topic

agent.sinks.kafkaSink.batchSize= 20agent.sinks.kafkaSink.brokerList= localhost:9092#Specify the channel the sink should use

agent.sinks.kafkaSink.channel= memoryChannel

該配置類(lèi)型如下如所示:

參考資料:

http://www.tutorialspoint.com/apache_flume/apache_flume_configuration.htm

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末虑啤,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子架馋,更是在濱河造成了極大的恐慌狞山,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,576評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件叉寂,死亡現(xiàn)場(chǎng)離奇詭異萍启,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)勘纯,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)局服,“玉大人,你說(shuō)我怎么就攤上這事驳遵∫迹” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,017評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵堤结,是天一觀的道長(zhǎng)唆迁。 經(jīng)常有香客問(wèn)我,道長(zhǎng)竞穷,這世上最難降的妖魔是什么唐责? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,626評(píng)論 1 296
  • 正文 為了忘掉前任,我火速辦了婚禮瘾带,結(jié)果婚禮上妒蔚,老公的妹妹穿的比我還像新娘。我一直安慰自己月弛,他們只是感情好肴盏,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,625評(píng)論 6 397
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著帽衙,像睡著了一般菜皂。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上厉萝,一...
    開(kāi)封第一講書(shū)人閱讀 52,255評(píng)論 1 308
  • 那天恍飘,我揣著相機(jī)與錄音,去河邊找鬼谴垫。 笑死章母,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的翩剪。 我是一名探鬼主播乳怎,決...
    沈念sama閱讀 40,825評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼前弯!你這毒婦竟也來(lái)了蚪缀?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,729評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤恕出,失蹤者是張志新(化名)和其女友劉穎询枚,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體浙巫,經(jīng)...
    沈念sama閱讀 46,271評(píng)論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡金蜀,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,363評(píng)論 3 340
  • 正文 我和宋清朗相戀三年刷后,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片渊抄。...
    茶點(diǎn)故事閱讀 40,498評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡惠险,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出抒线,到底是詐尸還是另有隱情班巩,我是刑警寧澤,帶...
    沈念sama閱讀 36,183評(píng)論 5 350
  • 正文 年R本政府宣布嘶炭,位于F島的核電站抱慌,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏眨猎。R本人自食惡果不足惜抑进,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,867評(píng)論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望睡陪。 院中可真熱鬧寺渗,春花似錦、人聲如沸兰迫。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,338評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)汁果。三九已至涡拘,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間据德,已是汗流浹背鳄乏。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,458評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留棘利,地道東北人橱野。 一個(gè)月前我還...
    沈念sama閱讀 48,906評(píng)論 3 376
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像善玫,于是被迫代替她去往敵國(guó)和親水援。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,507評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容