检查Phoenix服务器是否使用HBase正确设置

时间:2015-12-03 09:50:28

标签: hbase phoenix

我正在使用:

  • 单节点中的Hadoop 2.7.1
  • 带有HDFS的HBase 1.1.2,单节点
  • Phoenix 4.6

所有东西都在Docker上运行,在不同的容器上运行,使用Docker网络(https://docs.docker.com/engine/userguide/networking/dockernetworks/)。

我复制了jar:

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

运行HBase就可以了。

如果我在HBase容器中使用/usr/local/phoenix/sqlline.py localhost,则工作正常。但如果我从另一台机器运行同样的东西,我就会超时。

我可以看到HBase zookeeper正在获取连接:

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

使用Phoenix queryserver和./sqlline-thin.py(来自任何机器,甚至来自SQuirrel)都可以正常工作。

因此,我的问题是,我如何检查凤凰城是否能很好地安装HBase?

或许这只是Zookeeper的一个问题?

谢谢,

1 个答案:

答案 0 :(得分:0)

是Zookeeper /网络问题。

调试此类问题的一种好方法是使用zkCli工具或Zookeeper Rest API查询Zookeeper以获取key / hbase / master的值。