我正在生产中运行Spark流代码,无法看到Streaming选项卡,也无法在Spark UI的Job选项卡中看到任何作业。
我在本地运行了相同的代码,并且运行正常。
我比较了我为kafka传递的所有参数,例如主题名称和引导服务器等,一切看起来都很好。
我无法弄清楚流媒体正在发生什么,我想念什么。
我试图在不同的(群集/客户端)模式下运行,以查看问题,但未找到任何信息,并且行为相同。
var canCommit = ArrayCanCommitOffsets var offsetRanges = ArrayArray [OffsetRange]
val kafkaStream = {
val streams = (1 to 3) map {
_ => createDirectStream[String, String]( ssc, PreferConsistent, Subscribe[String, String](topicSet, kafkaParams))
}
streams.foreach(stream => {
canCommit :+ stream.asInstanceOf[CanCommitOffsets]
stream.foreachRDD(rdd => {
offsetRanges :+ rdd.asInstanceOf[HasOffsetRanges].offsetRanges
})
})
val unionStrm= ssc.union(streams)
unionStrm.map(_.value())
}
kafkaStream.foreachRDD(rdd => {
***doing some process***
EsSpark.saveJsonToEs(rdd,index)
canCommit.foreach(stream => {
offsetRanges.foreach(ranges =>{
logInfo("Inside ranges")
stream.commitAsync(ranges)
})
})
})
我以kafkaparm的身份通过以下内容:
kafkaParams = Map(
kafka.startingOffsets -> latest,
kafka.value.deserializer -> org.apache.kafka.common.serialization.StringDeserializer,
zookeeper.connection.timeout.ms -> 30000,
kafka.key.deserializer -> org.apache.kafka.common.serialization.StringDeserializer,
security.protocol -> xxxx_yyyyy,
group.id -> test-consumer-group,
bootstrap.servers -> xxxx:1234,yyyy:1234,
zookeeper.connect -> xxxx:2181,zzzz:2181
)
任何人都可以指出为什么没有在sparkstreaming中启动任何作业的原因。