1
votes

I am using:

  • Hadoop 2.7.1 in single node
  • HBase 1.1.2 with HDFS, single node
  • Phoenix 4.6

Everything is running with Docker, on separate containers, with Docker network (https://docs.docker.com/engine/userguide/networking/dockernetworks/).

I copied the jar:

cp /usr/local/phoenix/phoenix-4.6.0-HBase-1.1-server.jar /usr/local/hbase/lib/

Running HBase is OK.

If I am using /usr/local/phoenix/sqlline.py localhost in HBase container, is working fine. But if I am running same thing from another machine I got a timeout.

I can see HBase zookeeper is getting the connection:

hbase_1 | 2015-12-03 09:45:46,702 INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181] server.NIOServerCnxnFactory: Accepted socket connection from /192.168.1.53:50672 hbase_1 | 2015-12-03 09:45:46,702 INFO [NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181] server.ZooKeeperServer: Client attempting to establish new session at /192.168.1.53:50672 hbase_1 | 2015-12-03 09:45:46,705 INFO [SyncThread:0] server.ZooKeeperServer: Established session 0x151673a1af20017 with negotiated timeout 40000 for client /192.168.1.53:50672

It's working very fine using the Phoenix queryserver and ./sqlline-thin.py (from any machine, even from SQuirrel).

Hence my question, how can I check that Phoenix is well setup with HBase?

Or maybe it's just an issue with Zookeeper?

Thanks,

1
It was a network issue, zookeeper sends the local Docker hostname as HBase hostname, so I couldnot find it. But the error was not very clear...Thomas Decaux
And how exactly did you fix that? Any hints? I'm having a similar problem, and I'm not knowledgeable enough on Zookeeper, so any help would be appreciated.rsenna

1 Answers

0
votes

Was a Zookeeper / network issue.

A good way to debug this kind of issue is to query Zookeeper to get the value of key /hbase/master, using zkCli tool or Zookeeper Rest API.