天天看點

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

步驟一:flume的下載下傳

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

     當然,這裡也可以使用wget指令線上下載下傳,很簡單,不多說。

步驟二:flume的上傳

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

[hadoop@djt002 flume]$ ls

apache-flume-1.6.0-bin apache-flume-1.6.0-bin.tar.gz

[hadoop@djt002 flume]$ rm apache-flume-1.6.0-bin.tar.gz 

apache-flume-1.6.0-bin

[hadoop@djt002 flume]$ mv apache-flume-1.6.0-bin/ flume-1.6.0

[hadoop@djt002 flume]$ clear

[hadoop@djt002 flume]$

 步驟三:flume的配置

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

[root@djt002 flume]# vim /etc/profile

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

#flume

export FLUME_HOME=/usr/local/flume/flume-1.6.0

export FLUME_CONF_DIR=/usr/local/flume/flume-1.6.0/conf

export PATH=$PATH:$FLUME_HOME/bin

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

[root@djt002 flume]# vim /etc/profile

[root@djt002 flume]# source /etc/profile

    進入flume/conf目錄,拷貝配置檔案     

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

[hadoop@djt002 flume]$ pwd

/usr/local/flume

flume-1.6.0

[hadoop@djt002 flume]$ cd flume-1.6.0/

[hadoop@djt002 flume-1.6.0]$ ls

bin CHANGELOG conf DEVNOTES docs lib LICENSE NOTICE README RELEASE-NOTES tools

[hadoop@djt002 flume-1.6.0]$ cd conf/

[hadoop@djt002 conf]$ ls

flume-conf.properties.template flume-env.ps1.template flume-env.sh.template log4j.properties

[hadoop@djt002 conf]$

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

[hadoop@djt002 conf]$ cp  flume-conf.properties.template  flume-conf.properties

flume-conf.properties  flume-conf.properties.template  flume-env.ps1.template   flume-env.sh.template  log4j.properties

注意:

      我這裡,是為了學習環境。source為了收集,sink為了傳到hdfs上,可以配置多個source(在實際生産中)。

  但我這裡,單節點且僅為了學習,隻配置一個source。

  修改配置檔案

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

[hadoop@djt002 conf]$ vim flume-conf.properties

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

     修改為(版本1)(推薦!)

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

    注意,這個版本的話,需要安裝snappy。當然,不安裝也可以,你可以将這行注釋掉。#agent1.sinks.hdfs-sink1.hdfs.codeC = snappy

    監控的是哪個目錄?是這個/home/hadoop/test目錄。

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

  

  或修改為(版本2)

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

步驟四:啟動flume

  事先,得啟動hadoop叢集,并正常運作。

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

[hadoop@djt002 conf]$ cd $HADOOP_HOME

[hadoop@djt002 hadoop-2.6.0]$ pwd

/usr/local/hadoop/hadoop-2.6.0

[hadoop@djt002 hadoop-2.6.0]$ sbin/start-all.sh

This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh

17/01/17 18:38:04 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

Starting namenodes on [djt002]

djt002: starting namenode, logging to /usr/local/hadoop/hadoop-2.6.0/logs/hadoop-hadoop-namenode-djt002.out

djt002: starting datanode, logging to /usr/local/hadoop/hadoop-2.6.0/logs/hadoop-hadoop-datanode-djt002.out

Starting secondary namenodes [0.0.0.0]

0.0.0.0: starting secondarynamenode, logging to /usr/local/hadoop/hadoop-2.6.0/logs/hadoop-hadoop-secondarynamenode-djt002.out

17/01/17 18:39:32 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

starting yarn daemons

starting resourcemanager, logging to /usr/local/hadoop/hadoop-2.6.0/logs/yarn-hadoop-resourcemanager-djt002.out

djt002: starting nodemanager, logging to /usr/local/hadoop/hadoop-2.6.0/logs/yarn-hadoop-nodemanager-djt002.out

[hadoop@djt002 hadoop-2.6.0]$ jps

3181 ResourceManager

3280 NodeManager

2851 DataNode

2980 SecondaryNameNode

3310 Jps

2755 NameNode

[hadoop@djt002 hadoop-2.6.0]$

      事先也可以準備好一個有資料的檔案,

  比如,我這裡有這麼一份資料

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

  我現在,将它上傳到/home/hadoop/tvdata目錄下。

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

   或者,背景啟動

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

  随時待命,等待監控收集。

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

  現在,往/home/Hadoop/tvdata目錄下,傳模拟資料tvplay.txt,來收集

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

  需要等待一段時間

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

  正在收集中...等到收集完成之後,這些tmp就沒啦!

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

遇到的問題

  大檔案(我這裡是10MB)拷貝(mv,cp, scp等)到監控目錄,确實出現了exception的問題(Uncaught exception in SpoolDirectorySource thread. Restart or reconfigure Flume to continue processing.)

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

 

  解決方法:

Spooling Directory Source提供了下面一個參數:當對檔案完成采集時将檔案結尾添加字尾名

fileSuffix    .COMPLETED    Suffix to append to completely ingested files

是以我們隻需要把要移動的檔案名加上字尾後移動到監控目錄(我這裡是/home/hadoop/tvdata),然後再修改檔案名将字尾去掉就可以解決這個異常。

  先,

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

  再,

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

附:福利

 為了,我後續的學習友善,我這裡,貼出我的配置。

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

  監控的是哪個目錄?是/home/hadoop/tvdata這個目錄。

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

    是以,這裡,沒牽扯到sinkgroups。

     下面的這篇部落格,具體,我詳細分析了,如何去配置到sinkgroups

單個flume的agent部署(适用本部落格)

Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)
Flume部署安裝詳細圖文步驟(單節點)flume-1.6.0(3節點)安裝與配置(資料讀取涉及到snappy、自定義flume攔截器、flume采集節點和flume用戶端)(更新)

本文轉自大資料躺過的坑部落格園部落格,原文連結:http://www.cnblogs.com/zlslch/p/6290052.html,如需轉載請自行聯系原作者