Java API远程连接服务器hbase报错:Connection refused: no further information: localhost/127.0.0.1:16000解决

3 篇文章 0 订阅

一 前言

前面两篇博客Linux 下伪分布式方式安装hadoop-2.9.2Linux伪分布式模式安装hbase-2.2.4
介绍了如何在linux下伪分布式的方式安装hadoop和hbase。接下来就是用java api 访问进行CRUD操作了。java api 用的是hbase-client-2.2.4。代码就不贴了,网上很多。结果就报错了,害~
错误如下:

org.apache.hbase.thirdparty.io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: localhost/127.0.0.1:16000

二 解决过程

于是乎网上搜索解决办法,找了一阵发现需要做以下修改:
假设你安装hbase的服务器的ip是192.168.66.23,hostname是test-hbase
(1)在本地winsows的hosts文件 C:\Windows\System32\drivers\etc 中添加

192.168.66.23   test-hbase

(2)linux /etc/hosts中添加

192.168.66.23   test-hbase

(3)linux中输入hostname命令查看linux 的hostname,如果不是test-hbase,则输入命令

hostname test-hbase

临时改变linux服务器的hostname
(4)重启hbase,进行连接,还是报上面的错误。
真是一顿操作猛如虎…
网上继续寻找解决方法。

三 最终篇

输入命令

netstat -anptl | grep 16000

结果如下
在这里插入图片描述
16000端口绑定了本地ip 127.0.0.1
问题的根源找到了!
解决办法:
hbase的配置文件hbase-site.xml中添加配置

<property>
<name>hbase.master.ipc.address</name>
<value>0.0.0.0</value>
</property>
<property>
<name>hbase.regionserver.ipc.address</name>
<value>0.0.0.0</value>
</property>

指定ip,然后重启hbse,
在这里插入图片描述
java api调用成功。

  • 15
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值