找不到在纱线客户端模式密钥库文件中运行时,无法通过火花流构建kafka使用者

时间:2018-07-11 20:43:34

标签: apache-spark apache-kafka spark-streaming yarn

我在为kafka运行spark流消费者工作时遇到以下错误,并且kafka在SASL_SSL模式下运行。

该作业配置为以纱线客户端模式运行,这意味着Spark驱动程序将在本地边缘节点(从中调用作业)上运行,而Spark执行程序将在hadoop集群上运行。 因此,我通过--files选项将所有必需的配置文件(jaas,keytab,keystore等)发送到执行器缓存。但是,驱动程序还需要密钥库和密钥表文件才能与执行程序一起与kafka进行通信,但是驱动程序无法找到密钥库文件。

有没有一种方法可以配置spark驱动程序以其需要的yarn客户端模式(我可以使用--files选项为执行者执行的方式)加载keystore和keytab文件(或边缘上本地存在的任何其他文件)。

org.apache.kafka.common.KafkaException: Failed to construct kafka consumer
--
        at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
Caused by: org.apache.kafka.common.KafkaException: org.apache.kafka.common.KafkaException: java.io.FileNotFoundException: kafka_client_truststore.jks (No such file or directory)
--
        at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)
Caused by: org.apache.kafka.common.KafkaException: java.io.FileNotFoundException: kafka_client_truststore.jks (No such file or directory)
--
Caused by: java.io.FileNotFoundException: kafka_client_truststore.jks (No such file or directory)
--

关于, 希特什

0 个答案:

没有答案