是否可以从Spark shell中验证shell是连接到集群还是仅以本地模式运行?我希望使用它来调查以下问题:如何验证DSE Spark Shell是否正在集群中分布
我已经使用DSE设置了一个小型3节点Cassandra Analytics群集。我可以登录到3台服务器中的任何一台,运行dse spark
并调出Spark shell。我还验证了所有3台服务器都通过运行dsetool sparkmaster
配置了Spark主服务器。
但是,当我使用Spark shell运行任何任务时,它似乎只在本地运行。我运行了一个小测试命令:
val rdd = sc.cassandraTable("test", "test_table")
rdd.count
当我检查Spark Master网页时,我看到只有一台服务器正在运行该作业。
我怀疑当我运行dse spark
它以本地模式运行shell。我查阅了如何为Spark 0.9.1 shell指定一个主设备,甚至当我使用MASTER=<sparkmaster> dse spark
(来自Programming Guide)时,它仍然只在本地模式下运行。
然而,谢谢你,我似乎还有另外一个问题,那就是我的任何节点上都没有'/ etc/dse/spark /'目录。 Spark已经安装并正在运行,我可以在任何节点上运行'dse spark'并且它会启动,同样可以看到母版页。所以一切似乎都安装正确(我使用DSE 4.5.1文本安装程序),但没有'spark-env.sh'。 – egerhard 2014-09-24 21:01:12
该位置将取决于您的安装方法以及是否将DSE安装为服务。如果您没有/ etc/dse,那么很可能您会在/ usr/share/dse/resources/spark下找到这些文件,但它可能位于其他位置,具体取决于您安装的位置。你可以看到这个配置页面的例子:http://www.datastax.com/documentation/datastax_enterprise/4.5/datastax_enterprise/spark/sparkConf.html – BrianC 2014-09-24 22:10:19