打算学习研究Spark,搭建一个单节点的Spark集群来做线上测试和研究。
首先要安装好安装Scala环境 https://blog.youkuaiyun.com/xxkalychen/article/details/117175314。
一. 下载Spark软件
cd /var/app
wget https://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-3.1.1/spark-3.1.1-bin-hadoop3.2.tgz
二. 解压
tar -zxvf spark-3.1.1-bin-hadoop3.2.tgz
三. 添加环境变量
vi /etc/profile
添加内容
# Spark
export SPARK_HOME=/var/app/spark-3.1.1-bin-hadoop3.2
export PATH=$PATH:$SPARK_HOME/bin
重新载入资源文件
source /etc/profile
四、创建spark-env.sh文件。spark为我们提供了模板,我们复制修改即可。
cd /var/app/spark-3.1.1-bin-hadoop3.2/conf
cp spark-env.sh.template spark-env.sh
spark-env.sh
添加内容。具体查看/etc/profile的配置。
export JAVA_HOME=/usr/java/jdk1.8.0_231-amd64
export SCALA_HOME=/var/app/scala-2.12.10
export SPARK_HOME=/var/app/spark-3.1.1-bin-hadoop3.2
export SPARK_MASTER_IP=localhost
export SPARK_EXECUTOR_MEMORY=1G
五、创建workers文件。旧版的是slaves文件。同样有模板,我们依然复制修改。
cp workers.template workers
vi workers
里面的值只有一个localhost,这是从节点的主机名,因为我们搭建的是单节点,所以不需要修改。
六、测试。这样就搭建好了。我们测试一下打印圆周率的示例。
run-example SparkPi 10
附:
1. 打开spark-shell。由于我们已经添加的环境变量,所以可在任何地方直接运行命令。
spark-shell
此时进入了scala命令行状态。我也也可以打开SparkUI来查看相关信息。
http://spark.chris.com:4040
2. 退出spark-shell
:quit
好了,我们现在有Spark集群了,可以进行线上逻辑测试了。