如何使用apacheflume将数据写入hahadoopqjm?

puruo6ea  于 2021-06-02  发布在  Hadoop
关注(0)|答案(3)|浏览(593)

flume如何识别活动namenode以便将数据写入hdfs?如果没有高可用性hadoop,我们将在flume.conf中配置namenode ip,这样数据就可以很容易地定向到hdfs。而在我们的例子中,flume应该识别主节点和备用节点,因此数据应该被定向到主节点。

zz2j4svz

zz2j4svz1#

恐怕这不可能是直接的。这个 HDFS sink 配置只有一个namenode的空间。
不过,我认为您可以配置两个hdfs接收器(和两个通道),每个接收器指向一个namenode。由于默认设置,源将在两个通道中放置每个事件的副本 Replicating Channel Selector . 因此,每个接收器都会尝试自己保存数据;指向备用namenode的节点将不会保留任何内容,直到活动节点倒下,备用节点变为活动节点。
嗯!

wlp8pajw

wlp8pajw2#

这对我很有用(hadoop2.7.1,flume 1.6.0):将hadoop*-site.xml配置文件放到flume类路径中
不确定哪一个有效,我放置了core-site、hdfs-site、yarn-site、mapred-site),但集群名称的设置在core-site.xml中

nqwrtyyt

nqwrtyyt3#

关于pilgrim的答案,您只能将hdfs-site.xml配置文件放在flume类路径中。只需将此文件复制到$apache\u flume\u home/conf/目录或add FLUME_CLASSPATH="/where/is/your/hdfs-site.xml" 至Flume-env.sh
您必须确保hadoop nameservice配置适合于此。

相关问题