hbase-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mohammad Tariq <donta...@gmail.com>
Subject Re: Connecting to standalone HBase from a remote client
Date Sun, 25 Nov 2012 20:45:38 GMT
Sent from handheld, don't mind typos. :)

Regards,
    Mohammad Tariq



On Mon, Nov 26, 2012 at 2:14 AM, Mohammad Tariq <dontariq@gmail.com> 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 <matan@cloudaloe.org> 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.
>>
>> local HBase shell works just fine. The logs which led me to this analysis
>> follow, perhaps you will agree with my analysis. How should I change my
>> configuration to solve this? (making my client able to communicate with
>> HBase after making the zookeeper connection...).
>>
>> *Server side log:*
>> 2012-11-25 22:25:14,856 INFO
>> org.apache.hadoop.hbase.master.AssignmentManager: The master has opened
>> the
>> region test4,,1353836779589.bb29c037092c5d69c9efc8f13c2b2563. that was
>> online on localhost,58063,1353875103994
>> 2012-11-25 22:26:05,670 INFO
>> org.apache.zookeeper.server.NIOServerCnxnFactory: Accepted socket
>> connection
>> from /my-client-ip:49447
>> 2012-11-25 22:26:05,672 INFO org.apache.zookeeper.server.ZooKeeperServer:
>> Client attempting to establish new session at /my-client-ip:49447
>> 2012-11-25 22:26:05,720 INFO org.apache.zookeeper.server.ZooKeeperServer:*
>> Established session 0x13b393e9d1d0004 with negotiated timeout 40000 for
>> client /my-client-ip:49447*
>> 2012-11-25 22:27:05,354 WARN org.apache.zookeeper.server.NIOServerCnxn:
>> Exception causing close of session 0x13b393e9d1d0004 due to
>> java.io.IOException: Connection reset by peer
>> 2012-11-25 22:27:05,355 INFO org.apache.zookeeper.server.NIOServerCnxn:
>> Closed socket connection for client /my-client-ip:49447 which had
>> sessionid
>> 0x13b393e9d1d0004
>>
>> *Client side log:*
>> 12/11/25 22:25:51 INFO zookeeper.ZooKeeper: Initiating client connection,
>> connectString=my-hbase-server-ip:2181 sessionTimeout=180000
>> watcher=hconnection
>> 12/11/25 22:25:51 INFO zookeeper.ClientCnxn: Opening socket connection to
>> server /my-hbase-server-ip:2181
>> 12/11/25 22:25:51 INFO zookeeper.RecoverableZooKeeper: The identifier of
>> this process is 12372@P-Cloudaloe-01
>> 12/11/25 22:25:55 INFO client.ZooKeeperSaslClient: Client will not
>> SASL-authenticate because the default JAAS configuration section 'Client'
>> could not be found. If you are not using SASL, you may ignore this. On the
>> other hand, if you expected SASL to work, please fix your JAAS
>> configuration.
>> 12/11/25 22:25:55 INFO zookeeper.ClientCnxn: Socket connection established
>> to my-hbase-server-ip/my-hbase-server-ip:2181, initiating session
>> 12/11/25 22:25:55 INFO zookeeper.ClientCnxn: Session establishment
>> complete
>> on server my-hbase-server-ip/my-hbase-server-ip:2181, sessionid =
>> 0x13b393e9d1d0004, negotiated timeout = 40000
>> 12/11/25 22:25:57 INFO ipc.HBaseRPC: *Server at localhost/127.0.0.1:58063
>> could not be reached* after 1 tries, giving up.
>> 12/11/25 22:26:00 INFO ipc.HBaseRPC: Server at localhost/127.0.0.1:58063
>> could not be reached after 1 tries, giving up.
>> 12/11/25 22:26:03 INFO ipc.HBaseRPC: Server at localhost/127.0.0.1:58063
>> could not be reached after 1 tries, giving up.
>> 12/11/25 22:26:06 INFO ipc.HBaseRPC: Server at localhost/127.0.0.1:58063
>> could not be reached after 1 tries, giving up.
>> 12/11/25 22:26:10 INFO ipc.HBaseRPC: Server at localhost/127.0.0.1:58063
>> could not be reached after 1 tries, giving up.
>> 12/11/25 22:26:14 INFO ipc.HBaseRPC: Server at localhost/127.0.0.1:58063
>> could not be reached after 1 tries, giving up.
>> 12/11/25 22:26:20 INFO ipc.HBaseRPC: Server at localhost/127.0.0.1:58063
>> could not be reached after 1 tries, giving up.
>> 12/11/25 22:26:26 INFO ipc.HBaseRPC: Server at localhost/127.0.0.1:58063
>> could not be reached after 1 tries, giving up.
>> 12/11/25 22:26:36 INFO ipc.HBaseRPC: Server at localhost/127.0.0.1:58063
>> could not be reached after 1 tries, giving up.
>> 12/11/25 22:26:54 INFO ipc.HBaseRPC: Server at localhost/127.0.0.1:58063
>> could not be reached after 1 tries, giving up.
>> Exception in thread "main"
>> org.apache.hadoop.hbase.client.NoServerForRegionException: Unable to find
>> region for myLittleHBaseTable,,99999999999999 after 10 tries.
>>         at
>>
>> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegionInMeta(HConnectionManager.java:955)
>>         at
>>
>> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegion(HConnectionManager.java:860)
>>         at
>>
>> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegionInMeta(HConnectionManager.java:962)
>>         at
>>
>> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegion(HConnectionManager.java:864)
>>         at
>>
>> org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.locateRegion(HConnectionManager.java:821)
>>         at
>> org.apache.hadoop.hbase.client.HTable.finishSetup(HTable.java:234)
>>         at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:174)
>>         at org.apache.hadoop.hbase.client.HTable.<init>(HTable.java:133)
>>         at HelloWorld.main(HelloWorld.java:30)
>>
>> Thanks!
>> matan
>>
>>
>>
>>
>> --
>> View this message in context:
>> http://apache-hbase.679495.n3.nabble.com/Connecting-to-standalone-HBase-from-a-remote-client-tp4034362.html
>> Sent from the HBase User mailing list archive at Nabble.com.
>>
>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message