2017-01-24 3 views
0

Cloud Foundryでは、非ssl url( "kafkaURL:9092")へのメッセージを生成できます。しかし、それはssl url( "kafkaURL:9093")では機能しません。Kafka sslプロデューサEOFExceptionクラウドファウンドリからのProducer.send

カフカサーバーバージョン0.10.0.1とクライアントバージョン0.10.0.0。ここで

プロパティある私が使用:

props.put(org.apache.kafka.clients.producer.ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, config.getString("obs_q_and_a_db.kafka.metadataBrokerList")) 
props.put(org.apache.kafka.clients.producer.ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, classOf[StringSerializer]) 
props.put(org.apache.kafka.clients.producer.ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, classOf[StringSerializer]) 
props.put(CommonClientConfigs.SECURITY_PROTOCOL_CONFIG, "SSL") 
props.put(SslConfigs.SSL_TRUSTSTORE_LOCATION_CONFIG, "mySslFolder/answersapi.kafka.client.keystore.jks") 
props.put(SslConfigs.SSL_TRUSTSTORE_PASSWORD_CONFIG, "sslTruststorePassword")) 
props.put(SslConfigs.SSL_KEYSTORE_LOCATION_CONFIG, "mySslFolder/answersapi.kafka.client.truststore.jks") 
props.put(SslConfigs.SSL_KEYSTORE_PASSWORD_CONFIG, "sslKeystorePassword") 
props.put(SslConfigs.SSL_KEY_PASSWORD_CONFIG, "sslKeyPassword") 
props.setProperty("metadata.broker.list", "kafkaURL:9093")) 
props.setProperty("serializer.class", serializerClass) 
props.setProperty("message.send.max.retries", maxRetries.toString) 
props.setProperty("request.required.acks", requiredAcks.toString) 
props.setProperty("producer.type", producerType) 
props.setProperty("batch.num.messages", batchNumMessages.toString) 

を同じプロパティと同じ証明書ファイル(トラストストア、キーストアファイル)シェルで次のコマンドを使用して、カフカサーバの作業の罰金にカフカシェルから使用する場合:

kafka-console-producer --broker-list kafkaURL:9093 --producer.config config --topic myTopicName 

そして、ここでエラーです:

2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT java.io.EOFException 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at org.apache.kafka.common.network.NetworkReceive.readFromReadableChannel(NetworkReceive.java:99) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.network.BlockingChannel.readCompletely(BlockingChannel.scala:129) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.network.BlockingChannel.receive(BlockingChannel.scala:120) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.producer.SyncProducer.liftedTree1$1(SyncProducer.scala:77) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.producer.SyncProducer.kafka$producer$SyncProducer$$doSend(SyncProducer.scala:74) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.producer.SyncProducer.send(SyncProducer.scala:119) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:59) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.producer.BrokerPartitionInfo.updateInfo(BrokerPartitionInfo.scala:82) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.producer.async.DefaultEventHandler$$anonfun$handle$1.apply$mcV$sp(DefaultEventHandler.scala:68) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.utils.CoreUtils$.swallow(CoreUtils.scala:79) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.utils.Logging$class.swallowError(Logging.scala:106) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.utils.CoreUtils$.swallowError(CoreUtils.scala:51) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:68) 
2017-01-18T12:03:29.78-0600 [APP/PROC/WEB/0]OUT  at kafka.producer.Producer.send(Producer.scala:77) 

答えて

0

サーバが0.10.0.1に移動したときにカフカのクライアントコードバージョン「0.9.0.1」が動作を停止しました クライアントコードを0.10.0.0に変更したとき、同じEOFileExceptionが発生しました 廃止予定のクラスkafka.producer。{KeyedMessage、Producer、ProducerConfig} 新しい0.10.0クラスorg.apache.kafka.clients.producer。{ProducerRecord、KafkaProducer、ProducerConfig}それぞれ 非推奨のクラスは、非SSL URLはSecured KafkaのURLを指すときにのみ失敗するURL

関連する問題