flume----初步安裝與配置

目錄標題

    • **flume的簡單介紹**
      • ?flume的**核心組件**
      • ?**核心特點**
    • **安裝部署**
      • 1)**解壓安裝包**
      • 2)**修改名字** **(配置文件時,更方便)**
      • **3)??配置文件**
      • 4)**兼容Hadoop**
      • 5)**配置環境變量**
      • 6)**測試flume**
    • **?啟動flume**
      • 1)在`flume`中創建空目錄`jobs`
      • 2)在`jobs`內添加文件
      • **最終啟動**

flume的簡單介紹

Flume 是一個開源的 分布式日志收集系統,由 Apache 開發,主要用于高效地 采集、聚合和傳輸海量日志數據 (比如網站點擊日志、服務器監控日志等),并將這些數據可靠地傳遞到 目標存儲 (如 HDFS、HBase、Kafka 等)

?flume的核心組件

1.source(數據接收源頭)

  • 負責接數據
    例,監聽日志文件的新增內容

2.channel(通道)

  • 負責臨時存儲數據,確保數據不會丟失,相當于“緩沖區”

  • 存在原因
    數據的 “輸入”“輸出” 速度有時不同,為了避免數據丟失

3.sink(數據的輸出)

  • 負責“送數據”,比如將數據寫入
    HDFSkafka

?核心特點

  1. 可靠性
  • 數據在傳輸過程中會持久化緩存(Channel),即使系統故障,數據也不會丟失
  1. 擴展性
  • 可橫向擴展多個 Agent(Flume 節點)處理更大數據量
  1. 靈活性
  • 支持多種數據源(HTTP、日志文件、Kafka 等)和目的地(HDFS、HBase、ES 等)

  • 可自定義數據過濾、格式轉換等邏輯

安裝部署

1)解壓安裝包

tar -zxvf 文件名 - C 位置

tar -zxvf apache-flume-1.9.0-bin.tar.gz -C /opt/module/

2)修改名字 (配置文件時,更方便)

先進入到 flume 解壓后所在的位置,然后修改

mv 原名 更改后的名字

mv apache-flume-1.9.0 flume

3)??配置文件

所配置的在flumeconf里面
(zookeeper也是)
切到conf
再配置
flume-env.sh.template

log4j.properties

  • flume-env.sh.template文件
    保留原本的 內容 防止后續使用
    可以 將此文件復制一份 更名為flume-env.sh
cp flume-env.sh.template flume-env.sh

內容均配置到flume-env.sh

?添加jdk的路徑

export JAVA_HOME=/opt/module/jdk
  • log4j.properties文件

添加:

flume.log.dir=/opt/module/flume/logs

4)兼容Hadoop

flumelib 下的
guava-11.0.2.jar 改名,以兼容hadoop-3.1.3

[root@hadoop102 lib] mv  guava-11.0.2.jar  guava-11.0.2.jar.bak

文件后.bak 可以 架空 此文件,以便兼容 hadoop-3.1.3

5)配置環境變量

vi /etc/profile添加 flumeexport

export FLUME_HOME=/opt/module/flume
export PATH=$PATH:$FLUME_HOME/bin

生效環境變量文件

source /etc/profile

6)測試flume

flume-ng version檢查版本

?啟動flume

啟動時,需要進一步配置

1)在flume中創建空目錄jobs

mkdir jobs

2)在jobs內添加文件

文件名為flume-netcat-logger.conf

vi flume-netcat-logger.conf

里面的內容是 flume 的啟動內容

  • ① 將組件命名
  • ②描述組件/配置源 source
  • ③將一個事件緩沖到channel
  • ④描述組件sink
  • ⑤將輸入源source輸出sink
    管道channel聯系起來

如圖
在這里插入圖片描述

最終啟動

bin/flume-ng agent -n a1 -c conf/ -f jobs/flume-netcat-logger.conf -Dflume.root.logger=INFO,console
nc hadoop01 10050

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/78850.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/78850.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/78850.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深度整合Perforce P4+Jira+Confluence:游戲開發團隊協作工具鏈搭建指南

現場對話 游戲開發團隊最頭疼的版本管理問題是什么? SVN宕機? Git倉庫爆炸? 還是美術資源管理一團亂? 在4月11-12日的GGS 2025全球游戲峰會上,Perforce中國授權合作伙伴-龍智的銷售和技術支持團隊,與行業…

k8s基本概念-YAML

YAML介紹 YAML是“YAML Aint a Markup Language” (YAML不是一種置標語言)的遞歸縮進寫,早先YAML的意思其實是:“Yet Another Markup Language”(另一種置標語言) YAML是一個類似XML、JSON的標記性語言。YAML強調以數據為中心,并不是以標識語言為重點。因而YAML本身的定義…

ECharts散點圖-散點圖20,附視頻講解與代碼下載

引言: ECharts散點圖是一種常見的數據可視化圖表類型,它通過在二維坐標系或其它坐標系中繪制散亂的點來展示數據之間的關系。本文將詳細介紹如何使用ECharts庫實現一個散點圖,包括圖表效果預覽、視頻講解及代碼下載,讓你輕松掌握…

Infrared Finance:Berachain 生態的流動性支柱

在加密市場中,用戶除了參與一級和二級交易,還有一種低門檻參與的就是空投。從 2021 年 DeFi 成為主流開始,空投一直都是“以小搏大”的機會,通過參與項目早期的鏈上交互和任務以獲取空投獎勵,近幾年已成為一種廣受歡迎…

附1:深度解讀:《金融數據安全 數據安全分級指南》——數據分類的藝術專欄系列

文章目錄 一、文件背景與意義1.1 文件背景1.2 文件意義 二、文件結構與核心內容2.1 文件結構概述2.2 核心內容解析2.2.1 范圍與適用對象2.2.2 數據安全定級目標與原則2.2.3 數據安全定級要素2.2.4 要素識別2.2.5 數據安全級別劃分 三、定級方法與流程3.1 定級流程3.2 級別變更機…

vue mixin混入與hook

mixin混入是 ?選項式 API?&#xff0c;在vue3-Composition API <script setup> 中無法直接使用&#xff0c;需通過 setup() 函數轉換 vue2、vue3選項式API: // mixins/mixin.js export const mixin {methods: {courseType(courseLevel) {const levelMap {1: 初級,…

Excel如何安裝使用EPM插件并且漢化?

Excel如何使用EPM插件 Excel如何使用EPM插件一、安裝EPM插件二、啟動EPM插件三、插件漢化設置 Excel如何使用EPM插件 一、安裝EPM插件 在安裝EPM插件時&#xff0c;若運行安裝包后出現報錯提示&#xff0c;通常是因為系統缺少 Visual Studio 2010 組件&#xff0c;需先安裝該…

vue3-springboot-mysql的docker部署

Docker配置原理與部署文檔 概述 本文檔詳細說明RuoYi-Vue與BladeX集成項目的Docker部署原理&#xff0c;包括配置文件的作用、相互關系及數據流動。通過三個核心配置文件&#xff08;docker-compose.yml、Dockerfile和docker-entrypoint.sh&#xff09;&#xff0c;實現了應用…

第十二天 使用Unity Test Framework進行自動化測試 性能優化:Profiler分析、內存管理

前言 在完成游戲核心功能開發后,如何確保項目質量并成功發布到各大平臺?本文將從自動化測試到商店上架,手把手教你構建完整的游戲開發閉環。使用Unity 2022 LTS版本進行演示,所有代碼均經過實際項目驗證。 一、自動化測試實戰(Unity Test Framework) 1.1 測試框架搭建 …

【專題四】前綴和(3)

&#x1f4dd;前言說明&#xff1a; 本專欄主要記錄本人的基礎算法學習以及LeetCode刷題記錄&#xff0c;按專題劃分每題主要記錄&#xff1a;&#xff08;1&#xff09;本人解法 本人屎山代碼&#xff1b;&#xff08;2&#xff09;優質解法 優質代碼&#xff1b;&#xff…

深度解析:TextRenderManager——Cocos Creator藝術字體渲染核心類

一、類概述 TextRenderManager 是 Cocos Creator 中實現動態藝術字體渲染的核心單例類。它通過整合資源加載、緩存管理、異步隊列和自動布局等功能&#xff0c;支持普通字符模式和圖集模式兩種渲染方案&#xff0c;適用于游戲中的動態文本&#xff08;如聊天內容、排行榜&…

【漫話機器學習系列】229.特征縮放對梯度下降的影響(The Effect Of Feature Scaling Gradient Descent)

特征縮放對梯度下降的影響&#xff1a;為什么特征標準化如此重要&#xff1f; 在機器學習和深度學習中&#xff0c;梯度下降是最常用的優化算法之一。然而&#xff0c;很多人在訓練模型時會遇到收斂速度慢、訓練不穩定的問題&#xff0c;其中一個重要原因就是特征未進行適當的…

【神經網絡與深度學習】批標準化(Batch Normalization)和層標準化(Layer Normalization)

引言 在深度學習中&#xff0c;標準化技術&#xff08;Normalization&#xff09;是提高神經網絡訓練效率和性能的重要工具。其中&#xff0c;批標準化&#xff08;Batch Normalization, BN&#xff09;和層標準化&#xff08;Layer Normalization, LN&#xff09;是兩種常用的…

OpenHarmony之電源管理子系統公共事件定義

OpenHarmony之電源管理子系統公共事件定義 電源管理子系統面向應用發布如下系統公共事件&#xff0c;應用如需訂閱系統公共事件&#xff0c;請參考公共事件接口文檔。 COMMON_EVENT_BATTERY_CHANGED 表示電池充電狀態、電平和其他信息發生變化的公共事件的動作。 值&#x…

linux 環境下 c++ 程序打印 core dump 信息

linux 信號機制 軟中斷信號 Signal&#xff0c;簡稱信號&#xff0c;用來通知進程發生了異步事件&#xff0c;進程之間可以互相通過系統調用 kill 等函數來發送軟中斷信號。內核也可以因為內部事件而給進程發送信號&#xff0c;通知進程發生了某個事件。 進程對信號的處理 進…

Qt開發環境的安裝與問題的解決(2)

文章目錄 1. Qt開發環境安裝的說明2. 通過安裝包進行安裝3. 通過在線下載程序 解決問題下載 https....網路錯誤問題解決開始安裝--第一部分開始安裝--第二部分 4. 建議配置環境變量&#xff08;非必須&#xff09;配置環境變量的意義 簡介&#xff1a;這篇文章主要分享Qt開發環…

【每日EDA行業分析】2025年4月25日

深度總結&#xff1a;EDA 軟件行業現狀與發展趨勢 一、引言 在半導體產業的復雜生態中&#xff0c;EDA 軟件宛如一顆閃耀的明珠&#xff0c;它是集成電路設計的核心工具&#xff0c;貫穿芯片從設計構思到最終封裝測試的全流程&#xff0c;其重要性不言而喻&#xff0c;被譽為…

flutter實踐:比例對比線圖實現

需求&#xff1a;flutter實現一個左右對比線圖,帶有動畫效果 效果圖&#xff1a; Widget _buildTop() {return Container(height: themeData.heightXl,padding: EdgeInsets.symmetric(horizontal: themeData.hSpacingMd),child: Row(mainAxisAlignment: MainAxisAlignment.spa…

測試基礎筆記第十五天

提示&#xff1a;文章寫完后&#xff0c;目錄可以自動生成&#xff0c;如何生成可參考右邊的幫助文檔 文章目錄 一、集合1.集合的定義二、使用集合列表去重 導包二、函數1.函數介紹2.定義函數3.調用函數4.函數實現登錄案例5.函數的返回值 三、模塊和包1.模塊的概念(Module)2.模…

Linux中的shell腳本練習

1.判斷字符串是否為空 #!/usr/bin/bash while : #:默認值為真 do read -p "請輸入你的密碼: " a pass123456 if [ -z $a ];thenecho "您輸入的密碼不能為空"exit 1 elseif [ $a $pass ];thenecho "登錄成功"breakelseecho "您的密碼輸入有…