使用端口249启动Spark遇SSH连接拒绝问题求助
解决Spark启动的两个报错问题
咱们先拆分你遇到的两个问题,逐个解决:
1. 先处理Master进程已存在的报错
你看到的org.apache.spark.deploy.master.Master running as process 6211. Stop it first.是说Spark的Master进程还在后台运行,得先把它停掉才能重新启动:
- 直接终止这个进程:执行
kill 6211,如果进程没反应,用强制终止命令kill -9 6211 - 也可以用Spark自带的停止脚本一次性停掉所有相关进程:
./sbin/stop-all.sh
2. 解决SSH端口22连接被拒的问题
因为你服务器的SSH端口改成了249,但Spark默认会用22端口做节点间的SSH通信,所以需要调整配置让Spark适配这个端口:
第一步:确保本地SSH(249端口)可以正常登录
先测试一下用249端口连接本地:
ssh -p 249 localhost
如果需要输入密码,最好配置免密登录,不然Spark启动时会卡在密码输入环节:
- 生成SSH密钥对(没生成过的话):
ssh-keygen -t rsa,一路按回车用默认配置即可 - 把公钥添加到授权列表:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys - 修改权限确保SSH能识别:
chmod 600 ~/.ssh/authorized_keys chmod 700 ~/.ssh
再次测试ssh -p 249 localhost,应该可以无密码登录了。
第二步:修改Spark配置,指定SSH端口为249
- 进入Spark的
conf目录,复制模板配置文件:cp conf/spark-env.sh.template conf/spark-env.sh - 编辑
spark-env.sh文件,添加一行配置让Spark用249端口SSH:export SPARK_SSH_OPTS="-p 249" - 如果是集群环境,还要确保
conf/slaves里的节点地址配置正确,单节点的话默认是localhost就没问题。
最后重新启动Spark
做完上面的配置后,再执行:
./sbin/start-all.sh
应该就能正常启动了。
内容的提问来源于stack exchange,提问作者Kyu-Ho Hwang
相关产品推荐
相关产品推荐

