我可以SSH到Hadoop集群,并且可以运行hbase
命令。但是我需要使用Phoenix JDBC驱动程序进行连接,该驱动程序需要HBase服务器的IP地址。
我很幸运地尝试了用于群集的IP地址。
这可能只是一个通用的Hadoop问题,但是IP地址在哪里配置?
答案 0 :(得分:0)
如果您知道hadoop群集的名称节点,则可以尝试对其进行ping操作或发送如下所示的curl请求
curl 'http://my-namenode-lv-101:50070/jmx?qry=Hadoop:service=NameNode,name=NameNodeStatus'
{
"beans" : [ {
"name" : "Hadoop:service=NameNode,name=NameNodeStatus",
"modelerType" : "org.apache.hadoop.hdfs.server.namenode.NameNode",
"SecurityEnabled" : false,
"NNRole" : "NameNode",
"HostAndPort" : "my-namenode-lv-101:8020",
"LastHATransitionTime" : 1561605051455,
"State" : "standby"
} ]
}
如果状态为Standby(备用),则这是当前的非活动节点,您必须尝试其他节点查找状态为“活动”的节点...以下示例:
curl 'http://my-namenode-lv-102:50070/jmx?qry=Hadoop:service=NameNode,name=NameNodeStatus'
{
"beans" : [ {
"name" : "Hadoop:service=NameNode,name=NameNodeStatus",
"modelerType" : "org.apache.hadoop.hdfs.server.namenode.NameNode",
"State" : "active",
"SecurityEnabled" : false,
"NNRole" : "NameNode",
"HostAndPort" : "my-namenode-lv-102:8020",
"LastHATransitionTime" : 1561605054944
} ]
}
答案 1 :(得分:0)
要连接到phoenix-hbase,请使用在群集中配置的 zookeeper地址,端口和 zookeeper.znode.parent配置值 。 (可以在您的hbase-site.xml文件中找到)