Linux下Spark Standalone测试环境部署
准备工作
为了可以使用 start-all.sh 脚本启动整个本地集群,需要先配置 ssh 免密。
检查本机是否启动了 ssh 服务,如果出现以下信息则说明服务未启动,需先配置本机的 ssh 服务。
1 | $ ssh localhost |
配置 SSH 服务
- 安装 SSH 服务
1 | sudo apt-get update |
- 启动 SSH 服务
1 | sudo systemctl start ssh |
- 启用 SSH 服务开机启动
1 | sudo systemctl enable ssh |
配置免密 SSH 登录
首先,需要生成 SSH 密钥对。
1 | ssh-keygen -t rsa |
然后,将公钥复制到目标服务器(localhost)。执行以下命令,并按照提示输入密码即可。
1 | $ ssh-copy-id zhangjc@localhost |
Spark Standalone启动
首先,从Spark官网(Downloads | Apache Spark)下载安装包。我下载的是“spark-3.5.1-bin-hadoop3.tgz”。
然后,将下载安装包解压至自己喜欢的位置。
执行以下命令时,可能会出现未配置JAVA_HOME的错误,如下:
1 | $ ./sbin/start-all.sh |
这是因为Spark通过SSH登录Worker节点启动服务,但shell登录服务器时不会加载环境变量。解决该问题需要在spark-config.sh中添加以下配置:
1 | export JAVA_HOME=/opt/java |
配置完成后,再次执行以下命令集群启动成功。
1 | $ ./sbin/start-all.sh |