首页 > 其他分享 >Flume - Flume 介绍

Flume - Flume 介绍

时间:2023-05-19 16:47:11浏览次数:46  
标签:Flume flume tmrisimple -- 介绍 a1 games Channel

Flume 组成架构

Flume 安装部署

 

 

 

Flume 组成架构

 

Agent

Agent 是一个 JVM 进程,它以事件的形式将数据从源头送至目的地。 Agent 主要 由三个部分组成:Source,Channel,Sink

Source

Source 是负责接收数据到 Flume Agent 的组件。 Source 的组件可以处理各种类型、各种格式的日志数据。 包括: avro、thrift、exec、jms、spooling directory、netcat、sequence generator、syslog、http、legacy。

Channel

Channel 是位于 Source 和 Sink 之间的缓冲区。因此,Channel 允许 Source 和 Sink 运作在不同的速率上。Channel 是线程安全的,可以同时处理几个 Source 的写入操作和几个 Sink 的读取操作。   Flume 自带两种 Channel:Memory Channel 和 File Channel。 Memory Channel 是内存中的队列。Memory Channel 在不需要关心数据丢失的情境下适用。如果需要关心数据丢失,那么 Memory Channel 就不应该使用,因为程序死亡、机器宕机或者重启都会导致数据丢失。 File Channel 将所有事件写到磁盘。因此在程序关闭或机器宕机的情况下不会丢失数据。

Sink

Sink 不断地轮询 Channel 中的事件且批量地移除它们,并将这些事件批量写入到存储或索引系统、或者被发送到另一个 Flume Agent。 Sink 组件目的地包括 hdfs、logger、avro、thrift、ipc、file、HBase、solr、自定义

 

 

 

Flume 安装部署

 

1、将flume的安装包上传到任一节点并解压

tar -zxvf apache-flume-1.9.0-bin.tar.gz

2、文件目录如下

总用量 256
drwxr-xr-x 2 tmrisimple games   4096 5月  19 16:24 bin
-rw-r--r-- 1 tmrisimple games  89032 10月 17 2022 CHANGELOG
drwxr-xr-x 2 tmrisimple games   4096 5月  19 16:25 conf
-rw-r--r-- 1 tmrisimple games   5681 1月  21 2022 DEVNOTES
-rw-r--r-- 1 tmrisimple games   2873 1月  21 2022 doap_Flume.rdf
drwxr-xr-x 5 tmrisimple games   4096 10月 17 2022 docs
drwxr-xr-x 2 root       root   12288 5月  19 16:24 lib
-rw-r--r-- 1 tmrisimple games 108909 10月 17 2022 LICENSE
-rw-r--r-- 1 tmrisimple games   8832 10月 17 2022 NOTICE
-rw-r--r-- 1 tmrisimple games   2483 1月  21 2022 README.md
-rw-r--r-- 1 tmrisimple games   1590 10月 10 2022 RELEASE-NOTES
drwxr-xr-x 2 root       root    4096 5月  19 16:24 tools

2、在flume-env.sh中配置JAVA_HOME 

# conf目录下,默认是有这四个文件
总用量 16
-rw-r--r-- 1 tmrisimple games 1661 1月  21 2022 flume-conf.properties.template
-rw-r--r-- 1 tmrisimple games 1455 1月  21 2022 flume-env.ps1.template
-rw-r--r-- 1 tmrisimple games 1568 1月  21 2022 flume-env.sh.template
-rw-r--r-- 1 tmrisimple games 2399 10月  8 2022 log4j2.xml

# flume-env.sh需要复制flume-env.sh.template
cp -a flume-env.sh.template flume-env.sh
vim flume-env.sh

 

3、某个配置文件flume-xxx.properties的介绍

# flume配置的例子
# Name the components on this agent
# source:起一个别名
# properties文件它是java的配置文件,=左边就是键,=右边是值;键的开头都是以a1(就是flume的名字--agent的名字就是a1);a1随便起
a1.sources = r1
# sink:起一个别名
a1.sinks = k1
# channels;:起一个别名
a1.channels = c1
 
# Describe/configure the source
# a1(agent的名字).sources(来源).r1(来源的名字);配置多个来源
# type:不能随便写(文档上说明)
a1.sources.r1.type = netcat
# bind:netcat的一个属性(绑定)
a1.sources.r1.bind = localhost
# port:netcat的一个属性;(端口)
a1.sources.r1.port = 44444
 
# Describe the sink
# 描述一个sink: logger日志(打印到控制台上)
a1.sinks.k1.type = logger
 
# Use a channel which buffers events in memory
# 描述一下channel:内存
a1.channels.c1.type = memory
# capacity:容量
a1.channels.c1.capacity = 1000
# transactionCapacity:事务的容量
a1.channels.c1.transactionCapacity = 100
 
# Bind the source and sink to the channel
# 绑定;source和channel绑定
a1.sources.r1.channels = c1
# sink和channel绑定
a1.sinks.k1.channel = c1

 

默认properties文件

 

标签:Flume,flume,tmrisimple,--,介绍,a1,games,Channel
From: https://www.cnblogs.com/harleyblogs/p/17415495.html

相关文章

  • Qt+QtWebApp开发笔记(二):http服务器日志系统介绍、添加日志系统至Demo测试
    前言  上一篇使用QtWebApp的基于Qt的轻量级http服务器实现了一个静态网页返回的Demo,网页服务器很重要的就是日志,因为在服务器类上并没有直接返回,所以,本篇先把日志加上。 Demo  下载地址  链接:https://pan.baidu.com/s/1BPVRLS07qk-WPi-txERKbg?pwd=1234......
  • ET介绍——Actor Location
    ActorLocationActor模型只需要知道对方的InstanceId就能发送消息,十分方便,但是有时候我们可能无法知道对方的InstanceId,或者是一个Actor的InstanceId会发生变化。这种场景很常见,比如:很多游戏是分线的,一个玩家可能从1线换到2线,还有的游戏是分场景的,一个场景一个进程,玩家从场景1进......
  • ET介绍——数值组件设计
    类似魔兽世界,moba这种技能极其复杂,灵活性要求极高的技能系统,必须需要一套及其灵活的数值结构来搭配。数值结构设计好了,实现技能系统就会非常简单,否则就是一场灾难。比如魔兽世界,一个人物的数值属性非常之多,移动速度,力量,怒气,能量,集中值,魔法值,血量,最大血量,物理攻击,物理防御,法术攻击,......
  • MagicEXIF(元数据编辑器)Win激活旗舰版中文安装教程下载和介绍
    寻找一款好用的MagicEXIF软件可谓是一场漫长的旅程。在搜索引擎中找到的许多下载网站提供的MagicEXIF软件基本都是假的,带有各种广告捆绑软件,让人感到十分沮丧。此外,有些下载版本也无法激活或注册。不过今天小编为大家提供的这个MagicEXIF(元数据编辑器)win激活版本经过测试已完美安......
  • Android 代码混淆proguard技术介绍
    由于各种反编译工具的泛滥,作为Android程序员在2.3版本以前只能通过手动添加proguard来实现代码混淆proguard这个工具是一个java代码混淆的工具在2.3版本的sdk中我们可以看到在android-sdk-windows/tools/下面多了一个proguard文件夹google已经把proguard......
  • 知行之桥EDI系统2023版功能介绍——日志页面
    在知行之桥EDI系统2023版中,除了在此前的文章中曾经介绍过的概览页面之外,还新增了日志页面。日志页面基于旧版本的状态页面进行了功能优化,为用户展示了消息、交易日志、应用程序日志、访问日志以及审计日志五种类型,每种日志类型都有自己的选项卡,并作为单独的表存储在应用程序数据库......
  • 线程介绍和使用
    1. 线程相关概念  5791.1 程序(program)  579是为完成特定任务、用某种语言编写的一组指令的集合。简单的说:就是我们写的代码1.2 进程  5791.进程是指运行中的程序,比如我们使用QQ,就启动了一一个进程,操作系统就会为该进程分配内存空间。当我们使用迅雷,又启动了一个进程,操......
  • AZC智能集成式电力电容器的原理与优点介绍
    安科瑞虞佳豪随着国家对农村建设的大力支持,农村生活条件不断改善,用电量也不断加大,逐渐暴露出农村低电压的现象;以及大量单相家用电器设备使用,将导致三相负荷不平衡,配电网电压波动大,严重时则会损坏用电设备,因此,农村对电压质量的要求也越来越高。现农村配电网大部分仍使用传统无功补......
  • ET介绍—— 一切皆实体的设计
    一切皆实体目前十分流行ECS设计,主要是守望先锋的成功,引爆了这种技术。守望先锋采用了状态帧这种网络技术,客户端会进行预测,预测不准需要进行回滚,由于组件式的设计,回滚可以只回滚某些组件即可。ECS最重要的设计是逻辑跟数据的完全分离。即EC是纯数据,System实际上就是逻辑,由数据驱动......
  • es笔记一之es安装与介绍
    本文首发于公众号:Hunter后端原文链接:es笔记一之es安装与介绍首先介绍一下es,全名为Elasticsearch,它定义上不是一种数据库,是一种搜索引擎。我们可以把海量数据都放到es里然后提供搜索操作,但是MySQL也同样可以提供搜索,为什么要用es呢?一个是因为它搜索快,使用倒排索引的......