我正在尝试通过Phoenix连接HBase群集。首先,我已将Phoenix客户端和查询服务器罐文件复制到HMASTER和HREGION LIB文件夹并重新启动HBase服务。
服务器 - 通过/BIN/QUERYSERVER.PY启动Phoenix服务器。它运行正常。
客户 - AvaticaClientRuntimeException: Remote driver error: RuntimeException: java.sql.SQLException: No suitable driver found for "http://hacluster:8764".
日志详细信息
hbase-site.xml高可用群集的文件配置
<property>
<name>hbase.master</name>
<value>activenamenode:60000</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://hacluster/HBase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>zk1,zk2,zk3</value>
</property>
<property> <name>hbase.rpc.timeout</name>
<value>60000</value>
<property>
它在伪节点群集上工作。但是在HA启用HADOOP群集中失败。
在ha群集中,我设置了 hbase-site.xml
file中的 hbase.rootdir
属性的活动namenode url。
在错误消息: No suitable driver found for http...
中列出了问题。不知何故,您正在使用HTTP连接字符串。我不知道Avatica是如何专门工作的,但是我假设您想要一个JDBC连接字符串,这是连接到菲尼克斯之类的最常见方法。
例如: jdbc:phoenix:m1.hdp.local,m2.hdp.local,d1.hdp.local:2181:/hbase-unsecure
请参阅https://streever.atlassian.net/wiki/spaces/hadoop/pages/11993090/phoenix jdbc client setup for in"更多详细信息)。