第7章 故障排查

本章内容:

  • 故障排查工具介绍
  • 处理XceiverCount错误
  • 处理“打开的文件过多”错误
  • 处理“无法创建新本地线程”错误
  • 处理“HBase忽略HDFS客户端配置”问题
  • 处理ZooKeeper客户端连接错误
  • 处理ZooKeeper会话过期错误
  • 处理EC2上的HBase启动错误

每个人都希望自己的HBase集群能顺畅运行,但集群有时也会工作不正常,尤其是在没有对集群进行正确配置的情况下。本章介绍了在对运行异常的集群进行故障排查时有哪些可做的事情。

在开始排查集群故障之前,最好是先熟悉一下有哪些工具可帮助我们让集群恢复正常。有用的工具与对HBase及集群的深入了解同样重要。本章的第1节将介绍几种建议使用的工具和它们的用法示例。

问题通常都出现在那些基本设置失误的集群上。如果集群出现了问题,首先要做的就是分析主节点日志文件,因为主节点为集群提供了协调服务。如果幸运的话,只要在日志文件中找到一些警告或错误级的日志,就能找到问题的根本原因。区域服务器的日志文件是另一个需要检查的信息源。区域服务器的日志文件通常包含有一些与负载相关的错误的日志,因为区域服务器要为集群处理具体的数据存储和访问操作。

HBase运行在HDFS之上,它要依靠ZooKeeper来作为自己的协调服务。 有时,我们还需要检查一下HDFS、MapReduce和ZooKeeper的日志。在默认情况下,所有这些日志文件都存储在安装文件夹的logs目录下。当然,该位置可以在log4j属性文件中配置。

如果在日志中发现了错误信息,可以先在http://search-hadoop.com/上搜索一下在线资源,完全有可能之前已有人报告并讨论过这一错误了。这是一个很棒的HBase社区,你可以随时在这里寻求帮助。不过,在提问之前,别忘了先订阅一下HBase的邮件列表: ...

Get HBase管理指南 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.