一、部署scala:
1.在zzti账户下创建一个libs文件夹,如:mkdir /zzti/libs
2.进入到libs文件夹下 cd /zzti/libs
3.上传sacla(rz 这里用的是Xshell),解压(tar -zxvf scala-2.12.8.tgz
),并建立软连接(ln -s scala-2.12.8 scala
)
二、部署spark:
上传spark-2.2.3-bin-without-hadoop.tgz,解压(tar -zxvf spark-2.2.3-bin-without-hadoop.tgz
),并建立软连接(ln -s spark-2.2.3-bin-without-hadoop spark
)
三、配置环境变量:
vim ~/.bashrc
(若这里的jdk版本过低的话后面的spark会报错,这里使用的jdk版本为:jdk-8u201-linux-x64.tar.gz) 传送门:链接: https://pan.baidu.com/s/1cb-fJAi871Ce9mbjR63uYQ 提取码: s5y6
四、配置spark
在spark的conf目录下: (cd /zzti/libs/spark/conf
)
mv slaves.template slaves
echo zzti > slaves
mv spark-env.sh.template spark-env.sh
vim spark-env.sh
,在该文档最后面加上:
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
export SPARK_LIBARY_PATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$HADOOP_HOME/lib/native
export SPARK_DIST_CLASSPATH=$(/zzti/hadoop/bin/hadoop classpath)
export SPARK_EXECUTOR_INSTANCES=1
export SPARK_EXECUTOR_CORES=1
export SPARK_DRIVER_MEMORY=512M
export SPARK_EXECUTOR_MEMORY=512M
export SPARK_MASTER_HOST=zzti
export SPARK_MASTER_WEBUI_PORT=28686
export SPARK_LOCAL_DIRS=/data/zzti/data/spark/local
export SPARK_WORKER_DIR=/data/zzti/data/spark/work
export SPARK_LOG_DIR=/data/zzti/logs/spark
五、启动spark
关闭Xshell终端,重新登陆
开启hadoop集群 cd /zzti/hadoop/sbin
./start-all.sh
在到spark里的bin目录下 cd /zzti/libs/spark/bin
然后再执行
spark-shell
这里我是将自己写的一个1.txt上传到hdfs的/spark/demo下
val file = sc.textFile("/spark/demo/1.txt")
val counts = file.flatMap(line=>line.split(" ")).map(word=>(word,1)).reduceByKey(_+_)
counts.saveAsTextFile("/spark/demo/result")
退出scala。(ctrl+D).进入到 cd /zzti/libs/spark/bin
hadoop fs -cat /spark/demo/result/*
查看结果