我在一个远程服务器上运行了一个独立的Spark集群,而且我对Spark还不熟悉。默认情况下,似乎没有身份验证方案来保护集群主服务器的(7077)端口。任何人都可以简单地向集群提交自己的代码,而不受任何限制。
火花文档声明在独立部署模式下可以使用spark.authenticate.secret参数进行身份验证,但并没有详细说明应该如何使用。
是否有可能使用某种类型的共享机密来阻止任何潜在攻击者向集群提交任务?有人能解释一下如何准确地配置它吗?
发布于 2017-12-28 14:19:50
支持身份验证有两个部分:
主人和奴隶
在集群中的每个服务器上,向conf/spark-defaults.conf添加以下配置:
spark.authenticate.secret SomeSecretKey提交工作
初始化星火上下文时,还应该向其添加相同的配置,即:
val conf = new SparkConf()
.set("spark.authenticate.secret", "SomeSecretKey")
val sc = new SparkContext(conf)或者如果您使用的是SparkSession:
val spark = SparkSession.builder()
.conf("spark.authenticate.secret", "SomeSecretKey")
.getOrCreate()https://stackoverflow.com/questions/47908699
复制相似问题