加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

scala – 如何在群集模式下以交互方式运行spark

发布时间:2020-12-16 18:36:22 所属栏目:安全 来源:网络整理
导读:我有一个运行的火花丛 spark://host1:7077spark://host2:7077spark://host3:7077 并通过/ bin / spark-shell连接–master spark:// host1:7077 尝试读取文件时: val textFile = sc.textFile("README.md")textFile.count() 提示说 WARN TaskSchedulerImpl
我有一个运行的火花丛

spark://host1:7077
spark://host2:7077
spark://host3:7077

并通过/ bin / spark-shell连接–master spark:// host1:7077
尝试读取文件时:

val textFile = sc.textFile("README.md")
textFile.count()

提示说

WARN TaskSchedulerImpl:初始作业未接受任何资源;检查群集UI以确保工作人员已注册并具有足够的资源

通过host1:8080上的Web ui检查时,它显示:

Workers: 0
Cores: 0 Total,0 Used
Memory: 0.0 B Total,0.0 B Used
Applications: 0 Running,2 Completed
Drivers: 0 Running,0 Completed
Status: ALIVE

我的问题是如何在spark-shell集群模式下运行时指定内核和内存?或者我必须通过将我的scala代码打包到.jar文件中运行然后将作业提交给spark?

谢谢

解决方法

请使用jar打包您的代码并在代码中使用它

String[] jars = new String[] { sparkJobJar };
    sparkConf.setMaster("masterip");

    sparkConf.set("spark.executor.memory",sparkWorkerMemory);

    sparkConf.set("spark.default.parallelism",sparkParallelism);
    JavaSparkContext ctx = new JavaSparkContext(sparkConf);

使用spark.executor.memory可以提供worker内存,Parallelism将帮助在集群上运行多个并行任务.

你有../spark/conf中的奴隶文件,你需要把奴隶放在这里.

请在主节点/spark/sbin/start-master.sh上启动master

请在从属节点/spark/sbin/start-slaves.sh上启动slave

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读