java连接HBase,连接不上报错can not resolve问题及解决

这篇文章主要介绍了java连接HBase,连接不上报错cannotresolve问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

java连接HBase,连接不上报错can not resolve

[INFO] [2020-06-23 21:30:16][org.apache.hadoop.hbase.client.RpcRetryingCaller - 165]Call exception, tries=10, retries=35, started=47508 ms ago, cancelled=false, msg=java.net.UnknownHostException: can not resolve hserver1,16000,1592917603843, details=, see https://s.apache.org/timeout
[INFO] [2020-06-23 21:30:28][org.apache.hadoop.hbase.client.RpcRetryingCaller - 165]Call exception, tries=11, retries=35, started=59772 ms ago, cancelled=false, msg=java.net.UnknownHostException: can not resolve hserver1,16000,1592917603843, details=, see https://s.apache.org/timeout
[INFO] [2020-06-23 21:30:50][org.apache.hadoop.hbase.client.RpcRetryingCaller - 165]Call exception, tries=12, retries=35, started=82155 ms ago, cancelled=false, msg=java.net.UnknownHostException: can not resolve hserver1,16000,1592917603843, details=, see https://s.apache.org/timeout
[INFO] [2020-06-23 21:31:13][org.apache.hadoop.hbase.client.RpcRetryingCaller - 165]Call exception, tries=13, retries=35, started=104512 ms ago, cancelled=false, msg=java.net.UnknownHostException: can not resolve hserver1,16000,1592917603843, details=, see https://s.apache.org/timeout

hserver1是我HBase的主机名,但是我的代码中并为出现该名词。

出现这种错误很有可能是hosts里面没有添加HBase的地址。

将HBase的ip地址写在hosts中便可正常。

添加之后java就可以正常连接HBase了

java连接Hbase异常

java连接Hbase出现如下异常:

org.apache.hadoop.hbase.MasterNotRunningException:java.net.unknownHostException:can not resolve hdp14,16000

问题原因

hbase的配置文件中hbase-site.xml里面关于 hbase.zookeeper.quorum 这个配置,使用的不是ip,而是hosts映射地址,导致无法解析诸如hdp14之类的主机名

解决办法

把hbase所在主机的hosts文件中的配置,拷贝到java代码运行环境中。

如果java代码是在本地启动的,就把hosts中的映射地址放在windows中的C:\WINDOWS\system32\drivers\etc\hosts里面,如果java代码是在linux服务上启动的,就把hosts的映射地址放在 /etc/hosts中。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程学习网。

本文标题为:java连接HBase,连接不上报错can not resolve问题及解决

基础教程推荐