OBS大數據解決方案-flume

      網友投稿 1033 2022-05-28

      概述

      Flume 是一個分布式的、可靠的和高可用的服務,用于收集、聚合以及移動大量日志數據。具體請參見:http://flume.apache.org/

      OBS是華為云的對象存儲服務,OBS支持S3對象存儲協議,同時也支持HDFS協議,在大數據場景中可以替代hadoop系統中的HDFS服務,本文用于描述flume如何對接使用OBS。

      OBS服務有對象桶和并行文件桶兩種選擇,在大數據場景下建議選擇并行文件桶。

      操作步驟

      以flume 1.9版本為例

      1. 下載flume

      http://flume.apache.org/download.html

      2. 安裝flume:支持寫數據到OBS

      (1)解壓apache-flume-1.9.0-bin.tar.gz到apache-flume-1.9.0-bin目錄

      (2)在部署了Hadoop的環境中(設置了HADOOP_HOME等環境變量)

      按照下述文檔配置hadoop環境

      https://github.com/huaweicloud/obsa-hdfs/blob/master/release/doc/%E5%AF%B9%E8%B1%A1%E5%AD%98%E5%82%A8%E6%9C%8D%E5%8A%A1OBSA-HDFS%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97.pdf

      (3)在沒有部署Hadoop的環境中

      下載hadoop并按照下述文檔配置hadoop環境

      https://github.com/huaweicloud/obsa-hdfs/blob/master/release/doc/%E5%AF%B9%E8%B1%A1%E5%AD%98%E5%82%A8%E6%9C%8D%E5%8A%A1OBSA-HDFS%E4%BD%BF%E7%94%A8%E6%8C%87%E5%8D%97.pdf

      將hadoop中的相關jar包復制到 apache-flume-1.9.0-bin/lib 目錄下,包含hadoop-huaweicloud-xxx.jar

      將配置好的core-site.xml文件復制到flume根目錄/conf目錄下

      3. 示例

      以flume內置的StressSource為source,以file為channel,以obs為sink

      (1)創建flume配置文件:sink2obs.properties

      agent.sources = r1

      agent.channels = c1

      agent.sinks = k1

      agent.sources.r1.type = org.apache.flume.source.StressSource

      agent.sources.r1.channels = c1

      agent.sources.r1.size = 1024

      agent.sources.r1.maxTotalEvents = 100000

      agent.sources.r1.maxEventsPerSecond = 10000

      agent.sources.r1.batchSize=1000

      agent.sources.r1.interceptors = i1

      agent.sources.r1.interceptors.i1.type = host

      agent.sources.r1.interceptors.i1.useIP = false

      agent.channels.c1.type = file

      agent.channels.c1.dataDirs = /data/agent/agent/flume-data

      agent.channels.c1.checkpointDir = /data/agent/agent/flume-checkpoint

      agent.channels.c1.capacity = 500000

      agent.channels.c1.transactionCapacity = 50000

      agent.sinks.k1.channel = c1

      agent.sinks.k1.type = hdfs

      agent.sinks.k1.hdfs.useLocalTimeStamp = true

      agent.sinks.k1.hdfs.filePrefix = %{host}_k1

      OBS大數據解決方案-flume

      agent.sinks.k1.hdfs.path = obs://obs桶名/flume/dc/create_time=%Y-%m-%d %H-%M

      agent.sinks.k1.hdfs.fileType = DataStream

      agent.sinks.k1.hdfs.writeFormat = Text

      agent.sinks.k1.hdfs.rollSize = 0

      agent.sinks.k1.hdfs.rollCount = 1000

      agent.sinks.k1.hdfs.rollInterval = 0

      agent.sinks.k1.hdfs.batchSize = 1000

      agent.sinks.k1.hdfs.round = true

      agent.sinks.k1.hdfs.roundValue = 10

      agent.sinks.k1.hdfs.roundUnit = minute

      (2)啟動flume agent

      ./bin/flume-ng agent -n agent -c conf/ -f conf/sink2obs.properties

      注意事項

      1. 多sink寫同一文件

      OBS和HDFS在一致性保證上是有差別的:

      HDFS租約機制可以保證并發寫同一個文件時不會產生一致性問題,但是OBS實現的HDFS協議不支持租約機制(并發寫同一個文件時將產生不可確定的狀態),所以在flume場景下可以通過文件命名規則進行解決,例如

      sink文件的命名規則:hostname-sinkname作為文件的前綴,如果一個主機上部署了多個flume agent,不同的agent要有不同的sinkname

      2. flume日志配置

      為了減少無謂的日志輸出,可以在flume根目錄/conf目錄下的log4j.properties文件中增加如下配置:

      log4j.logger.org.apache.hadoop.fs.obs=ERROR

      log4j.logger.com.obs=ERROR

      3. obsa寫入時臨時文件的目錄配置

      Flume寫obs時會先寫入本地磁盤緩沖區,然后上傳到obs,如果對寫入obs有極致性能要求請選擇高性能磁盤作為緩沖區,在core-site.xml文件中增加如下配置:

      fs.obs.buffer.dir

      xxx

      大數據 對象存儲服務 OBS

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:鷹眼視圖——《圖樣,too simple》系列之三
      下一篇:linux之chroot命令
      相關文章
      亚洲网站在线观看| 亚洲自偷精品视频自拍| 亚洲jjzzjjzz在线观看| 亚洲美女激情视频| 久久久久亚洲AV片无码下载蜜桃 | 亚洲尤码不卡AV麻豆| 夜色阁亚洲一区二区三区| 日韩国产欧美亚洲v片| 亚洲Av永久无码精品黑人| 亚洲老熟女五十路老熟女bbw| 亚洲 欧洲 日韩 综合在线| 亚洲不卡影院午夜在线观看| 亚洲人6666成人观看| 亚洲AV无码精品蜜桃| 亚洲最大的成人网| 亚洲女子高潮不断爆白浆| 亚洲国产成人无码AV在线影院| 亚洲国产成人久久综合| 亚洲av无码av在线播放| 亚洲AV无码成人精品区大在线| 亚洲 小说区 图片区 都市| 亚洲国产日韩成人综合天堂 | 国产亚洲视频在线观看网址| 精品国产日韩亚洲一区91| 天堂亚洲免费视频| 国产亚洲成人在线播放va| 亚洲中文字幕无码中文字在线| 亚洲精品成人网站在线观看| 亚洲国产精品乱码一区二区 | 亚洲国产AV无码一区二区三区| 亚洲Aⅴ在线无码播放毛片一线天 亚洲avav天堂av在线网毛片 | 亚洲精品国产免费| 亚洲激情视频图片| 亚洲精品国产av成拍色拍| 国产亚洲日韩在线a不卡| 亚洲熟伦熟女新五十路熟妇 | 成人亚洲性情网站WWW在线观看| 国产综合精品久久亚洲| 亚洲av无码乱码国产精品| 亚洲熟妇av一区二区三区下载| 亚洲妇女熟BBW|