Hey Tyler,

What is your end goal? To have a single publicly / internally available
address to be able to provide to consumers / producers to connect to the
Kerberized Kafka?

On Fri, Jun 22, 2018 at 9:20 AM, Tyler Monahan <tjmonah...@gmail.com> wrote:

> Martin,
>
> I have read that stack overflow post but it doesn't help with my specific
> problem. An ELB will work if I am not using kerberos just fine. The issue
> started happening when I added kerberos auth to the cluster. The auth has
> to happen before the meta data request so it never gets to the point where
> it is by passing the load balancer. Because I am connecting with the load
> balancers dns record I don't have a valid spn on the brokers for the load
> balancers dns record. This blog post has some work arounds for kerberos
> with a load balancer and details the problem but I haven't been able to get
> any of them to work with kafka because it gets traffic through and ELB but
> also talks to the other brokers directly in my setup.
> https://ssimo.org/blog/id_019.html
>
> Tyler Monahan
>
> On Fri, Jun 22, 2018 at 5:36 AM, Martin Gainty <mgai...@hotmail.com>
> wrote:
>
> > MG>quoting stackoverflow below
> >
> > "You can use an ELB as the bootstrap.servers,
> > *The ELB will be used for the initial metadata request the client makes
> to
> > figure out which topic partitions are on which brokers, *
> > but after (the initial metadata request)
> > the
> > *brokers still need to be directly accessible to the client. *that it'll
> > use the hostname of the server (or advertised.listeners setting if you
> > need to customize it,
> > which, e.g. might be necessary on EC2 instances to get the public IP of a
> > server).
> > If you were trying to use an ELB to make a Kafka cluster publicly
> > available,
> > you'd need to make sure the advertised.listeners for each broker also
> > makes it publicly accessible. "
> >
> > MG> initial metadata request you will see elb
> > MG>after metadata request and topic partition locations are determined
> > MG>elb drops out and client will talk to directly to broker
> > MG>use healthcheck algorithm to determine assigned server/port assigned
> to
> > broker from /brokers/id/$id
> > MG>echo dump | nc localhost 2181 | grep brokers
> >
> >
> > https://stackoverflow.com/questions/38666795/does-kafka-
> > support-elb-in-front-of-broker-cluster
> >
> > <https://stackoverflow.com/questions/38666795/does-kafka-
> support-elb-in-front-of-broker-cluster>
> > Does Kafka support ELB in front of broker cluster? - Stack ...
> > <https://stackoverflow.com/questions/38666795/does-kafka-
> support-elb-in-front-of-broker-cluster>
> > stackoverflow.com
> > I had a question regarding Kafka broker clusters on AWS. Right now there
> > is an AWS ELB sitting in front of the cluster, but when I set the
> > "bootstrap.servers" property of my producer or consumer to...
> >
> > does this help?
> >
> > Martin
> > ______________________________________________
> >
> >
> >
> > ------------------------------
> > *From:* Tyler Monahan <tjmonah...@gmail.com>
> > *Sent:* Thursday, June 21, 2018 6:17 PM
> > *To:* users@kafka.apache.org
> > *Subject:* Configuring Kerberos behind an ELB
> >
> > Hello,
> >
> > I have setup kafka using kerberos successfully however if I try and reach
> > kafka through an elb the kerberos authentication fails. The kafka brokers
> > are each using their unique hostname for kerberos and when going through
> an
> > elb the consumer/producer only sees the elb's dns record which doesn't
> have
> > kerberos setup for it causing auth to fail. If I try to setup a service
> > principle name for that dns record I can only associate it with one of
> the
> > brokers behind the elb so the other ones fail.
> >
> > I have tried setting up a service account and having the kafka brokers
> use
> > that which works when a consumer/producer is talking to the instances
> > through the elb however inter broker communication which is also over
> > kerberos fails at that point because it is going directly to the other
> > nodes instead of through the elb. I am not sure where to go from here as
> > there doesn't appear to be a way to configure the inter broker
> > communication to work differently then the incoming consumer
> communication
> > short of getting rid of kerberos.
> >
> > Any advice would be greatly appreciated.
> >
> > Tyler Monahan
> >
>



-- 
Ben Wood
Software Engineer - Data Agility
Mesosphere

Reply via email to