一. Region Server 意外退出
1.1 背景
报错信息如下:
ERROR org.apache.hadoop.hbase.regionserver.HRegionServer: ZooKeeper session expired
之后, regionserver就退出了。
对于一个 reigonserver, 它需要将自己注册到 Zookeeper 上 master 的 Znode 上。这样的目的,是当master 宕机或者新的master启动的时候,能及时收到通知。对于 regionserver来说,维持和 Zookeeper 的联系是非常重要的。因为 regionserver 需要定期的将心跳包发给 master server。如果 regionserver 不能及时的知道 master 的改变,就会导致 regionserver 和 master 失去联系,而成为一个僵死的进程。
于是,在默认情况下,regionserver 遇到这种情况,就选择退出。
1.2 原因
为什么 regionserver 和Zookeeper的session expired? 可能的原因有
- 网络不好