`Stream` is a lazy collection and only the first element is printed (that's
why you see the `?` in the output). What version of Kafka are you using? I
know I changed the code in that method not to use `Stream` at some point
during the 0.10 development cycle.

Ismael

On Fri, May 13, 2016 at 1:35 AM, Mayuresh Gharat <gharatmayures...@gmail.com
> wrote:

> All of them are set to "".
>
> BTW, I printed out the BrokerEndoints on the broker in
> KafkaApis.handleTopicMetadataRequest() and surprisingly it prints :
>  WARN [KafkaApis] [kafka-request-handler-9] [kafka-server] [] [KafkaApi-0]
> ENDPOINTS: Stream(Map(PLAINTEXT -> EndPoint(hostname,9092,PLAINTEXT)), ?) .
>
> It does not print the SSL protocol endpoint like
> EndPoint(hostname,16637,SSL).
>
> But my producer is able to talk to the broker on that SSL port and even
> send certs across and make requests.
>
> I checked the kafkaconfig values printed in the log :
> listeners = PLAINTEXT://:9092,SSL://:16637
>
> Thanks,
>
> Mayuresh
>
>
> On Thu, May 12, 2016 at 4:51 PM, Ismael Juma <ism...@juma.me.uk> wrote:
>
> > Are you using any of the advertised.* configs by any chance? If so, you
> > have to use advertised.listeners only, the other ones will only
> advertise a
> > PLAINTEXT listener.
> >
> > Ismael
> >
> > On Fri, May 13, 2016 at 12:24 AM, Mayuresh Gharat <
> > gharatmayures...@gmail.com> wrote:
> >
> > > Thanks  a lot Ismael :)
> > >
> > > Was able to get pass it.
> > >
> > >
> > > Now trying to figure out from broker logs :
> > >
> > >
> > > INFO [KafkaApis] [kafka-request-handler-0] [kafka-server] []
> [KafkaApi-0]
> > > Auto creation of topic testToic_1 with 8 partitions and replication
> > factor
> > > 1 is successful!
> > > [KafkaApis] [kafka-request-handler-0] [kafka-server] [] [KafkaApi-0]
> > Error
> > > when handling request Name: TopicMetadataRequest; Version: 0;
> > > CorrelationId: 0; ClientId: producer-1; Topics: testToic_1
> > > kafka.common.BrokerEndPointNotAvailableException: End point SSL not
> found
> > > for broker 0
> > >
> > >
> > >
> > >
> > >
> > > Thanks,
> > >
> > > Mayuresh
> > >
> > > On Thu, May 12, 2016 at 2:40 PM, Ismael Juma <ism...@juma.me.uk>
> wrote:
> > >
> > > > Hi Mayuresh,
> > > >
> > > > You need to enable client authentication by setting `ssl.client.auth`
> > to
> > > > `required` or `requested` (I suggest the former).
> > > >
> > > > Ismael
> > > >
> > > > On Thu, May 12, 2016 at 10:35 PM, Mayuresh Gharat <
> > > > gharatmayures...@gmail.com> wrote:
> > > >
> > > > > HI I am trying to establish an SSL connection from kafkaProducer
> and
> > > send
> > > > > certificate to the Kafka Broker.
> > > > >
> > > > >
> > > > > I deploy my kafka broker locally running 2 ports :
> > > > > *listeners = PLAINTEXT://:9092,SSL://:16637 *
> > > > >
> > > > > *My KafkaBroker SSL configs look like this :*
> > > > >
> > > > > ssl.protocol = TLS
> > > > > ssl.trustmanager.algorithm = SunX509
> > > > > ssl.keymanager.algorithm = SunX509
> > > > > ssl.keystore.type = VALUE1
> > > > > ssl.keystore.location = /a/b/c
> > > > > ssl.keystore.password = xyz
> > > > > ssl.key.password = xyz
> > > > > ssl.truststore.type = JKS
> > > > > ssl.truststore.location = /u/v/w
> > > > > ssl.truststore.password = 123
> > > > >
> > > > > I run my producer locally on the same linux box as my KafkaBroker.
> > > > > My produce command looks like this :
> > > > >
> > > > > *bin/kafka-producer-perf-test.sh  --num-records 10 --topic
> testToic_1
> > > > > --record-size 10 --throughput 1 --producer-props *
> > > > > bootstrap.servers = localhost://:16637
> > > > > security.protocol = SSL
> > > > > ssl.protocol = TLS
> > > > > ssl.trustmanager.algorithm = SunX509
> > > > > ssl.keymanager.algorithm = SunX509
> > > > > ssl.keystore.type = VALUE1
> > > > > ssl.keystore.location = /a/b/c
> > > > > ssl.keystore.password = xyz
> > > > > ssl.key.password = xyz
> > > > > ssl.truststore.type = JKS
> > > > > ssl.truststore.location = /u/v/w
> > > > > ssl.truststore.password = 123
> > > > >
> > > > >
> > > > > On kafka broker, when I do inside buildPrincipal() api of
> > > PricipalBuilder
> > > > >
> > > > > SSLSession session =
> > ((SslTransportLayer)transportLayer).sslSession();
> > > > > session.getPeerCertificates()
> > > > >
> > > > > I get:
> > > > > *org.apache.kafka.common.KafkaException:
> > > > > javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated*
> > > > >
> > > > >
> > > > > I ran this command as listed here
> > > > > http://kafka.apache.org/documentation.html#security_ssl :
> > > > >
> > > > > *openssl s_client -debug -connect localhost:16637 -tls1*
> > > > >
> > > > > and was able to see the certificate.
> > > > >
> > > > > I am not able to understand the peer not authenticated exception
> > here.
> > > > > Am I missing any SSL config on producer request?
> > > > >
> > > > >
> > > > >
> > > > > --
> > > > > -Regards,
> > > > > Mayuresh R. Gharat
> > > > > (862) 250-7125
> > > > >
> > > >
> > >
> > >
> > >
> > > --
> > > -Regards,
> > > Mayuresh R. Gharat
> > > (862) 250-7125
> > >
> >
>
>
>
> --
> -Regards,
> Mayuresh R. Gharat
> (862) 250-7125
>

Reply via email to