Ошибка KafKa java.nio.channels.UnresolvedAddressException - PullRequest
0 голосов
/ 24 декабря 2018

Я сделал тест Кафки, и это сработало.но когда я запускаю программу в IDE, я получаю эту ошибку и не знаю, как ее решить.Может кто-нибудь мне помочь?Большое спасибо!

public final class Constants {
    public static final String REDIS_SERVER = "localhost";

    public static final String KAFKA_SERVER = "localhost";

    public static final String KAFKA_ADDR = KAFKA_SERVER + ":9092";

    public static final String KAFKA_TOPICS = "recom1";

}

val Array(brokers, topics) = Array(Constants.KAFKA_ADDR, Constants.KAFKA_TOPICS)

val sparkConf = new 
SparkConf().setMaster("local[2]").setAppName("RealtimeRecommender")

val ssc = new StreamingContext(sparkConf, Seconds(2))

val topicsSet = topics.split(",").toSet

val kafkaParams = Map[String, String]("metadata.broker.list" -> brokers,"auto.offset.reset" -> "smallest")

val messages = KafkaUtils.createDirectStream[String, String, StringDecoder, StringDecoder](ssc, kafkaParams, topicsSet)

Я думаю, что ip и имя хоста могут не отображаться в / etc / hosts, но уже есть 127.0.0.1 localhost.Кто-нибудь может мне помочь?

Это ошибка:

Exception in thread "main" org.apache.spark.SparkException: java.nio.channels.UnresolvedAddressException
    at org.apache.spark.streaming.kafka.KafkaCluster$$anonfun$checkErrors$1.apply(KafkaCluster.scala:366)
    at org.apache.spark.streaming.kafka.KafkaCluster$$anonfun$checkErrors$1.apply(KafkaCluster.scala:366)
    at scala.util.Either.fold(Either.scala:97)
    at org.apache.spark.streaming.kafka.KafkaCluster$.checkErrors(KafkaCluster.scala:365)
    at org.apache.spark.streaming.kafka.KafkaUtils$.getFromOffsets(KafkaUtils.scala:222)
    at org.apache.spark.streaming.kafka.KafkaUtils$.createDirectStream(KafkaUtils.scala:484)
    at com.ssx.recom.realtime.RealtimeRecommender$.main(RealtimeRecommender.scala:26)
    at com.ssx.recom.realtime.RealtimeRecommender.main(RealtimeRecommender.scala)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)

1 Ответ

0 голосов
/ 24 декабря 2018

Я наконец решил эту проблему.Просто проверьте zookeeper, потому что zookeeper хранит информацию о конфигурации kafka и сохраняет имя хоста kafka.Так что IP не работает!

...