版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Flume安裝使用手冊(cè)Flume介紹什么是FlumeFlume作為Cloudera開(kāi)發(fā)的實(shí)時(shí)日志收集系統(tǒng),受到了業(yè)界的承認(rèn)與廣泛應(yīng)用。Flume初始的發(fā)行版本現(xiàn)在被統(tǒng)稱為FlumeOG(originalgeneration)。但隨著Flume功效的擴(kuò)展,F(xiàn)lumeOG代碼工程臃腫、核心組件設(shè)計(jì)不合理、核心配備原則性等缺點(diǎn)暴露出來(lái),特別是在FlumeOG的最后一種發(fā)行版本0.94.0中,日志傳輸不穩(wěn)定的現(xiàn)象尤為嚴(yán)重,為理解決這些問(wèn)題,年10月22號(hào),Cloudera完畢了Flume-728,對(duì)Flume進(jìn)行了里程碑式的改動(dòng):重構(gòu)核心組件、核心配備以及代碼架構(gòu),重構(gòu)后的版本統(tǒng)稱為FlumeNG(nextgeneration),并將Flume納入Apache旗下,改名為ApacheFlume。Flume是一種分布式、可靠、和高可用的海量日志采集、聚合和傳輸?shù)南到y(tǒng)。支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù);同時(shí),F(xiàn)lume提供對(duì)數(shù)據(jù)進(jìn)行簡(jiǎn)樸解決,并寫到多個(gè)數(shù)據(jù)接受方(例如文本、HDFS、Hbase等)的能力。Flume的數(shù)據(jù)流由事件(Event)貫穿始終。事件是Flume的基本數(shù)據(jù)單位,它攜帶日志數(shù)據(jù)(字節(jié)數(shù)組形式)并且攜帶有頭信息,這些Event由Agent外部的Source生成,當(dāng)Source捕獲事件后會(huì)進(jìn)行特定的格式化,然后Source會(huì)把事件推入(單個(gè)或多個(gè))Channel中。你能夠把Channel看作是一種緩沖區(qū),它將保存事件直到Sink解決完該事件。Sink負(fù)責(zé)持久化日志或者把事件推向另一種Source。Flume基礎(chǔ)架構(gòu)Flume能夠采用一種代理(Agent)程序的方式進(jìn)行運(yùn)行,Agent運(yùn)行在日志文獻(xiàn)服務(wù)器上,一種Agent就是一種JVM進(jìn)程,最少涉及一種Source、一種Channel和一種Sink。圖SEQ圖\*ARABIC1Flume的基礎(chǔ)構(gòu)造Source:采集數(shù)據(jù)日志,生成Event對(duì)象,將對(duì)象推送給Channel。Flume慣用的Source類型涉及:exec(執(zhí)行外部命令,典型方式是采用tail–f監(jiān)控日志文獻(xiàn))、spooldir(檢查目錄下新增的文獻(xiàn),對(duì)應(yīng)文獻(xiàn)不可編輯)、Avro(Avro合同的RPC輸入)、Syslog(Linux系統(tǒng)日志)以及HttpPost(Body為JSON格式等)。同時(shí),在Source采集數(shù)據(jù)日志時(shí),能夠通過(guò)Interceptor(攔截器)對(duì)數(shù)據(jù)進(jìn)行解決后(例如添加Event的頭信息以及數(shù)據(jù)內(nèi)容),再將Event推送給Channel。Channel:重要提供一種隊(duì)列的功效,對(duì)source提供中的數(shù)據(jù)進(jìn)行簡(jiǎn)樸的緩存。慣用的Channel類型涉及:Memory(內(nèi)存通道,最高性能,機(jī)器宕機(jī)或程序異常,將造成數(shù)據(jù)丟失)、File(文獻(xiàn)通道,將Event保存到文獻(xiàn)系統(tǒng)中,在程序異常時(shí),可確保數(shù)據(jù)不丟失)、JDBC(JDBC通道,采用傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)提供Event的保存)、Kafka(Kafka通道,采用Kafka消息隊(duì)列提供Event的保存)。Sink:從Channel獲取數(shù)據(jù),進(jìn)行數(shù)據(jù)解決操作。慣用的Sink類型涉及:Logger(將Event數(shù)據(jù)寫入日志文獻(xiàn),普通用于調(diào)試)、Avro(將Event數(shù)據(jù)寫入遠(yuǎn)程的AvroPRC端口中)、FileRoll(將Event數(shù)據(jù)存儲(chǔ)到本地文獻(xiàn)系統(tǒng),普通用于調(diào)試)、HDFS(將Event數(shù)據(jù)寫入到HDFS中)、Hive(將Event數(shù)據(jù)寫入到Hive數(shù)據(jù)倉(cāng)庫(kù)中)、HBase(將數(shù)據(jù)寫入HBase中數(shù)據(jù)庫(kù)中)、Kafka(將Event數(shù)據(jù)寫入Kafka消息隊(duì)列的Topic中)。Flume總體架構(gòu)為確保Flume的穩(wěn)定性、可擴(kuò)展性,將Flume分為三層,即代理層(Agent)、聚合層(Collector)、存儲(chǔ)層(Storage)。圖SEQ圖\*ARABIC2Flume總體架構(gòu)其中Agent負(fù)責(zé)收集日志,并將Event通過(guò)Avro遠(yuǎn)程接口發(fā)送給Collector。Collector采用集群布署模式,避免單點(diǎn)故障問(wèn)題(集群依靠Agent端的配備完畢);Collector收集多個(gè)Agent發(fā)送過(guò)來(lái)的Event,將消息進(jìn)行歸并后,寫入到Storage。Storage用于日志Event事件的解決,在總體架構(gòu)設(shè)計(jì)中,采用兩種不同輸出,一是采用HDFS輸出(后期也可能考慮采用Hive輸出),用于分析統(tǒng)計(jì);二是采用Kafka消息隊(duì)列輸出到JStorm,通過(guò)JStorm進(jìn)行實(shí)時(shí)計(jì)算,提供實(shí)時(shí)日志分析功效。環(huán)境闡明機(jī)器名IP地址系統(tǒng)環(huán)境作用hdfs84UbuntuJDKKafkaAgenthdfs82UbuntuJDKKafkaCollector1hdfs383UbuntuJDKKafkaCollector2Flume安裝2.1.下載并解壓 從官方網(wǎng)站()上下載最新的二進(jìn)制包,因本安裝示例采用的Flume為1.6.0版本,因此下載的安裝文獻(xiàn)為apache-flume-1.6.0-bin.tar.gz。 下載后,將文獻(xiàn)上傳至服務(wù)器上,進(jìn)行解壓操作。$tar-zxvfapache-flume-1.6.0-bin.tar.gz-C/opt$mv/opt/apache-flume-1.6.0-bin/opt/apache-flume-1.6.0$ln-s/opt/apache-flume-1.6.0/opt/flume2.2.修改配備文獻(xiàn)$cp/opt/flume/conf/flume-env.ps1.template/opt/flume/conf/flume-env.sh$chmod777/opt/flume/conf/flume-env.sh$vi/opt/flume/conf/flume-env.sh在flume-env.sh配備文獻(xiàn)中,新增exportJAVA_HOME=/opt/jdkexportJAVA_OPTS="-Xms256m-Xmxm-Dcom.sun.management.jmxremote"2.3.驗(yàn)證安裝$/opt/flume/bin/flume-ngversion備注:全部flume服務(wù)器,均需要完畢上述安裝配備工作。2.3.Agent配備$vi/opt/flume/conf/agent.conf配備以下agent.channels=ch_fileagent.sources=so_execagent.sinks=si_avro1si_avro2agent.sinkgroups=sg_collectoragent.sinkgroups.sg_collector.sinks=si_avro1si_avro2agent.sinkgroups.sg_cessor.type=load_balanceagent.sinkgroups.sg_cessor.selector=round_robinagent.sinkgroups.sg_cessor.backoff=trueagent.channels.ch_file.type=fileagent.channels.ch_file.keep-alive=10agent.channels.ch_file.write-timeout=10agent.channels.ch_file.useDualCheckpoints=trueagent.channels.ch_file.checkpointDir=/data/flume/checkpointagent.channels.ch_file.backupCheckpointDir=/data/flume/checkpoint2agent.channels.ch_file.dataDirs=/data/flume/dataagent.sources.so_exec.type=execagent.sources.so_exec.channels=ch_fileagent.sources.so_mand=tail-f/var/log/apache2/access.logagent.sinks.si_avro1.type=avroagent.sinks.si_avro1.channel=ch_fileagent.sinks.si_avro1.hostname=hdfs2agent.sinks.si_avro1.port=41414agent.sinks.si_avro2.type=avroagent.sinks.si_avro2.channel=ch_fileagent.sinks.si_avro2.hostname=hdfs3agent.sinks.si_avro2.port=414142.4.Collector配備$vi/opt/flume/conf/agent.conf配備以下server.sources=so_avroserver.sinks=si_hdfsserver.channels=ch_fileserver.sources.so_avro.type=avroserver.sources.so_avro.channels=ch_fileserver.sources.so_avro.bind=server.sources.so_avro.port=41414server.sinks.si_hdfs.type=hdfsserver.sinks.si_hdfs.channel=ch_fileserver.sinks.si_hdfs.hdfs.path=/logs/web/apache/%Y%m%dserver.sinks.si_hdfs.hdfs.rollInterval=3600server.sinks.si_hdfs.hdfs.fileType=DataStreamserver.sinks.si_hdfs.hdfs.rollSize=0server.sinks.si_hdfs.hdfs.rollCount=0server.sinks.si_hdfs.hdfs.useLocalTimeStamp=trueserver.sinks.si_hdfs.hdfs.filePrefix=logserver.sinks.si_hdfs.hdfs.inUseSuffix=.tmpserver.sinks.si_hdfs.hdfs.idleTimeout=300server.channels.ch_file.type=fileserver.channels.ch_file.keep-alive=10server.channels.ch_file.write-timeout=10server.channels.c1.useDualCheckpoints=trueserver.channels.ch_file.checkpointDir=/data/flume/checkpointserver.channels.ch_file.backupCheckpointDir=/data/flume/checkpoint2server.channels.ch_file.dataDirs=/data/flume/data重要參數(shù)解釋:hdfs.rollSize=100000#每10K滾動(dòng)生成一種新的文獻(xiàn),0表達(dá)不基于文獻(xiàn)大小來(lái)滾動(dòng)hdfs.rollInterval=0#基于時(shí)間滾動(dòng)生成新文獻(xiàn),0表達(dá)不基于時(shí)間滾動(dòng),單位秒
hdfs.idleTimeout=300#300秒后這個(gè)文獻(xiàn)還沒(méi)有被寫滿數(shù)據(jù),就會(huì)關(guān)閉它然后rename它去掉.tmphdfs.batchSize=10#批量提交大小,10次提交才寫文獻(xiàn)2.5.服務(wù)啟動(dòng)Agent服務(wù)啟動(dòng)100000$/opt/flume/bin/flume-ngagent-f/opt/flume/conf/agent.conf-nagent-Dflume.root.logger=INFO,consoleCollector服務(wù)啟動(dòng)$/opt/flume/bin/flume-ngagent-f/opt/flume/conf/server.conf-nserver-Dflume.root.logger=INFO,console備注:其中-Dflume.root.logger=INFO,console為測(cè)試參數(shù),請(qǐng)勿在生產(chǎn)環(huán)境中使用。2.6.查看HDFS輸出文獻(xiàn)查看日志目錄$hdfsdfs-ls/logs/web/apache$hdfsdfs-ls/logs/web/apache/0104下載日志文獻(xiàn)$hdfsdfs-get/logs/web/apache/0104/log.79備注闡明3.1.命名規(guī)范Flume中的全部對(duì)象命名,均采用前綴+“_”+名稱的方式,并全部命名均采用小寫。序號(hào)對(duì)象前綴示例1Sourcesoso_tail2Channelchch_file3Sinksisi_hdfs4SinkGroupsgsg_collector3.2.備注Apache的日志格式調(diào)節(jié)$sudovi/e
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年大學(xué)大三(食品質(zhì)量安全)食品添加劑檢測(cè)綜合測(cè)試試題及答案
- 2025年大學(xué)大四(物流管理)逆向物流綜合測(cè)試試題及答案
- 2025年大學(xué)動(dòng)物醫(yī)學(xué)(獸藥飼料生產(chǎn))試題及答案
- 2025年中職(電子商務(wù)運(yùn)營(yíng))電商數(shù)據(jù)分析綜合試題及答案
- 2025年大學(xué)智能制造工程(智能制造)試題及答案
- 2025年中職西式烹飪工藝(海鮮烹飪)試題及答案
- 2025年高職機(jī)動(dòng)車檢測(cè)維修(汽車檢測(cè)設(shè)備使用)試題及答案
- 2025年大學(xué)微電子科學(xué)與工程(微電子器件設(shè)計(jì))試題及答案
- 湖北省武漢市東湖高新區(qū)2025年八年級(jí)上學(xué)期期末物理試題附答案
- 2026年莆田市秀嶼區(qū)市場(chǎng)監(jiān)督管理局關(guān)于招聘食品安全協(xié)管員的備考題庫(kù)完整參考答案詳解
- 雙擁培訓(xùn)課件
- 飛行營(yíng)地項(xiàng)目總體規(guī)劃
- GB/T 45494-2025項(xiàng)目、項(xiàng)目群和項(xiàng)目組合管理背景和概念
- DB36T-預(yù)防血管活性藥物外滲護(hù)理工作規(guī)范
- 牛羊肉銷售合同協(xié)議書
- 《無(wú)人機(jī)搭載紅外熱像設(shè)備檢測(cè)建筑外墻及屋面作業(yè)》
- 秦腔課件教學(xué)
- DB51-T 1959-2022 中小學(xué)校學(xué)生宿舍(公寓)管理服務(wù)規(guī)范
- 水利工程施工監(jiān)理規(guī)范(SL288-2014)用表填表說(shuō)明及示例
- 妊娠合并膽汁淤積綜合征
- 新疆維吾爾自治區(qū)普通高校學(xué)生轉(zhuǎn)學(xué)申請(qǐng)(備案)表
評(píng)論
0/150
提交評(píng)論