2017-07-26 78 views
1

提前道歉,因为我是新来的火花。我创建了一个具有4个工作站的独立模式的Spark集群,并且在成功配置工作站属性后,我想知道如何配置主属性。在火花集群中配置主节点

我写一个应用程序,并使用它SparkSession.builder连接到集群(我不希望它使用火花提交提交。)

我知道,工人可以在conf/spark-env.sh文件中配置并具有可以设置的参数,如'SPARK_WORKER_MEMORY'和'SPARK_WORKER_CORES'

我的问题是:如何配置主设备的属性?因为此文件中没有“SPARK_MASTER_CORES”或“SPARK_MASTER_MEMORY”。

我想过在spark-defaults.conf文件中设置这个,但是它似乎只用于spark-submit。

我想过在应用程序中使用SparkConf().set("spark.driver.cores", "XX")来设置它,但是这只能指定应用程序使用的内核数量。

任何帮助将不胜感激。

谢谢。

+0

如果你不想使用火花提交你怎么打算将作业提交到集群? – dumitru

+0

我的脚本在一个连接到火花簇的jupyter笔记本中。 – msharky

回答

1

三种设置Spark Master节点(Driver)和Spark Worker节点配置的方法。我将展示如何设置主节点的内存。可以找到其他设置here

1-以编程方式通过SpackConf类。

例子:

new SparkConf().set("spark.driver.memory","8g") 

2-使用火花提交:确保不要设置相同configuraiton在你的代码(通过编程像1),并同时做火花提交。如果已经以编程方式配置了设置,则spark-submit中提到的与(1)重叠的每个作业配置都将被忽略。

例如:

spark-submit --driver-memory 8g 

3-穿过火花defaults.conf: 如果没有上述设定此设置将是默认值。

例如:

spark.driver.memory  8g 
+0

谢谢你的回复。对于方法3,这是否意味着当我使用'sbin/start-master.sh'启动spark时,主节点将拥有8g内存?或者是只有在执行spark-submit时才读取的'spark-defaults.conf'文件? – msharky