[
https://issues.apache.org/jira/browse/HBASE-18124?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
liubangchen updated HBASE-18124:
--------------------------------
Description:
Hbase only have one way to locate hmaster or hregionserver not like hdfs has
two way to locate datanode use by name or hostname.
I’m a engineer of tencent cloud computing , and I’m in charge of to make Hbase
as a cloud service,when we make hbase as a cloud service we need hbase support
other way to support locate hmaster or hregionserver
Tencent Hbase cloud service architectue shown as follows 1.jpg
VM
User’s Hbase client work in vm and use virtual ip address to access hbase
cluster.
• NAT
Network Address Translation, vip(Virtual Network Address) to pip (Physical
Network Address)
• HbaseCluster Service HbaseCluster Service work in physical network
Problem
• View on vm
On vm side vm use vip to communication,but hbase have only one way to
communication use struct named
ServerName.
When Hmaster startup will store master address and meta region server address
in zookeeper, then the address
is pip(Physical Network Address)
because hbase cluster work in physical network . when vm get the address from
zookeeper will not work because
vm use vip to communication,one way to
solve this is to make physical machine host as vip like 192.168.0.1,but is not
better to make this.
• View on Physical machine
Physical machine use pip to communication, and one hbase cluster use by
multi-user.
Solution
• protocol extend change proto message to below:
message ServerName {
required string host_name = 1;
optional uint32 port = 2;
optional uint64 start_code = 3;
optional string name=4;
}
add a filed named name like hdfs’s datablock location
• metatable extend add column to hbase:meta named info namelocation
• hbase-server
add params hbase.regionserver.servername to regionserver namelocation
add params hbase.master.servername to set master namelocation
• hbase-client
add params hbase.client.use.hostname to choose which address to use
was:
Hbase only have one way to locate hmaster or hregionserver not like hdfs has
two way to locate datanode use by name or hostname.
I’m a engineer of tencent cloud computing , and I’m in charge of to make Hbase
as a cloud service,when we make hbase as a cloud service we need hbase support
other way to support locate hmaster or hregionserver
> Add Property name Of Strcut ServerName To Locate HMaster Or HRegionServer
> -------------------------------------------------------------------------
>
> Key: HBASE-18124
> URL: https://issues.apache.org/jira/browse/HBASE-18124
> Project: HBase
> Issue Type: New Feature
> Components: Client, hbase, master
> Reporter: liubangchen
> Assignee: liubangchen
> Attachments: 1.jpg, HBASE-18124.patch, HBASE-18124.pdf
>
>
> Hbase only have one way to locate hmaster or hregionserver not like hdfs has
> two way to locate datanode use by name or hostname.
> I’m a engineer of tencent cloud computing , and I’m in charge of to make
> Hbase as a cloud service,when we make hbase as a cloud service we need hbase
> support other way to support locate hmaster or hregionserver
> Tencent Hbase cloud service architectue shown as follows 1.jpg
> VM
> User’s Hbase client work in vm and use virtual ip address to access hbase
> cluster.
> • NAT
> Network Address Translation, vip(Virtual Network Address) to pip (Physical
> Network Address)
> • HbaseCluster Service HbaseCluster Service work in physical network
> Problem
> • View on vm
> On vm side vm use vip to communication,but hbase have only one way to
> communication use struct named
> ServerName.
> When Hmaster startup will store master address and meta region server address
> in zookeeper, then the address
> is pip(Physical Network Address)
> because hbase cluster work in physical network . when vm get the address from
> zookeeper will not work because
> vm use vip to communication,one way to
> solve this is to make physical machine host as vip like 192.168.0.1,but is
> not better to make this.
> • View on Physical machine
> Physical machine use pip to communication, and one hbase cluster use by
> multi-user.
> Solution
> • protocol extend change proto message to below:
> message ServerName {
> required string host_name = 1;
> optional uint32 port = 2;
> optional uint64 start_code = 3;
> optional string name=4;
> }
> add a filed named name like hdfs’s datablock location
> • metatable extend add column to hbase:meta named info namelocation
> • hbase-server
> add params hbase.regionserver.servername to regionserver namelocation
> add params hbase.master.servername to set master namelocation
> • hbase-client
> add params hbase.client.use.hostname to choose which address to use
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)