Zeppelin 监控 - Qihoo360/zeppelin GitHub Wiki

应用监控

prometheus定时采集 meta 节点上 zep-exporter 的信息。 zep-exporter的信息来自zp_checkup和zp_info对zeppelin集群信息的定时采集

依赖

主要依赖zeppelin-client中的zp_check和zp_info两个工具

定时获取集群状态及信息

编译

git clone https://github.com/Qihoo360/zeppelin-client
cd zeppelin-client/third
git submodule init
git submodule update
cd ..
make
cp output/zp_check /usr/bin
cp output/zp_info /usr/bin

zep-exporter 使用方法

编译

go get github.com/tinytub/zep-exporter
cd $GOPATH/src/github.com/tinytub/zep-exporter
go build

数据采集

default read zp_checkup and zp_info generated json file

默认读取zp_checkup和zp_info生成的json文件

通过crontab定时执行

$ /etc/cron.d/zpcheck

* * * * * root /usr/bin/zp_checkup -j /tmp/checkup_json_result
* * * * * root sleep 30; /usr/bin/zp_checkup  -c /usr/local/zep-server/conf/meta.conf -j /tmp/checkup_json_result
* * * * * root /usr/bin/zp_info -i all -j /tmp/info_json_result
* * * * * root sleep 30; /usr/bin/zp_info -i all  -c /usr/local/zep-server/conf/meta.conf -j /tmp/info_json_result

#####exporter 进程启动

./zep-exporter json

也可以直接通过systemd或init.d启动

监控数据获取
curl localhost:9128/metrics
prometheus 配置参考
 scrape_configs:
   - job_name: 'search-zep-exporter'
     scrape_interval: 30s
     static_configs:
       - targets: ['10.10.10.10:9128']
         labels:
           group: "shbt"
           service: "zeppelin"
     metric_relabel_configs:
     - source_labels: [ __name__ ]
       regex: '^go_.*'
       action: drop

当然亦可以选择服务发现方式注册exporter

监控项 监控间隔 监控项 异常情况
集群健康状态 30s zeppelin_Healthy
集群epoch计数 30s zeppelin_Epoch
meta 节点在线数量 30s zeppelin_meta_count
node 节点总数 30s zeppelin_node_count
node在线数量 30s zeppelin_NodeUp
node离线数量 30s zeppelin_NodeDown
各table 用量 30s zeppelin_TableUsed
各table 剩余量 30s zeppelin_TableRemain
各table 查询次数 30s zeppelin_TableQuery
各table QPS 30s zeppelin_TableQPS
table总数 30s zeppelin_TableCount
table partition数量 30s zeppelin_Pcount
Partition lagging 30s zeppelin_Lagging
Partition inconsistent 30s zeppelin_Inconsistent
Partition incomplete 30s zeppelin_Incomplete
Partition Dismatch 30s zeppelin_Dismatch