Home | About | Sematext search-lucene.com search-hadoop.com
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB
 Search Hadoop and all its subprojects:

Switch to Threaded View
HBase >> mail # user >> Re: Connecting to standalone HBase from a remote client


Copy link to this message
-
Re: Connecting to standalone HBase from a remote client
Thanks, but hard-coding the master's IP in my client code doesn't work - I
also don't really understand why it has to be set in the client, as
according to the flow you describe, the client is getting all it needs to
know from zookeeper (?).

Doing some digging on the HBase server side, I found that
conf/regionservers has a single line containing the name 'localhost'. I
changed it to the IP of the server, and restarted hbase. However my hbase
client still thinks it should contact localhost after successfully
connecting to zookeeper....

My hbase-site.xml only contains what
http://hbase.apache.org/book.html#quickstart asked for, as seen right
below. Perhaps that's not enough?

<configuration>
<property>
    <name>hbase.rootdir</name>
    <value>file:/usr/local/hbase/hbase-0.94.2/data/hbase</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/usr/local/hbase/hbase-0.94.2/data/zookeeper</value>
  </property>
</configuration>

Kind of hoping there's a straightforward way to configure a solution.
Must be something that's always being configured when clustering, otherwise
the same problems would arise in a clustered environment, yet in my case
I'm still running a standalone instance...
On Sun, Nov 25, 2012 at 10:48 PM, Tariq [via Apache HBase] <
ml-node+[EMAIL PROTECTED]> wrote:

> Also, add the IP and hostname of the machine running Hbase in your
> /etc/hosts file.
>
> Regards,
>     Mohammad Tariq
>
>
>
> On Mon, Nov 26, 2012 at 2:15 AM, Mohammad Tariq <[hidden email]<http://user/SendEmail.jtp?type=node&node=4034365&i=0>>
> wrote:
>
> > Sent from handheld, don't mind typos. :)
> >
> > Regards,
> >     Mohammad Tariq
> >
> >
> >
> > On Mon, Nov 26, 2012 at 2:14 AM, Mohammad Tariq <[hidden email]<http://user/SendEmail.jtp?type=node&node=4034365&i=1>>wrote:
>
> >
> >> Hello Matan,
> >>
> >>     The client first contact the zookeeper to get the region that holds
> >> the ROOt table. From ROOt, client gets the server that holds META and
> from
> >> there it gets the info about the server which actually holds the key of
> the
> >> table of interest. Your client seems to get wrong info. Please add
> these
> >> props in your client code and see it works :
> >>                 hbaseConfiguration.set("hbase.zookeeper.quorum",
> >> "192.168.2.121");
> >> hbaseConfiguration.set("hbase.zookeeper.property.clientPort","2181");
> >>  hbaseConfiguration.set("hbase.master", "192.168.2.121:60000");
> >>
> >> Change the ports and addresses as per your config.
> >>
> >> HTH
> >>
> >> Regards,
> >>     Mohammad Tariq
> >>
> >>
> >>
> >> On Mon, Nov 26, 2012 at 2:07 AM, matan <[hidden email]<http://user/SendEmail.jtp?type=node&node=4034365&i=2>>
> wrote:
> >>
> >>> Hi,
> >>>
> >>> With gracious help on this forum (from ramkrishna vasudevan) I've
> >>> managed to
> >>> setup HBase 0.94.2 in standalone mode on Ubuntu, and proceeded to
> >>> writing a
> >>> small client. I am trying to run the client from a remote server, not
> the
> >>> one where HBase is running on. It seems pretty obvious looking at both
> >>> server and client side logs, that my client successfully connects to
> >>> zookeeper, but then tries to perform the actual interaction against
> the
> >>> wrong network address. It looks like it is wrongfully trying to
> address
> >>> localhost on the HBase client side rather than addressing the server
> >>> where
> >>> HBase is installed.
> >>>
> >>> In terms of flow, I guess that zookeeper provides my client with how
> to
> >>> interact with HBase, and that it informs my client to that end that
> the
> >>> name
> >>> of the server to contact is 'localhost'. I can guess this may be
> changed,
> >>> presumably by configuring HBase on the server side. Assuming that the
> >>> correct flow should be that my client would get informed of the real
> >>> name of
> >>> the HBase server, by zookeeper. However I failed managing to configure
> >>> just
> >>> that. I tried the hbase.master property, but it had no effect.
View this message in context: http://apache-hbase.679495.n3.nabble.com/Connecting-to-standalone-HBase-from-a-remote-client-tp4034362p4034395.html
Sent from the HBase User mailing list archive at Nabble.com.
NEW: Monitor These Apps!
elasticsearch, apache solr, apache hbase, hadoop, redis, casssandra, amazon cloudwatch, mysql, memcached, apache kafka, apache zookeeper, apache storm, ubuntu, centOS, red hat, debian, puppet labs, java, senseiDB