Hi,

I take it that the public IP for the bootstrap server means that you have
Kafka client applications that run outside of your Kubernetes cluster.
The bootstrap servers are basically a limited list of brokers that are used
for initial connections to the Kafka cluster.
The client gathers the information about the cluster, and determines which
brokers are needed to work. Mostly the brokers that are the leaders of the
partitions that you connect to. It will use the advertised listener
addresses to connect to those brokers directly.

So with external clients, all brokers need to have a public/external IP
address where they can be reached.
You can reuse the same public IP addresses with a different port for a
broker, for example with an external load balancer setup.
I recommend using an Operator like Strimzi as it can become quite
complicated to maintain and scale Kafka on Kubernetes, and they provide
documentation on how to configure both Kubernetes, persistent volumes and
networking.

Kind regards,


Richard Bosch

Developer Advocate

Axual BV

https://axual.com/


On Mon, Nov 4, 2024 at 5:50 AM karan alang <karan.al...@gmail.com> wrote:

> Hello All -
> Anyone has installed Kafka on k8s, with only bootstrap server having Public
> IP, while the brokers have Cluster IP.
>
> Objective being - to reduce the number of public IPs, this reducing cost &
> also making the cluster secure
>
> However, what would the implication of this be on performance since the
> bootstrap IP would become the bottleneck .. How to resolve this ?
>
> Anyone has implemented this & has feedback on this paradigm ?
>
> tia!
>

Reply via email to