[ 
https://issues.apache.org/jira/browse/HBASE-12954?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14302519#comment-14302519
 ] 

Enis Soztutar commented on HBASE-12954:
---------------------------------------

bq. So like Stack suggested, we need to disconnect the hostnames HBase uses 
internally from those posted to ZK for external consumption
Maybe my understanding of this is not correct. I thought that we want to 
standardize on the hostnames used both internally and externally, but we do not 
want to do a reverse DNS resolution necessarily. In this case both the master 
address in zookeeper, and the region server addresses in meta table will be 
coming from configured (and hardcoded) hostnames. We can still have the master 
"verify" the hostname provided from the regionserver, and use it only if the 
forward resolution works. Otherwise it rejects the RS. The RS will never use 
hostnames other than configured. 
The traffic from master to RS or RS to RS can be separated out (if wanted) 
using custom hosts file or DNS setup. 

> Ability impaired using HBase on multihomed hosts
> ------------------------------------------------
>
>                 Key: HBASE-12954
>                 URL: https://issues.apache.org/jira/browse/HBASE-12954
>             Project: HBase
>          Issue Type: Bug
>    Affects Versions: 0.98.4
>            Reporter: Clay B.
>            Assignee: Ted Yu
>            Priority: Minor
>         Attachments: 12954-v1.txt, Hadoop Three Interfaces.png
>
>
> For HBase clusters running on unusual networks (such as NAT'd cloud 
> environments or physical machines with multiple IP's per network interface) 
> it would be ideal to have a way to both specify:
> # which IP interface to which HBase master or region-server will bind
> # what hostname HBase will advertise in Zookeeper both for a master or 
> region-server process
> While efforts such as HBASE-8640 go a long way to normalize these two sources 
> of information, it is not possible in the current design of the properties 
> available to an administrator for these to be unambiguously specified.
> One has been able to request {{hbase.master.ipc.address}} or 
> {{hbase.regionserver.ipc.address}} but one can not specify the desired HBase 
> {{hbase.master.hostname}}. (It was removed in HBASE-1357, further I am 
> unaware of a region-server equivalent.)
> I use a configuration management system to generate all of my configuration 
> files on a per-machine basis. As such, an option to generate a file 
> specifying exactly which hostname to use would be helpful.
> Today, specifying the bind address for HBase works and one can use an 
> HBase-only DNS for faking what to put in Zookeeper but this is far from 
> ideal. Network interfaces have no intrinsic IP address, nor hostname. 
> Specifing a DNS server is awkward as the DNS server may differ from the 
> system's resolver and is a single IP address. Similarly, on hosts which use a 
> transient VIP (e.g. through keepalived) for other services, it means there's 
> a seemingly non-deterministic hostname choice made by HBase depending on the 
> state of the VIP at daemon start-up time.
> I will attach two networking examples I use which become very difficult to 
> manage under the current properties.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to