In some environments the externally accessible host/port is not the same as the bind host/port. This commonly happens with containers. It would be nice to have a -
rpc-advertised-addresses configuration flag that would replace the -rpc-bind-addresses config when a server gives out it's own RPC address.
Some quick notes I wrote on a potential implementation on Slack:
As far as where it would be added - I think you want to go one level down from the heartbeater into the RpcServer. RpcServer already has a GetBoundAddresses method, so maybe it could have a `GetAdvertisedAddresses` method and a corresponding rpc_advertised_addresses gflag as well (rpc_bind_addresses is also defined in rpc_server.cc). Then, the heartbeater could be changed to use GetAdvertisedAddresses instead of GetBoundAddress.
I’m not sure if there needs to be a corresponding change to masters, I think it may be enough to just use the advertised hostname for clients and for --master-addresses configs
hmm well it would need to change for the GetMasterRegistration RPC