此问题的目的是如何创建Apache Flume设置,在该设置中,我们将从HTTP Flume Source获取数据,并使用File Roll Flume Sink保存数据。在这里,我们获取了用户的输入数据。在收到用户的数据后,我们将把数据保存在一个文本文件中。
此配置文件用于配置Flume服务。使用此文件,Flume服务使用HTTP运行,并将信息保存在文件中。
Http_Source.conf
# Base Config
a1.sources=r1
a1.sinks=k1
a1.channels=c1
# Configure the source
a1.sources.r1.type=http
#a1.sources.r1.bind=localhost
a1.sources.r1.port=8888
# Sink Configuration
a1.sinks.k1.type=file_roll
a1.sinks.k1.sink.rollInterval=60
a1.sinks.k1.sink.directory=/home/flumedata/
# Channel configuration
a1.channels.c1.type=memory
a1.channels.c1.capacity=1000
# Link stuff together
a1.sources.r1.channels=c1
a1.sinks.k1.channel=c1
现在使用此命令运行Flume服务。
./bin/flume-ng agent --conf $FLUME_HOME/conf --conf-file $FLUME_HOME/conf/nc_source.conf --name a1 -Dflume.root.logger=INFO,console
现在,在水槽服务启动后,客户端将数据发送到水槽。。。
curl --location --request POST 'http://localhost:8888'
--header 'Content-Type: application/json'
--data-raw '[{"body": "type here data to send flume"}]'
在配置文件(/home/flumedata/
(中提到的位置创建数据文件。