实验目的:
配置Kettle向Spark集群提交作业。
实验环境:
4台CentOS release 6.4虚拟机,IP地址为
192.168.56.101
192.168.56.102
192.168.56.103
192.168.56.104
192.168.56.101是Spark集群的主,运行Master进程。
192.168.56.102、192.168.56.103是Spark的从,运行Worker进程。
192.168.56.104安装Pentaho的PDI,安装目录为/home/grid/data-integration。
Hadoop版本:2.7.2
Spark版本:1.5.0
PDI版本:6.0
Spark集群的安装配置参考 http://blog.csdn.net/wzy0623/article/details/50946766
配置步骤:
1. 在PDI主机上安装Spark客户端
将Spark的安装目录和相关系统环境设置文件拷贝到PDI所在主机
在192.168.56.101上执行以下命令
scp -r /home/grid/spark 192.168.56.104:/home/grid/
scp /etc/profile.d/spark.sh 192.168.56.104:/etc/profile.d/
下面的配置均在192.168.56.104上执行
2. 编辑相关配置文件
(1)在/etc/hosts文件中加如下两行
192.168.56.101 master
192.168.56.104 kettle
master和kettle为各自主机的hostname
(2)编辑spark-env.sh文件,写如下两行,如图1所示
export HADOOP_CONF_DIR=/home/grid/data-integration/plugins/pentaho-big-data-plugin/hadoop-configurations/cdh54
export SPARK_HOME=/home/grid/spark
图1
(3)编辑spark.sh,写如下三行,如图2所示
export SPARK_HOME=/home/grid/spark
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
export HADOOP_CONF_DIR=/home/grid/data-integration/plugins/pentaho-big-data-plugin/hadoop-configurations/cdh54
图2
3. 修改PDI的Spark例子
cp /home/grid/data-integration/samples/jobs/Spark\ Submit/Spark\ submit.kjb /home/grid/data-integration/test/Spark\ Submit\ Sample.kjb
在Kettle中打开/home/grid/data-integration/test/Spark\ Submit\ Sample.kjb文件,如图4所示
图4
编辑Spark Submit Sample作业项,填写如图5所示的信息
图5
4. 执行例子
(1)在HDFS上准备测试文件/user/grid/input
hadoop fs -put /home/grid/hadoop-2.7.2/README.txt input
(2)执行Spark Submit Sample作业,部分结果如图6所示
图6
spark的UI控制台如图7所示
图7
参考:
http://help.pentaho.com/Documentation/6.0/0L0/040/029
http://wiki.pentaho.com/display/EAI/Spark+Submit