大数据项目之电商数仓、Flume安装(完整版)

1,081 阅读1分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第25天

@[toc]

4. 用户行为数据采集模块

4.2 环境准备

4.2.5 Flume安装

按照采集通道规划,需在hadoop102,hadoop103,hadoop104三台节点分别部署一个Flume。

4.2.5.1 安装步骤

4.2.5.1.1 Flume安装部署
4.2.5.1.1.1 安装地址

(1) Flume官网地址:flume.apache.org/ (2)文档查看地址:flume.apache.org/FlumeUserGu… (3)下载地址:archive.apache.org/dist/flume/

4.2.5.1.1.2

(1)将apache-flume-1.9.0-bin.tar.gz上传到linux的/opt/software目录下

在这里插入图片描述

(2)解压apache-flume-1.9.0-bin.tar.gz到/opt/module/目录下

[summer@hadoop102 software]$ tar -zxvf /opt/software/apache-flume-1.9.0-bin.tar.gz -C /opt/module/

在这里插入图片描述

(3)修改apache-flume-1.9.0-bin的名称为flume-1.9.0

[summer@hadoop102 module]$ mv apache-flume-1.9.0-bin/ flume-1.9.0

在这里插入图片描述

(4)将lib文件夹下的guava-11.0.2.jar删除以兼容Hadoop 3.1.3

[summer@hadoop102 module]$ rm /opt/module/flume-1.9.0/lib/guava-11.0.2.jar

在这里插入图片描述

注意:删除guava-11.0.2.jar的服务器节点,一定要配置hadoop环境变量。否则会报如下异常。

Caused by: java.lang.ClassNotFoundException: com.google.common.collect.Lists
        at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
        ... 1 more

(5)修改conf目录下的log4j.properties配置文件,配置日志文件路径

[summer@hadoop102 conf]$ vim log4j.properties 
flume.log.dir=/opt/module/flume-1.9.0/logs

在这里插入图片描述

4.2.5.2 分发Flume

[summer@hadoop102 ~]$ xsync /opt/module/flume-1.9.0/

在这里插入图片描述

4.2.5.3 项目经验

4.2.5.3.1 堆内存调整

Flume堆内存通常设置为4G或更高,配置方式如下: 修改/opt/module/flume/conf/flume-env.sh文件,配置如下参数(虚拟机环境暂不配置)

export JAVA_OPTS="-Xms4096m -Xmx4096m -Dcom.sun.management.jmxremote"

注: -Xms表示JVM Heap(堆内存)最小尺寸,初始分配; -Xmx 表示JVM Heap(堆内存)最大允许的尺寸,按需分配。 在这里插入图片描述把这行注释的代码取消注释,memory Channel消耗的内存比较大,因此需要调大内存,将-Xmx参数调大