问题现象:

使用hbase shell 连接报如下问题:

2019-10-09 10:37:18,855 ERROR [main] zookeeper.RecoverableZooKeeper: ZooKeeper exists failed after 4 attempts
2019-10-09 10:37:18,856 WARN [main] zookeeper.ZKUtil: hconnection-0x6ef784bf0x0, quorum=xxx:2181,xxx:2181,xxx:2181, baseZNode=/hbase Unable to set watcher on znode (/hbase/hbaseid)

hbase 日志里面报错日志如下:

2019-10-09 09:26:58,701 WARN [regionserver/xxx/192.168.1.8:16020-longCompactions-1569222224980-SendThread(xxx:2181)] zookeeper.ClientCnxn: Session 0x0 for server xxx/192.168.1.24:2181, unexpected error, closing socket connection and attempting reconnect
java.io.IOException: Connection reset by peer

解决过程:

由上诉问题现象,可以发现是由于zookeeper的问题,先尝试看一下zookeeper是否挂掉。

1、使用telnet  host or ip   2181 连接测试

# telnet xxx 2181
Trying 192.168.1.23...
Connected to xxx.
Escape character is '^]'.
Connection closed by foreign host.

发现连接不过去,远程服务器或者远程程序关闭了该连接

2、连接到zookeeper的节点服务器查看socket连接数

:~$ netstat -anl|grep 2181|grep -i '192.168.1.7'|grep ESTABLISHED|wc -l
1
:~$ netstat -anl|grep 2181|grep -i '192.168.1.8'|grep ESTABLISHED|wc -l
60

上诉的192.168.1.8这台机器就算hbase报错的服务器,可以发现这台机器在当前的zookeeper节点保持的会话是60个,这远远没有达到系统的限制

3、修改hbase的zookeeper连接限制

<property>
<name>hbase.zookeeper.property.maxClientCnxns</name>
<value></value> #默认是30,修改完以后,重启regioserver,但是没什么用
property>

4、修改zookeeper下的zoo.cfg文件

#maxClientCnxns=60     这个值跟刚才查看的ESTABLISHED连接数量刚好一致
取消掉注释,修改为150,重启zookeeper

问题解决

hbase 由于zookeeper问题导致连接失败问题的更多相关文章

  1. Nginx反代,后端一个IP绑定多个SSL证书,导致连接失败之解决方法:HTTPS和SNI扩展

    默认:SSL协议进行握手协商进行连接的时候,默认是不会发送主机名的,也就是是以IP的形式来进行https连接握手协商的,这就导致一个问题,当一台服务器上有多个虚拟主机使用同一个IP的时候, Nginx ...

  2. jmeter分布式测试远程连接失败

    jmeter分布式部署其实很简单.但今天测试的时候发现了一个坑,远程连接一直失败. 原因:服务器上部署了slave,而这台服务器上有多个网卡.举个例子:ip分别为:192.168.100.6,10.1 ...

  3. HBase的Java Api连接失败的问题及解决方法

    分布式方式部署的HBase,启动正常,Shell操作正常,使用HBase的Java Api操作时总是连接失败,信息如下: This server is in the failed servers li ...

  4. Reporting Service 2008 “报表服务器数据库内出错。此错误可能是因连接失败、超时或数据库中磁盘空间不足而导致的”

    今天遇到了两个关于Reporting Service的问题, 出现问题的环境为Microsoft SQL Server 2008 R2 (SP2) - 10.50.4000.0 (X64) .具体情况 ...

  5. 远程桌面连接一台关联无线的电脑(A)时,A电脑无线总是断开导致远程桌面连接失败

    1. 我的环境: 两台电脑,分别记为PC1和PC2,PC1有线或者无线连在路由器上,PC2无线连在同一个路由器上.(当然,我的PC1是win10系统,PC2是win7系统) 2.  PC1只要一远程连 ...

  6. 域账号修改后,导致vs中的git连接失败

    域账号修改后,导致vs中的git连接失败, fatal: Authentication failed for https://blog.csdn.net/qq_34665539/article/det ...

  7. idea创建springboot工程,总出现响应超时问题,或者无法连接http://start.spring.io导致创建失败

    问题描述如下: idea创建springboot工程,总出现响应超时问题,或者无法连接http://start.spring.io导致创建失败 从我出现此类问题几次的解决方案 依照解决效率分为一下三种 ...

  8. 记因为电脑名更改而导致sql server一直连接失败

    安装的是sql server2016.原先一直用的好好的,直到有一天觉得电脑名称,嗯要改下.改完后,嗯,就忘了. 然后打开sql server,连接失败.一开始以为是sql server配置管理器中的 ...

  9. 【HBase】zookeeper在HBase中的应用

    转自:http://support.huawei.com/ecommunity/bbs/10242721.html Zookeeper在HBase中的应用 HBase部署相对是一个较大的动作,其依赖于 ...

随机推荐

  1. 安卓自定义View基础 --坐标系,角度弧度,颜色

    转自:https://www.gcssloop.com/customview/CustomViewIndex/ 1.坐标系 2.角度弧度 3.颜色 一.屏幕坐标系和数学坐标系的区别 由于移动设备一般定 ...

  2. 【开发笔记】- Java中关于HashMap的元素遍历的顺序问题

    今天在使用如下的方式遍历HashMap里面的元素时 for (Entry<String, String> entry : hashMap.entrySet()) { MessageForm ...

  3. Objective-C中的@dynamic 、@synthesize

    Objective-C中的@dynamic 一.@dynamic与@synthesize的区别 @property有两个对应的词,一个是@synthesize,一个是@dynamic.如果@synth ...

  4. MongoDB 目录分析、基础命令、参数设置

    目录分析 1.整体目录 以msi默认的data.log路径安装,才会有data.log文件夹. 2.bin目录 3.log目录 基础命令 1.服务器端基础命令 net  start  MongoDB  ...

  5. 学习操作系统和Linux内核的新体会

    算起来是第三次看内核了吧,要从源码的细节中爬出来: (1)先拎清楚主要的数据结构,就把握住了骨架: (2)再看每个系统调用的功能的流程是如何围绕上述数据结构展开.举个栗子,块设备驱动层的主要数据结构有 ...

  6. 【OGG】OGG简单配置双向复制(三)

    [OGG]OGG简单配置双向复制(三) 一.1  BLOG文档结构图 一.2  前言部分 一.2.1  导读 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O ...

  7. 通过request获取服务器相对路径及绝对路径

    一. String scheme = request.getScheme();//http String serverName = request.getServerName();//localhos ...

  8. VMware15.5版本安装CentOS7

    VMware15.5版本安装CentOS7 一.在VMware15.5中新建虚拟机 1.打开VMware,在首页面选择创建新的虚拟机. 2.新建虚拟机向导,选择典型配置.3.选择稍后安装操作系统.4. ...

  9. 详解shell脚本括号区别--$()、$「 」、$「 」 、$(()) 、「 」 、「[ 」]

    概述 很多时候我们在写shell脚本的时候总会碰到不同的括号,那么这些不同的括号有什么区别呢? $() 用于命令交换 说明:平时脚本用的``符号也是用于命令交换的哦,和$() 的操作是一样的 ${ } ...

  10. varnish加速web

    varnish主要功能是代理服务器和缓存,和nginx代理一样可以反向代理web服务器.但是varnish不能作为web服务器.但是它的优点是可以将访问过的网站还存在代理服务器上,以便于提升web的访 ...