目录
一、FLUME安装
先说一下FLUME的工作流程
数据可通过监听收集,然后通过管道下沉到sink最终存放到hdfs上,可通过编辑conf文件来指定flume执行的任务,有些采集任务需要集群中多台机器进行工作,所以要安装到三台虚拟机当中
老样子,可以在官网下载安装包,这里采用的flume的版本时1.9,同样不推荐太新的版本。
上传安装包
解压到servers中
tar -xzvf apache-flume-1.9.0-bin.tar.gz -C ../servers
之后配置环境变量
vi /etc/profile下输入
(这个文件的作用就是生成一个全局变量,在就是无论在任何位置都可以运行他的命令,如果没有设置就必须在路径下去运行)
#FLUME环境变量配置
export FLUME_HOME=/export/servers/apache-flume-1.9.0-bin
export PATH=$PATH:$FLUME_HOME/bin
之后去配置flume的配置文件
复制一份模板文件,然后进行修改
cp flume-env.sh.template flume-env.sh
之后将Hadoop下的guava移动到flume的guava目录下,并将flume目录下的guava删除
cp命令把Hadoop的guava放到flume的lib目录下
然后将flume和配置文件分发到hadoop2和3 上,并使环境变量起作用即可
scp -r apache-flume-1.9.0-bin hadoop2:/export/servers
scp -r apache-flume-1.9.0-bin hadoop3:/export/servers
scp /etc/profile hadoop2:/etc/
scp /etc/profile hadoop3:/etc/
二、AZKABAN的安装
一个完整的数据分析系统通常都由大量的工作任务单元组成,例如脚本shell程序、数据采集、数据处理MR、数据存储、java程序等,各任务单元之间存在时间先后及依赖关系,为了将这些复杂的执行计划组织起来,需要一个工作流调度系统来调度执行。
azkaban和oozie,都可以实现这个功能
azkaban有多种模式 solo,double和disturbed(分布式)。
这里我们仅在hadoop1上安装即可满足使用
azkaban目前可以去GitHub上下载master压缩包,之后下载完之后上传到虚拟机上然后使用gradle命令编译。还是不要选择太新的版本,这里选择的版本是3.73.1.下载到的是zip包,因此我们要在虚拟机上安装unzip命令
yum install unzip
之后解压即可,并将其移动到servers目录下
然后我们进入到azkaban-master的目录下,准备进行编译,在此之前要先安装git,并修改gradle为国内源
yum install git
安装完成之后
修改为国内源
然后在azkaban-master主目录下执行该命令:
意为跳过测试直接进行构建
./gradlew build -x test
这一过程可能会比较漫长
之后我们要去获得web服务、exec和db的安装包
先创建azkaban的数据库和用户,并上传azkaban的数据表
先找到文件目录
解压
之后我们进入MySQL并导入数据库表
通过 mysql -u root -p 命令进入mysql后
create database azkaban;
use azkaban;
输入下面的命令
source /export/servers/azkaban-master/azkaban-db/build/distributions/azkaban-db-0.1.0-SNAPSHOT/create-all-sql-0.1.0-SNAPSHOT.sql
这样就初始化完成数据表了。
之后我们前往部署executor和web,安装到servers目录下
安装后我们要对web和exec进行简单的配置
web服务也是同样的修改有一处不同就是要注释掉
此外还一个问题,如果你的虚拟机运行内存小于3g,azkaban会进行虚拟内存检测,会导致你的任务一直在runing状态,你可以去调高虚拟机运行内存,或者在exec的plugins的jobtype下添加不检测内存的命令
memCheck.enabled=false
即可正常调度
安装和配置完成后就是启动服务,由于没有配置azkaban的环境变量,因此我们只能去对应目录下启动
启动顺序是:1.启动exec
exec目录下
bin/start-exec.sh
2.激活exec
cat 命令获取其内容
curl -G "hadoop1:端口号/executor?action=activate"
代表激活成功
3.启动web
进入web目录下
bin/start-web.sh
启动完成后输入jps查看
有以下两个进程即表示启动成功
关闭时反过来即可
三、SQOOP的安装
用于数据在mysql等关系型数据库与Hadoop集群的数据传输
只在hadoop1上安装即可,最好在hadoop2也安装一份,防止调度过程中hadoop1宕机
同样是可以官网下载,不建议新版本,这里使用的是1.4.7
上传到服务器之后解压到servers目录中
之后要对sqoop进行配置
sqoop-env-template.sh是模板文件我们复制一份他的内容并在里面进行修改
配置文件修改完成后,去对机器的环境变量进行修改
vi /etc/profile
添加如下内容
#SQOOP环境变量配置
export SQOOP_HOME=/export/servers/sqoop-1.4.7.bin__hadoop-2.6.0
export PATH=$PATH:$SQOOP_HOME/bin
source /etc/profile
即安装完成