This JIRA is to address the similar problem as HBASE-12954, but there are some little differences,
1. HBASE-12954 provides the configuration "hbase.regionserver.hostname" so users can configure it on every regionserver with preferred hostnames. However, this configuration cannot be set through Ambari because each regionserver has a different value of this setting.
2. In Azure HDInsight clusters, we want to give each RegionServer/workernode a FQDN by modifying /etc/hosts on that node, then when regionserver starts,
String hostName = shouldUseThisHostnameInstead() ? useThisHostnameInstead :
it uses FQDN names here but on HMaster side, it will do reverse DNS lookup which cannot be resolved.
// if regionserver passed hostname to use,
// then use it instead of doing a reverse DNS lookup
ServerName rs = master.getServerManager().regionServerStartup(request, ia);
My proposed fix is to add a new configuration "hbase.hmaster.skip.reverse.dns.lookup". This is a hard switch. If it is set to true, then Regionserver will use the value returned by *_rpcServices.isa.getHostName()_* as the hostname overwriting whatever users specifies in "hbase.regionserver.hostname" and send to HMaster. HMaster will not do reverse DNS lookup, which has been implemented in HBASE-12954. If users want to provide their own hostnames in "hbase.regionserver.hostname", "hbase.hmaster.skip.reverse.dns.lookup" must be false.
I will submit a patch later today.
This message was sent by Atlassian JIRA