使用aws胶水连接到presto数据库无法传递ssl密钥库或证书

vojdkbi0  于 2021-05-26  发布在  Spark
关注(0)|答案(0)|浏览(327)

我有问题连接到普雷斯托使用aws胶水工作。代码是用sparkscala编写的。我正在尝试连接到普雷斯托使用下面的代码。

val datanot_in_hz = sqlcontext.read.format("jdbc").option("url", jdbcConUrl).option("driver", "io.prestosql.jdbc.PrestoDriver").option("SSL","true").option("SSLKeyStorePath","s3://test/presto_client.keystore").option("query", datanot_in_hz_sql).option("user", dbUserName).option("password", dbPassword).load()

我得到下面的错误
2020-12-18 20:36:52,376错误[main]glue.processlauncher(日志记录。scala:logerror(70)):用户类中的异常:java.sql.sqlexception:设置ssl时出错:s3:/test/presto\u client.keystore(没有这样的文件或目录)io.prestosql.jdbc.prestodriveruri.setupclient(prestodriveruri)。java:235)io.prestosql.jdbc.prestodriver.connect(prestodriver。java:88) org.apache.spark.sql.execution.datasources.jdbc.jdbcutils$$anonfun$createconnectionfactory$1.apply(jdbcutils)。scala:63)org.apache.spark.sql.execution.datasources.jdbc.jdbcutils$$anonfun$createconnectionfactory$1.apply(jdbcutils)。scala:54)org.apache.spark.sql.execution.datasources.jdbc.jdbcrdd$.resolvetable(jdbcrdd)。scala:56) org.apache.spark.sql.execution.datasources.jdbc.jdbcorrelation$.getschema(jdbcorrelation)。scala:210)org.apache.spark.sql.execution.datasources.jdbc.jdbcrelationprovider.createrelation(jdbcrelationprovider)。scala:35)org.apache.spark.sql.execution.datasources.datasource.resolverelation(数据源。scala:318) org.apache.spark.sql.dataframereader.loadv1source(dataframereader。scala:223)org.apache.spark.sql.dataframereader.load(dataframereader。scala:211)org.apache.spark.sql.dataframereader.load(dataframereader。scala:167)sddsurwithdaxreporting$.main(sddsurwithdaxreportingpresto。scala:89)sddsurwithdaxreporting.main(sddsurwithdaxreportingpresto.scala)sun.reflect.nativemethodaccessorimpl.invoke0(本机方法)sun.reflect.nativemethodaccessorimpl.invoke(nativemethodaccessorimpl)。java:62)sun.reflect.delegatingmethodaccessorimpl.invoke(delegatingmethodaccessorimpl。java:43)java.lang.reflect.method.invoke(方法。java:498) com.amazonaws.services.glue.sparkprocesslauncherplugin$class.invoke(processlauncher。scala:38)com.amazonaws.services.glue.processlauncher$$anon$1.invoke(processlauncher。scala:67)com.amazonaws.services.glue.processlauncher.launch(processlauncher。scala:108)com.amazonaws.services.glue.processlauncher$.main(processlauncher。scala:21) com.amazonaws.services.glue.processlauncher.main(processlauncher.scala)
我尝试传递pem证书,但仍然失败,并出现相同的错误。我已经检查了所有的许可。我有一个jar文件,我可以从同一个文件夹访问它。当我使用eclipse从我的机器上运行相同的代码时,它运行得很好。有人能帮忙吗?我是scala的新手,这是我第一次尝试使用ssl证书连接到数据库。

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题