Skip to content

advertisedListener should have advertisedPort as well #8694

@abhilashmandaliya

Description

@abhilashmandaliya

Is your enhancement request related to a problem? Please describe.
From pulsar 2.6.x, you guys have introduced advertisedListeners which is a useful feature. But the problem with that is, it uses the broker/web port underneath which is a problem. Let's say I have 2 containers running pulsar broker and they have the same public IP because they are on the same physical host (e.g. IP 192.168.201.202). So both of them tries to create health check topic with 8080 ports and it fails. Both of them forms the address 192.168.201.202:8080 and of course, it's not possible to serve two nodes on the same port on the same machine.

Describe the solution you'd like
There should be an option to advertise ports separately. Maybe 4 separate ports(advertisedBrokerPort, advertisedBrokerPortTls, webServicePort, webServicePortTls) from where the outside world can connect.

Describe alternatives you've considered
My colleague and I had created an end-to-end solution for this where we exposed all 4 ports I mentioned above at https://github.com/ashishshinde/pulsar/tree/advertised-ports-master-rebase. While raising a PR, I found that you guys have already worked halfway by creating advertisedListeners. The advertisedListeners is anyways not documented on the main site so we can also think of our alternative.

Metadata

Metadata

Assignees

Labels

type/enhancementThe enhancements for the existing features or docs. e.g. reduce memory usage of the delayed messages

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions