[
https://issues.apache.org/jira/browse/HBASE-27420?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Sanjeet Malhotra updated HBASE-27420:
-------------------------------------
Description:
{*}{*}With this change zookeeper will only listen for client connections on
127.0.0.1 in standalone mode. If HBase is running in standalone mode inside a
docker container and docker port forwarding is being used to connect to HBase
inside container then, any client trying to connect to zk will have destination
IP as container's private IP rather than loopback IP. This will cause zk to
reject all client connections being initiated from outside the container.
Thus, we need a way to make zk listen for client connections on IP other than
loopback. zk already provides a property named `clientPortAddress` to specify
the address to listen for client connections. And, we can specify zk properties
using `hbase.zookeeper.property.` prefix. Thus, the proposal is to allow user
to specify the IP address that zk will listen on using
`hbase.zookeeper.property.clientPortAddress` and if its not specified then
default to loopback as per current behaviour.
This way, the tests will still remain unimpacted and HBase can also be used in
standalone mode in a container.
was:
{*}{*}With [this change|https://issues.apache.org/jira/browse/HBASE-23993]
zookeeper will only listen for client connections on 127.0.0.1 in standalone
mode. If HBase is running in standalone mode inside a docker container and
docker port forwarding is being used to connect to HBase inside container then,
any client trying to connect to zk will have destination IP as container's
private IP rather than loopback IP. This will cause zk to reject all client
connections being initiated from outside the container.
Thus, we need a way to make zk listen for client connections on IP other than
loopback. zk already provides a property named `clientPortAddress` to specify
the address to listen for client connections. And, we can specify zk properties
using `hbase.zookeeper.property.` prefix. Thus, the proposal is to allow user
to specify the IP address that zk will listen on using
`hbase.zookeeper.property.clientPortAddress` and if its not specified then
default to loopback as per current behaviour.
This way, the tests will still remain unimpacted and HBase can also be used in
standalone mode in a container.
> Failure while connecting to zk if HBase is running in standalone mode in a
> container
> ------------------------------------------------------------------------------------
>
> Key: HBASE-27420
> URL: https://issues.apache.org/jira/browse/HBASE-27420
> Project: HBase
> Issue Type: Bug
> Components: Zookeeper
> Reporter: Sanjeet Malhotra
> Assignee: Sanjeet Malhotra
> Priority: Major
> Fix For: 3.0.0-alpha-4
>
>
> {*}{*}With this change zookeeper will only listen for client connections on
> 127.0.0.1 in standalone mode. If HBase is running in standalone mode inside a
> docker container and docker port forwarding is being used to connect to HBase
> inside container then, any client trying to connect to zk will have
> destination IP as container's private IP rather than loopback IP. This will
> cause zk to reject all client connections being initiated from outside the
> container.
> Thus, we need a way to make zk listen for client connections on IP other than
> loopback. zk already provides a property named `clientPortAddress` to specify
> the address to listen for client connections. And, we can specify zk
> properties using `hbase.zookeeper.property.` prefix. Thus, the proposal is to
> allow user to specify the IP address that zk will listen on using
> `hbase.zookeeper.property.clientPortAddress` and if its not specified then
> default to loopback as per current behaviour.
> This way, the tests will still remain unimpacted and HBase can also be used
> in standalone mode in a container.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)