文章目录
0. 引言
本文主要介绍在 Linux 下安装 Spark Standalone 集群的详细流程。
1. Spark安装包下载
点击链接的页面下载
将 .tgz 安装包解压,我这里是解压到 /root 目录下:
tar -zxf spark-3.5.1-bin-hadoop3.tgz
可选,建议把解压后的文件夹重新命名
mv spark-3.5.1-bin-hadoop3 spark
2. 下载 Java
由于 Spark 底层是 Java 运行的,因此依赖 Java 的 JVM。在 Linux 下载 Java 如下:
apt update
apt install -y openjdk-8-jdk
3. 修改Hosts文件
为了方便直接用域名访问 worker 节点,建议配置好 Hosts 文件。
在 /etc/hosts
将域名和 IP 绑定,准备好几个节点就填几个。例如准备了1个主节点和2个 worker 节点,那么在 /etc/hosts
中:
192.168.127.20 master
192.168.127.21 node01
192.168.128.22 node02
上面的 IP 是你自己机器节点的 IP!
4. 新增环境变量
在 ~/.bashrc
中,添加如下的环境变量:
export SPARK_HOME=/xx/spark
export PATH=$SPARK_HOME/bin:$PATH
export PYSPARK_PYTHON=/xx/python
注意:
SPARK_HOME
填写你的 Spark 解压后的路径;
PYSPARK_PYTHON
是用于 Spark 执行 Python 脚本的,不需要提交 Python 可以不用填写
最后使配置文件生效:
source ~/.bashrc
5. 修改Spark配置文件
5.1 文件重命名
cd spark/conf
cp spark-env.sh.template spark-env.sh
cp workers.template workers
5.2 修改配置
在 ./spark/conf
中对上面拷贝的 spark-env.sh
以及 workers
进行修改。
5.2.1 修改 spark-env.sh
在 spark-env.sh
中,最后添加如下:
export JAVA_HOME=/lib/jvm/java-1.8.0-openjdk-amd64
export SPARK_MASTER_PORT=7077
export SPARK_MASTER_HOST=master
上面的 JAVA_HOME
填写你的 Java jdk 安装路径;SPARK_MASTER_HOST
填写你 /etc/hosts 中填写的域名
5.2.1 修改 workers
在 workers
中,最后添加你的worker节点如下:
node01
node02
6. 配置worker节点
上面就配置好了 master 节点,下面配置 worker 节点。先将 spark 文件夹打包:
tar -zcf spark.tgz spark
拷贝到其他 worker 节点:
scp spark.tgz root@node01:/root
scp spark.tgz root@node02:/root
ssh 到 worker 节点:
ssh node01
在 worker 节点上,解压 spark 压缩包,我这里是解压到 /root 目录下:
tar -zxf spark.tgz
后面就在 worker 节点执行之前章节的 3. 修改Hosts文件
,4. 新增环境变量
,不再赘述了!
7. 启动 Spark 集群
在 master 节点上,启动集群:
./spark/sbin/start-all.sh
在 master 节点上查看集群是否启动:
jps
在其他 worker 节点中查看集群是否启动:
jps
ok,到这里 Spark Standalone 集群就搭建完成了!
8. 启动一个程序
spark-submit
--master spark://master:7077
--name spark-app
--total-executor-cores=45
--executor-cores=15
--executor-memory=13GB
xxx.py
spark-submit
的参数详细讲解以及最佳实践,建议参考这里。
9. 参考
https://blog.csdn.net/qq_49101550/article/details/122970086
欢迎关注本人,我是喜欢搞事的程序猿; 一起进步,一起学习;
欢迎关注知乎:SmallerFL;
也欢迎关注我的wx公众号:一个比特定乾坤