如何识别活动名称节点以便将数据写入HDFS?如果没有高可用性Hadoop,我们将在flume.conf中配置namenode ip,以便将数据轻松导向HDFS。在我们的情况下,Flume应该识别活动和备用名称节点,从而数据应该指向活动的名称节点。
答案 0 :(得分:1)
AFAIK直接无法实现。 HDFS sink
配置只有一个Namenode空间。
尽管如此,我认为您可以配置两个HDFS接收器(和两个通道),每个接收器指向一个Namenode。由于默认Replicating Channel Selector
,源将在两个通道中放置每个事件的副本。因此,每个接收器都会尝试自己保存数据;指向备用Namenode的那个将不会保留任何内容,直到活动的一个关闭并且备用数据库变为活动状态。
HTH!
答案 1 :(得分:0)
这对我有用(hadoop 2.7.1,flume 1.6.0): 将hadoop * - site.xml 配置文件放到您的水槽类路径
不确定哪个有效,我放置了核心站点,hdfs-site,yarn-site,mapred-site)但是群集名称的设置在core-site.xml中
答案 2 :(得分:0)
关于Pilgrim的答案,您只能将hdfs-site.xml配置文件放置到您的水槽类路径中。只需将此文件复制到 $ APACHE_FLUME_HOME / conf / 目录或将FLUME_CLASSPATH="/where/is/your/hdfs-site.xml"
添加到 flume-env.sh
您必须确保hadoop名称服务配置适用于此。