从 Spark 流读取 Kafka SSL 客户端信任库文件时出错
Error reading Kafka SSL client truststore file from Spark streaming
我有一个从 Kafka 读取数据的 Spark 流应用程序。我是 运行 它来自 EMR。最近我实施了 Kafka SSL。我正在创建 Kafka 客户端,如下所示。当应用程序尝试读取信任库文件时,我收到一个奇怪的错误 运行。
错误是:
- Caused by: org.apache.kafka.common.KafkaException: org.apache.kafka.common.KafkaException: java.io.FileNotFoundException: /tmp/kafka.client.truststore.jks (No such file or directory)
是什么导致了这个问题?
DataStreamReader df = session.readStream()
.format("kafka")
.option("kafka.bootstrap.servers",kafka_server)
.option("subscribe", kafka_topic)
.option("failOnDataLoss", "false")
.option("group.id", kafka_group)
.option("kafka.security.protocol","SSL")
.option("kafka.ssl.truststore.location","/tmp/kafka.client.truststore.jks")
.option("kafka.ssl.truststore.password","clientpass");
该文件必须存在于集群的执行节点上,而不仅仅是在您从
提交代码的机器上
否则,您必须将 --files 选项传递给 spark-submit 以将它们从您的机器传递给驱动程序
另请注意:group.id 在结构化流中是不允许的
我有一个从 Kafka 读取数据的 Spark 流应用程序。我是 运行 它来自 EMR。最近我实施了 Kafka SSL。我正在创建 Kafka 客户端,如下所示。当应用程序尝试读取信任库文件时,我收到一个奇怪的错误 运行。 错误是:
- Caused by: org.apache.kafka.common.KafkaException: org.apache.kafka.common.KafkaException: java.io.FileNotFoundException: /tmp/kafka.client.truststore.jks (No such file or directory)
是什么导致了这个问题?
DataStreamReader df = session.readStream()
.format("kafka")
.option("kafka.bootstrap.servers",kafka_server)
.option("subscribe", kafka_topic)
.option("failOnDataLoss", "false")
.option("group.id", kafka_group)
.option("kafka.security.protocol","SSL")
.option("kafka.ssl.truststore.location","/tmp/kafka.client.truststore.jks")
.option("kafka.ssl.truststore.password","clientpass");
该文件必须存在于集群的执行节点上,而不仅仅是在您从
提交代码的机器上否则,您必须将 --files 选项传递给 spark-submit 以将它们从您的机器传递给驱动程序
另请注意:group.id 在结构化流中是不允许的