HBase 插件

HBase 是一种非关系型分布式开源数据库。如需了解详情,请访问 http://hbase.apache.org/

发现

即使未配置 HBase 插件,Monitoring 也能通过以下方式发现在 Google Cloud Platform 项目中运行的 HBase 服务:

  • 搜索实例名称中是否包括 hbase
  • 检查是否有通过防火墙规则开放至 60201 的端口

发现的服务显示在“HBase Services”页面上的 Resources 菜单中。您在实例上安装 Monitoring 代理并配置 HBase 插件后,Monitoring 将在“HBase Services”页面上填充相关资产和指标。

配置 Monitoring 以监控 HBase

安装 Monitoring 代理后,请按照以下说明在您的实例上配置 HBase 插件。如需了解如何从旧版 jmxtrans 监控功能升级,请参阅下面的从 jmxtrans 升级

前提条件

HBase 插件需要版本 5.5.0-257 或更高版本的 Monitoring 代理。要更新代理,请参阅升级代理

启用 HBase 监控插件

HBase 通过 JMX 监控。对于 HBase 0.98 及更高版本,以及 0.95 及更低版本,Monitoring 分别提供单独的配置进行监控。它还支持监控在独立配置(所有服务在同一端口上)上运行的 HBase 0.98 及更高版本。

在您的虚拟机实例上,根据您的 HBase 版本从 GitHub 配置代码库下载相应的配置文件,并将其放置在 /opt/stackdriver/collectd/etc/collectd.d/ 目录中:

0.98 及以上版本

hbase-098.conf 下载到 /opt/stackdriver/collectd/etc/collectd.d/ 中:

(cd /opt/stackdriver/collectd/etc/collectd.d/ && sudo curl -O https://raw.githubusercontent.com/Stackdriver/stackdriver-agent-service-configs/master/etc/collectd.d/hbase-098.conf)

0.98 及以上独立版本

hbase-098-standalone.conf 下载到 /opt/stackdriver/collectd/etc/collectd.d/ 中:

(cd /opt/stackdriver/collectd/etc/collectd.d/ && sudo curl -O https://raw.githubusercontent.com/Stackdriver/stackdriver-agent-service-configs/master/etc/collectd.d/hbase-098-standalone.conf)

0.95 及以下版本

hbase-095.conf 下载到 /opt/stackdriver/collectd/etc/collectd.d/ 中:

(cd /opt/stackdriver/collectd/etc/collectd.d/ && sudo curl -O https://raw.githubusercontent.com/Stackdriver/stackdriver-agent-service-configs/master/etc/collectd.d/hbase-095.conf)

如果您使用 Thrift,请参阅下面的启用 Thrift 监控

下载的插件配置文件假定您的 HBase Master 经过配置以便在端口 10101 上接受 JMX 连接,并且处于非独立模式的 HBase RegionServer 经过配置以便在端口 10102 上接受 JMX 连接。如果您以 root 身份使用其他 JMX 端口配置了 HBase,请修改该文件并按照说明更改 JMX 端口设置。

添加配置文件后,通过运行以下命令重启 Monitoring 代理:

sudo service stackdriver-agent restart

如需了解其他插件配置选项的信息,请参阅 collectd.org

启用 Thrift 监控

Thrift 是 HBase 常用的跨语言服务框架。

如果您希望监控 Thrift 指标,除了配置 HBase 插件外,还需将 hbase-thrift.conf 下载到 /opt/stackdriver/collectd/etc/collectd.d/ 中:

(cd /opt/stackdriver/collectd/etc/collectd.d/ && sudo curl -O https://raw.githubusercontent.com/Stackdriver/stackdriver-agent-service-configs/master/etc/collectd.d/hbase-thrift.conf)

监控的内容

HBase 插件监控以下指标:

  • blockCacheExpressCachingRatio:配置为在缓存中查看的读取的缓存命中率。
  • callQueueLength:RegionServer 呼叫队列的时间点。
  • compactionQueueLength:压缩队列的时间点长度。
  • memstoreSize:RegionServer 中所有 Memstore 大小的时间点总和。
  • slowHLogAppendCount:RegionServer 的慢速 HLog 追加写入次数。
  • usedHeap:RegionServer 使用的堆空间。

Monitoring 还会监控以下基本 JVM 指标:

  • 活跃的 JVM 线程数
  • JVM 堆内存使用量
  • JVM 非堆内存使用量
  • JVM 打开的文件描述符数
  • JVM 垃圾收集次数

如需了解详情,请参阅代理指标列表:HBase代理指标列表:JVM

从 jmxtrans 升级

如果您当前使用旧版 jmxtrans 监控功能运行虚拟机,则需要对所有基于 Java 的插件进行升级,这些插件是 CassandraHBaseKafkaTomcat。在升级这些插件并重启 stackdriver-agent 服务之后,您可以关闭 jmxtrans 进程。然后,您可以通过移除 /mnt/jmxtrans 树和 /etc/init.d/jmxtrans 脚本(如果存在该脚本)来卸载 jmxtrans

此页内容是否有用?请给出您的反馈和评价:

发送以下问题的反馈:

此网页
Stackdriver Monitoring
需要帮助?请访问我们的支持页面