大数据分析入门-hadoop集群环境下 spark-2.4.3 on hadoop-2.7.7及scala-2.11.11部署并运行在hadoop集群

1 环境

hadoop-2.7.7 (为方便提交任务到远程hadoop集群)

hadoop伪分布式环境:

centos7.6

hadoop-2.7.7

jdk-1.8

2 scala-2.11.11部署

2.1 scala-2.11.11 下载

Scala 2.11.11 | The Scala Programming Language

2.2 scala 压缩包解压

# 压缩包放入安装目录
cp scala-2.11.11.tgz /root/software/
# 解压
cd /root/software/
tar xzvf scala-2.11.11.tgz
# 软连接 方便版本管理
ln -s scala-2.11.11 scala

2.3 scala 环境变量修改

# 修改profile文件
vi /etc/profile
# 新增如下配置

# scala env
export SCALA_HOME=/root/software/scala
export PATH=$PATH:$SCALA_HOME/bin

# 使配置生效
source /etc/profile

2.3 scala 验证

# 命令行下执行scala
scala

 

3 spark on hadoop部署

3.1 准备安装包

spark-2.4.3-bin-hadoop2.7.tgz

下载地址

Index of /dist/spark/spark-2.4.3icon-default.png?t=N176https://archive.apache.org/dist/spark/spark-2.4.3/

3.2 spark 压缩包解压

# 放入spark部署目录
cp spark-2.4.3-bin-hadoop2.7.tgz /root/software/
# 解压压缩包
cd /root/software/
tar xzvf spark-2.4.3-bin-hadoop2.7.tgz
# 软连接 方便版本控制
ln -s spark-2.4.3-bin-hadoop2.7 spark
# 修改权限
chmod a+w -R spark
# 修改用户和用户组
chown hadoop:hadoop -R spark

3.3 spark 修改配置

修改系统环境变量配置

# 修改系统环境变量
vi /etc/profile
# 添加以下配置

# spark env
export SPARK_HOME=/root/software/spark
export PATH=${SPARK_HOME}/bin:$PATH

# 使配置文件生效
source /etc/profile

修改spark on hadoop环境变量配置

# 生成spark-env.sh 配置文件
cp $SPARK_HOME/conf/spark-env.sh.template $SPARK_HOME/conf/spark-env.sh
# 编辑配置文件
vi $SPARK_HOME/conf/spark-env.sh
# 添加如下配置
export SCALA_HOME=/root/software/scala
export JAVA_HOME=/root/software/jdk1.8.0_151/
export SPARK_MASTER_IP=192.168.192.20
export SPARK_WORKER_MEMORY=1g
export HADOOP_CONF_DIR=/root/software/hadoop/etc/hadoop
export YARN_CONF_DIR=/root/software/hadoop/etc/hadoop

4 启动hadoop&spark集群

要启动spark的集群需要先启动hadoop的集群,由于hadoop和spark的启动命令都是start-all.sh
所以如果直接使用start-all.sh会导致系统路径的冲突,所以启动的时候需要用绝对路径来启动(如果事先启动了可用stop-all.sh停止)

# 启动HADOOP
$HADOOP_HOME/sbin/start-all.sh
# 启动Spark
$SPARK_HOME/sbin/start-all.sh
# 检查
jps
# spark起来后,多master 和 work进程
40738 ResourceManager
41522 Jps
40243 NameNode
41331 Worker
40852 NodeManager
40359 DataNode
40574 SecondaryNameNode
41263 Master

# 检查端口
netstat -anp |grep 8080

web检查

 

5 spark on hadoop 测试

# 创建需要上传文件的目录 项目配置目录为/user/hadoop
hdfs dfs -mkdir /user
hdfs dfs -mkdir /user/hadoop
# 上传word.txt文件
hdfs dfs -put /tmp/word.txt /user/hadoop
# 测试执行sprak上运行scala任务 sparksql.jar包是打包好的scala spark任务
spark-submit --master spark://master:7077 --class com.qingjiao.staff.WordCount /tmp/sparksql.jar
# 查看结果输出
hdfs dfs -ls /user/hadoop/outfile
hdfs dfs -cat /user/hadoop/outfile/part-00000

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值