运行名为 KafkaWordCount 的 Kafka & Spark Streaming 示例失败



我在http://rishiverma.com/software/blog/2014/07/31/spark-streaming-and-kafka-quickstart/

顺便说一句,我修改了一些无关紧要的细节。当我进入构建卡夫卡消费者的最后一步时,它失败了,并说:

Exception in thread "main" org.apache.spark.SparkException: Could not parse Master URL: 'localhost:2181'
at org.apache.spark.SparkContext$.org$apache$spark$SparkContext$$createTaskScheduler(SparkContext.scala:1493)
at org.apache.spark.SparkContext.<init>(SparkContext.scala:279)
at org.apache.spark.streaming.StreamingContext$.createNewSparkContext(StreamingContext.scala:542)
at org.apache.spark.streaming.StreamingContext$.createNewSparkContext(StreamingContext.scala:555)
at org.apache.spark.streaming.StreamingContext.<init>(StreamingContext.scala:92)
at org.apache.spark.streaming.examples.KafkaWordCount$.main(KafkaWordCount.scala:54)
at org.apache.spark.streaming.examples.KafkaWordCount.main(KafkaWordCount.scala)

有人遇到过这种失败吗?

您使用的是哪个版本的Spark?在Spark 1.0+中,KafkaWordCount位于org.apache.Spark.examples.streaming包下。从您的stacktrace来看,您的版本似乎位于org.apache.spark.streaming.examples之下,这表明您使用的是spark的1.0之前版本。

在Spark 0.9.x(在引入SparkConf和Spark-submit之前发布)中,这个例子的第一个参数是Spark主URL(源),这导致了您看到的问题,因为"无法解析主URL"错误表明local:2181不是有效的Spark主URL。

如果可以的话,我建议您使用更新版本的Spark(您链接的教程建议使用Spark 1.0.1或更高版本)。否则,请按照特定版本KafkaWordCount顶部的说明进行操作(示例)。

最新更新