You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by bob doe <du...@gmail.com> on 2019/10/30 21:56:37 UTC

how to connect to hbase through HTTPS proxy

I'm currently using org.apache.hadoop.hbase.client.ConnectionFactory to
connect to HBase:


import rg.apache.hadoop.hbase.client.*;
....
Connection connection = ConnectionFactory.createConnection(conf);
Table table = connection.getTable(TableName.valueOf("mytable"));

If there is a HTTPS proxy in between the client and HBase server, is it
possible to configure proxy host, port, basic authentication under
Configuration object?

I want to avoid applying proxy settings globally using -Dhttps.proxyHost
and affect all HTTP connections.

Re: how to connect to hbase through HTTPS proxy

Posted by Nick Dimiduk <nd...@gmail.com>.
Hi Bob,

To the best of my knowledge this is not possible using the standard HBase
client. The wire protocol is not HTTP, so all this goodness does not apply.

There is a “REST Gateway” that exposes an HBase cluster over HTTP.
Presumably you could proxy calls to a gateway instance (or a pool of
gateway instances). The architecture of the standard client differs from
the gateway setup: in the standard configuration the client will
communicate with region servers directly. Using the gateway results in the
gateway communicating with cluster members on behalf of the client.

https://hbase.apache.org/book.html#_rest

Thanks,
Nick

On Wed, Oct 30, 2019 at 15:31 bob doe <du...@gmail.com> wrote:

> I'm currently using org.apache.hadoop.hbase.client.ConnectionFactory to
> connect to HBase:
>
>
> import rg.apache.hadoop.hbase.client.*;
> ....
> Connection connection = ConnectionFactory.createConnection(conf);
> Table table = connection.getTable(TableName.valueOf("mytable"));
>
> If there is a HTTPS proxy in between the client and HBase server, is it
> possible to configure proxy host, port, basic authentication under
> Configuration object?
>
> I want to avoid applying proxy settings globally using -Dhttps.proxyHost
> and affect all HTTP connections.
>