Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/apache-spark/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在获取Spark软件包时禁用SSL身份验证?_Java_Apache Spark_Ssl_Pyspark_Ivy - Fatal编程技术网

Java 如何在获取Spark软件包时禁用SSL身份验证?

Java 如何在获取Spark软件包时禁用SSL身份验证?,java,apache-spark,ssl,pyspark,ivy,Java,Apache Spark,Ssl,Pyspark,Ivy,我正在使用pyspark,当我启动Spark会话时,我使用Spark.jars.package从Nexus内部存储库获取一些包。要获取我设置的包,请执行以下操作: spark.jars.ivySettings指向一个XML文件,该文件在Nexus内部repo中的位置用于获取包 spark.driver.extraJavaOptions设置为-Djavax.net.ssl.trustStore=指向包含Nexus内部repo中ssl验证所需证书的JKS文件 直到最近,当我开始出现以下类型的

我正在使用pyspark,当我启动Spark会话时,我使用Spark.jars.package从Nexus内部存储库获取一些包。要获取我设置的包,请执行以下操作:

  • spark.jars.ivySettings指向一个XML文件,该文件在Nexus内部repo中的位置用于获取包

  • spark.driver.extraJavaOptions设置为-Djavax.net.ssl.trustStore=指向包含Nexus内部repo中ssl验证所需证书的JKS文件

直到最近,当我开始出现以下类型的SSL身份验证错误时,此设置对我来说一直运行良好:

javax.net.ssl.SSLHandshakeException: sun.security.validator.validator异常:PKIX路径生成失败: sun.security.provider.certpath.SunCertPathBuilderException:无法 查找到请求目标的有效证书路径)

我正在与平台团队检查导致这些错误的原因,但同时,我想简单地禁用SSL验证,以便使用spark.jars.packages获取包,因为没有安全风险,因为系统被正确地隔离,并且我们已经禁用SSL身份验证用于其他目的,例如安装pip包或使用wget/curl从Nexus下载文件


是否有办法通过Spark配置实现此目的?

您可以传入Spark选项:

-Dcom.sun.net.ssl.checkRevocation=false

我尝试了这个选项,但由于某些原因,它似乎对Spark不起作用。还可以看到使用py spark的,你也是吗?您是否可以在启动时(使用
ps-aef
)使用此命令确认java进程选项?此外,此问题似乎出现在使用
spark submit
启动的spark客户端中,而不是驱动程序或执行者。你能试着在客户机模式下运行吗?驱动程序在客户端的什么位置?我正在使用pyspark和Thread客户端模式。将尝试检查“ps-aef”。不着急,因为我从我们的平台团队那里得到了证书文件。无论如何,谢谢你的帮助!