本文以阿里云E-MapReduce 3.17.0及以后的版本特性介绍使用Gateway节点运行Flume从而进行数据同步操作。
背景信息
E-MapReduce从3.16.0版本开始支持Apache Flume,从3.17.0版本开始提供默认监控等特性。
基本数据流
在Gateway节点运行Flume可以避免对EMR Hadoop集群产生影响。使用Gateway节点部署Flume Agent的基本数据流如下图所示。

环境准备
本文选择在杭州Region进行测试,版本选择EMR- 3.17.0,本次测试需要的组件版本有:
Flume:1.8.0
本文使用阿里云EMR服务自动化搭建Hadoop集群,详情请参见创建集群。
- 创建Hadoop集群,在可选服务中选择Flume。
- 创建Gateway节点,关联上一步已经创建好的Hadoop集群。
实施步骤
- 运行Flume,请参见Flume 使用说明中的操作步骤。
- 查看监控信息。
默认情况下,集群的Console页面提供了Flume agent的监控信息。通过在集群与服务管理页面单击 Flume 服务进行访问,如下图所示。注意
监控数据以agent组件(source、channel 或 sink)的名称命名,例如CHANNEL.channel1表示名称为channel1的channel组件的监控指标,所以在配置不同的 agent 时请避免使用相同的组件名称。
如果想通过Ganglia等方式查看Flume Agent的监控数据,可参考Flume官网进行配置。此时Console页面将不会显示Flume agent的监控数据。
- 查看日志 。
默认情况下,Flume agent日志的存放路径为 /mnt/disk1/log/flume/${flume-agent-name}/flume.log。可以通过修改 /etc/ecm/flume-conf/log4j.properties 进行配置(不建议修改日志路径)。注意 日志路径包含了Flume agent的名称,所以配置不同的agent时请勿使用相同的agent名称,以免日志混在一起。