Flume是什么

Flume是一个分布式、可靠、高可用的海量日志采集、聚合和传输的工具

Flume的组件

  • source:数据源
  • sink:数据出口
  • channel:连接source和sink的组件,类似于一个队列,可以缓存和传输数据,Flume提供了两种内置的channel:Memory Channel和FileChannel

Flume的使用步骤

  1. 在conf目录下创建一个配置文件,定义source、channel和sink的类型和属性
  2. 启动flume agent,指定配置文件和agent名称
  3. 根据source类型,向flume发送数据,查看sink输出结果

配置文件的编写

参考官方文档

Flume 1.11.0 User Guide — Apache Flume

flume可以同时配置多种source、sink和channel

Flume常用命令

Flume常用的命令有以下几种:

  • flume-ng help:显示帮助信息。
  • flume-ng agent:启动一个Flume agent,需要指定配置文件和agent名称。
  • flume-ng version:显示Flume的版本信息。

这些命令还可以接受一些全局选项,如:

  • --conf,-c <conf>:指定配置文件所在的目录。
  • --classpath,-C <cp>:追加到类路径中。
  • --dryrun,-d:不实际启动Flume,只打印命令。
  • --plugins-path <dirs>:指定插件目录。

如果想启动一个名为a1的agent:

1
flume-ng agent -f /opt/flume/conf/myagent.conf -n a1