smengcl opened a new pull request, #11961: URL: https://github.com/apache/ozone/pull/11961
Generated-by: Claude Code (Opus 5.5) ## What changes were proposed in this pull request? OM binds its Hadoop RPC server to the host in `ozone.om.address` (or `ozone.om.address.<serviceId>.<nodeId>` under HA), which is also the address OM advertises. On a dual-stack host whose name has both A and AAAA records, that host resolves to IPv4 by default, so OM RPC listens only on IPv4. Under HA there is no workaround, because the suffixed address must not be a wildcard (HDDS-16308). SCM and the OM HTTP servers already have separate bind-host settings; OM RPC did not. This PR adds `ozone.om.bind.host` (and the `.<serviceId>.<nodeId>` suffixed form for HA): * `OmUtils.getOmRpcBindAddress`: if the bind host is set, it replaces the host of the RPC address and the port is kept. If unset, behavior is unchanged. * `OzoneManager.getRpcServer` starts the RPC server on that address. The advertised address (`updateRPCListenAddress`, delegation token service, Kerberos login, OM details) still comes from `ozone.om.address`. * `OMHANodeDetails` copies the per-node `ozone.om.bind.host.<serviceId>.<nodeId>` to the local node's config, like the HTTP bind hosts. * `ozone-default.xml` entry with no default. Setting `ozone.om.bind.host` to `::` lets a dual-stack OM accept IPv6 (and, depending on the OS dual-stack setting, IPv4) on all interfaces. ## What is the link to the Apache JIRA https://issues.apache.org/jira/browse/HDDS-17138 ## How was this patch tested? * `TestOmUtils#testGetOmRpcBindAddress`: unset, `::`, `[::]` and `0.0.0.0` bind host. * New `TestOMHANodeDetails`: per-node bind host is honored under HA and the advertised address is unchanged. It fails without the `OMHANodeDetails` change. * CI. 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
