Flume 常用配置项
注:以下配置项均为常见配置项,查询详细配置项可以访问 flume 官网
Source 常见配置项
Avro Source
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| Channel | – | |
| type | – | 组件类型名称,必须为avro |
| bind | – | 要监听的主机名或IP地址 |
| port | – | 要绑定的端口号 |
| threads | – | 产生的最大工作线程数 |
| ipFilterRules | – | 使用此配置定义N个netty ipFilter模式规则。 |
Thrift Source
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| Channel | – | |
| type | – | 组件类型名称,必须为Thrift |
| bind | – | 要监听的主机名或IP地址 |
| port | – | 要绑定的端口号 |
| threads | – | 产生的最大工作线程数 |
| ipFilterRules | – | 使用此配置定义N个netty ipFilter模式规则。 |
Exec Source
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| Channel | – | |
| type | – | 组件名称,必须为 exec |
| command | – | 需要执行的指令 |
| restartThrottle | 10000 | 重启之前需要等待的时间(10秒) |
| restart | false | cmd挂掉是否应该自动重启 |
| batchSize | 20 | 每次可以读取的行数 |
| batchTimeout | 3000 | 这批数据必须处理完的时间 |
Kafka Source
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| channels | – | |
| type | – | 组件名称,必须为org.apache.flume.source.kafka,KafkaSource |
| zookeeperConnect | – | Zookeeper的地址 |
| groupId | flume | consumer group的唯一标识,在多个source或多个agent中设置相同的ID表示它们属于同一个consumer group |
| topic | – | Kafka的Topic,只能是一个 |
| batchSize | 1000 | 一个批次中最大能取到的消息数 |
Netcat Source
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| channels | – | |
| type | – | 组件名称,必须为 netcat |
| bind | – | 需要绑定的主机 |
| port | – | 需要绑定的端口号 |
| max-line-length | 512 | 每条消息的最大字节数 |
| ack-every-event | true | 为每条成功接收的消息回复'OK' |
Sequence Generator Source
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| channels | – | |
| type | – | 组件名称,必须为 seq |
Http Source
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| type | 组件名称,必须为http |
|
| port | – | 需要绑定的端口 |
| bind | 0.0.0.0 | 需要监听的地址 |
| handler | org.apache.flume.source.http.JSONHandler |
handler类的完整名称 |
| handler.* | – | handler的参数 |
Custom Source
| 配置项名称 | 默认 | 描述 |
|---|---|---|
| channels | – | |
| type | – | 组件名称,为用户自定义的完整类名称 |
Channels 常用配置项
Memory Channel
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| type | – | 组件名称,必须为 memory |
| capacity | 100 | channel最大能存储的event数量 |
| transactionCapacity | 100 | 每次事务中能从source中拉取或下沉到sink的最大event数量 |
| keep-alive | 3 | 添加 |
| byteCapacityBufferPercentage | 20 | 定义byteCapacityBuffer 的占比,它与 byteCapacity之和为100%,byteCapacity见下栏 |
| byteCapacity | 在这个channel中允许存放的最大字节数 这个字节数只计算event body,这也是需要提供 byteCapacityBufferPercentage 配置参数的原因。 默认为JVM可用最大内存的80% (即通过命令行传递的-Xmx值的80%)。 注意,如果一个agent里面包含了多个channel,channel里面又包含了多个相同的events,那么这些events会被重复计算。 将它设为 0 将会导致这个值强制设定为200GB的容量 |
JDBC Channel
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| type | – | 组件名称,必须为 jdbc |
| db.type | DERBY | 数据库类型,必须为 DERBY. |
| driver.class | org.apache.derby.jdbc.EmbeddedDriver | JDBC 驱动类 |
| driver.url | (constructed from other properties) | JDBC 连接路径 URL |
| db.username | “sa” | 数据库用户 |
| db.password | – | 密码 |
| connection.properties.file | – | JDBC 连接的配置文件 |
| create.schema | true | 如果为真,则如果库不存在,就会自动创建 |
| create.index | true | 创建索引以加快查找 |
| create.foreignkey | true | 是否允许创建外键 |
| transaction.isolation | “READ_COMMITTED” | 隔离级别 READ_UNCOMMITTED, READ_COMMITTED, SERIALIZABLE, REPEATABLE_READ |
| maximum.connections | 10 | 运行连接数据库的最大连接数 |
| maximum.capacity | 0 (不限制) | channel中允许的最大event数 |
| sysprop.* | 数据库特殊配置 | |
| sysprop.user.home | 嵌入式Derby数据库的存储路径 |
Kafka Channel
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| type | – | 组件名称,必须为 org.apache.flume.channel.kafka.KafkaChannel |
| brokerList | – | Kafka Broker列表,建议至少有两台用于实现高可用,格式为hostname:port,broker之间用‘,’隔开 |
| zookeeperConnect | – | Kafka集群使用的ZooKeeper的URI 格式是‘,’分隔的主机名hostname:port。如果使用chroot,则在末尾添加一次。 例如: zookeeper-1:2181,zookeeper-2:2182,zookeeper-3:2181/kafka |
| topic | flume-channel | Kafka topic |
| groupId | flume | channel用于在kafka注册的GroupID,多个channel必须使用相同的topic和group,以确保当一个agent失败时,另一个agent可以获得数据 注意:相同GroupID但是没有channel的consummer将导致丢失 |
| readSmallestOffset | false | 当设置为true时,通道将从最老的事件开始读取主题中的所有数据,当为false时,它将只读取通道启动后写入的事件 |
| Other Kafka Properties | – | 这些属性用于配置通道使用的Kafka生产者和消费者。Kafka支持的任何属性都可以使用。惟一的要求是在属性名前面加上前缀 kafka.. 举个例子: kafka.producer.type |
File Channel
| 配置项名称 默认值 | 描述 | |
|---|---|---|
| type | – | 组件名称,必须为 file. |
| checkpointDir | ~/.flume/file-channel/checkpoint | checkpoint文件的存储目录 |
| useDualCheckpoints | false | 备份checkpoint文件,如果它为 true, backupCheckpointDir 必须 被设置 |
| backupCheckpointDir | – | 用于备份的checkpoint目录,它 必须不能 与原checkpoint目录一样 |
| dataDirs | ~/.flume/file-channel/data | ‘,’分隔的目录列表,用于存储日志文件。在不同的磁盘上使用多个目录可以提高filechannel的性能 |
| transactionCapacity | 10000 | channel支持的最大事务数 |
| checkpointInterval | 30000 | checkpoint之间的最大时间间隔 |
| maxFileSize | 2146435071 | 单个日志文件最大的字节数 |
| minimumRequiredSpace | 524288000 | 最少需要的空闲空间(以字节为单位)。为了避免数据损坏,当空闲空间低于此值时,filechannel将停止接受take/put请求 |
| capacity | 1000000 | 单个channel存储的最大容量 |
| keep-alive | 3 | 一个put操作执行的最大时间 |
| checkpointOnClose | true | 在关闭时是否创建检查点,如果设置为true,可以加速filechannel的后续启动。 |
Sinks 常用配置
HDFS Sink
| Name | 默认值 | 描述 |
|---|---|---|
| channel | – | |
| type | – | 组件名称,必须为 hdfs |
| hdfs.path | – | HDFS 目录路径 (例如 hdfs://namenode/flume/webdata/) |
| hdfs.filePrefix | FlumeData | Flume创建的文件名的前缀 |
| hdfs.fileSuffix | – | Flume创建的文件名的后缀 (例如 .avro - 注意:当前不会自动添加) |
| hdfs.inUsePrefix | – | 当前正在写入的文件名的前缀 |
| hdfs.inUseSuffix | .tmp |
当前正在写入的文件名的后缀 |
| hdfs.rollInterval | 30 | 触发文件滚动要等待的秒数 (0 = 无需根据时间进行滚动) |
| hdfs.rollSize | 1024 | 触发文件滚动的字节数大小 (0: 无需根据文件大小滚动) |
| hdfs.rollCount | 10 | 触发文件滚动的event数量 (0 = 无需根据events进行滚动) |
| hdfs.idleTimeout | 0 | 自动关闭文件的时间间隔(如果没有数据写入) (0 = 不自动关闭) |
| hdfs.batchSize | 100 | 每次写入 HDFS前读取的events数量 |
| hdfs.codeC | – | 压缩成以下格式之一: gzip, bzip2, lzo, lzop, snappy |
| hdfs.fileType | SequenceFile | 当前序列化格式,有以下三种: SequenceFile, DataStream or CompressedStream (1)DataStream 不能设置 codeC (2)CompressedStream 需要设置 hdfs.codeC |
| hdfs.maxOpenFiles | 5000 | 允许同时打开文件的最大数量。如果超过这个数字,则关闭最旧的文件。 |
| hdfs.minBlockReplicas | – | 指定每个HDFS块的最小副本数。如果没有指定,它来自类路径中的默认Hadoop配置. |
| hdfs.writeFormat | – | writeFormat格式. 有以下两种: “Text” , “Writable” (默认). |
| hdfs.callTimeout | 10000 | HDFS打开、写入、刷新、关闭操作允许的最大毫秒数。 如果发生许多HDFS超时操作,则应增加此数值。 |
| hdfs.threadsPoolSize | 10 | HDFS操作的线程池数量 |
| hdfs.round | false | 时间戳是否应该四舍五入 (如果为true, 时间戳会向下取时间) |
| hdfs.roundValue | 1 | 四舍五入到它的最高倍数hdfs.roundUnit), 比当前时间更小 |
| hdfs.roundUnit | second | 四舍五入的数值 - second, minute or hour. |
Hive sink
| Name | 默认值 | 描述 |
|---|---|---|
| channel | – | |
| type | – | 组件名称,必须为 hive |
| hive.metastore | – | Hive metastore 的路径 (例如 thrift://a.b.com:9083 ) |
| hive.database | – | Hive database |
| hive.table | – | Hive 表名 |
| hive.partition | – | ‘,’分隔分区值列表,标识要写入的分区。 例如: 如果表的分区为 (continent: string, country :string, time : string) 那么 ‘Asia,India,2014-02-26-01-21’ 将会被解释为 continent=Asia,country=India,time=2014-02-26-01-21 |
| batchSize | 15000 | 单个Hive事务中能写入的最大event数量 |
Logger sink
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| channel | – | |
| type | – | 组件名称,必须为 logger |
Avro Sink
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| channel | – | |
| type | – | 组件名称,必须为 avro. |
| hostname | – | 需要绑定的主机或IP地址 |
| port | – | 监听的端口号 |
| batch-size | 100 | 一次性发送的最大events数量 |
| connect-timeout | 20000 | 允许第一次(连接)请求的时间(ms). |
Thrift Sink
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| channel | – | |
| type | – | 组件名称,必须为 thrift. |
| hostname | – | 需要绑定的主机或IP地址 |
| port | – | 监听的端口号 |
| batch-size | 100 | 一次性发送的最大events数量 |
| connect-timeout | 20000 | 允许第一次(连接)请求的时间(ms). |
HBase Sink
| 配置项名称 | 默认值 | 描述 |
|---|---|---|
| channel | – | |
| type | – | 组件名称,必须为 hbase |
| table | – | 需要写入到Hbase的表名 |
| columnFamily | – | Hbase的列族 |
| zookeeperQuorum | – | quorum 配置. 这个配置的值为 hbase.zookeeper.quorum它在 hbase-site.xml文件中 |
Flume 常用配置项的更多相关文章
- webpack基础+webpack配置文件常用配置项介绍+webpack-dev-server
一.webpack基础 1.在项目中生成package.json:在项目根目录中输入npm init,根据提示输入相应信息.(也可以不生成package.json文件,但是package.json是很 ...
- hadoop 常用配置项【转】
hadoop 常用配置项[转] core-site.xml name value Description fs.default.name hdfs://hadoopmaster:9000 定义 ...
- Intellij idea 系列教程之常用配置项
Intellij idea 系列教程之常用配置项 Intellij idea 系列教程目录(https://www.cnblogs.com/binarylei/p/10347600.html) Lan ...
- webpack常用配置项配置文件介绍
一.webpack基础 1.在项目中生成package.json:在项目根目录中输入npm init,根据提示输入相应信息.(也可以不生成package.json文件,但是package.json是很 ...
- Eureka注册中心高可用及常用配置项
一.前言 前面已经简单的介绍了 Eureka 注册中心的使用以及查看.下面将继续进行 Eureka 的说明以及应用. 二.Eureka 的高可用搭建 在实际生产项目中,为了保证服务的可用性,连续性,一 ...
- Nuxt.js学习(二) --- Nuxt目录结构详解、Nuxt常用配置项、Nuxt路由配置和参数传递
[TOC] 1.Nuxt目录结构详解 Nuxt项目文件目录结构 |-- .nuxt // Nuxt自动生成,临时的用于编辑的文件,build |-- assets // 用于组织未编译的静态资源入LE ...
- Vue实例 中的常用配置项
创建Vue实例时,使用 new Vue ({//配置项}) 或者 组件定义中 export default {//配置项},所有的Vue组件都是Vue实例,并且接受相同的选项对象(一些根实例特有的选项 ...
- Jmeter系列(5)- jmeter.properties常用配置项讲解
如果你想从头学习Jmeter,可以看看这个系列的文章哦 https://www.cnblogs.com/poloyy/category/1746599.html jmeter.properties 所 ...
- hadoop 常用配置项
core-site.xml name value Description fs.default.name hdfs://hadoopmaster:9000 定义HadoopMaster的URI ...
随机推荐
- OOUnit1Summary
一.前三次作业内容分析 前言 第一单元的作业以表达式求导为主题,分三次要求逐步增加,难度逐步提高.这三次作业下来,本人既有收获,也有遗憾,因此通过接下来的内容对我这三次作业进行分析和总结,希望能能为我 ...
- springboot基础项目搭建(十五篇)
springboot系列一.springboot产生背景及介绍 springboot系列二.springboot项目搭建 springboot系列三.springboot 单元测试.配置访问路径.多个 ...
- JDBC_07_SQL注入问题 (登录和注册)
SQL注入问题 导致SQL注入的根本原因是什么? 用户输入的信息中含有sql语句的关键字,并且用户所输入的信息参与了sql语句的编译过程,导致sql语句的原意被扭曲. 模拟用户登陆注册,演示sql注入 ...
- Day10_53_Collections.synchronizedList() 将Arraylist集合转换为线程安全的集合
将Arraylist集合转换为线程安全的集合 import java.util.ArrayList; import java.util.Collections; import java.util.Li ...
- 【Java】String、StringBuilder和StringBuffer
[String] 首先,从String类的定义入手,可以看到String类是由final修饰,即不可变的,一旦创建出来就不可修改,因此首先明确,字符串的拼接.截取等操作都会产生新的字符串对象. 观察以 ...
- php抽象类,接口,特性的比较
php抽象类 抽象方法必须被子类继承实现,所以不能为私有,只能是受保护的或公有的; 抽象类子类的方法访问控制级别必须和抽象类相等或更宽松.例如,父类的抽象方法是受保护的,子类实现时则必须为受保护的或者 ...
- Python脚本自动化破解大白鲨摄像头(Shodan)
关于本文的技术知识点,Shodan模块的用法,传送门--> Python中shadon模块的使用 Shodan的使用 今天我们要利用python进行自动化破解的摄像头叫大白鲨摄像头,他的 ...
- Windows中的用户和组以及用户密码处理
目录 用户帐户 Windows 默认账户 Windows 内置用户账户 查看.创建和删除账户 组账户 内置组账户 组的查看.创建和删除 Windows中对用户密码的处理 LM-hash NTLM-ha ...
- maven工程添加servlet依赖
实现导入HttpServlet <!-- Servlet依赖--> <dependency> <groupId>javax.servlet</groupId& ...
- dispatcherServlet-servlet.xml(SSM maven 项目)
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...