数据采集:
TCollector是1个客户端进程,它主要是收集具体的collectors收集到的监控数据,然后负责将数据推送到TSDB;
TCollector会处理和TSD的连接和协议处理,具体的collectors负责收集数据即可
在一个服务器上部署1个TCollector之后,它会把这些collectors启动起来,collectors收集到监控数据之后,输出到stdout,TCollector接收后推送到OpenTSDB
OpenTSDB架构图:
Servers:就是服务器了,上面的C就是指Collector,可以理解为OpenTSDB的agent,通过Collector收集数据,推送数据;
TSD:TSD是对外通信的无状态的服务器,Collector可以通过TSD简单的RPC协议推送监控数据;另外TSD还提供了一个web UI页面供数据查询;另外也可以通过脚本查询监控数据,对监控数据做报警
收到监控数据后,是通过AsyncHbase这个库来将数据写入到HBase;AsyncHbase是完全异步、非阻塞、线程安全的Hbase客户端,使用更少的线程、锁以及内存,可以提供更高的吞吐量,特别对于大量的写操作。
1)Metric:即平时我们所说的监控项。譬如上面的CPU使用率
2)Tags:就是一些标签,在OpenTSDB里面,Tags由tagk和tagv组成,即tagk=takv。标签是用来描述Metric的,譬如上面为了标记是服务器A的CpuUsage,tags可为hostname=qatest
3)Value:一个Value表示一个metric的实际数值,譬如上面的99%
4)Timestamp:即时间戳,用来描述Value是什么时候的;譬如上面的21:00
5)Data Point:即某个Metric在某个时间点的数值。
OpenTSDB是以HBase作为存储的
http://www.jianshu.com/p/0bafd0168647
http://www.jianshu.com/p/0bafd0168647
OpenTSDB是一个分布式的、可伸缩的时间序列数据库。它的特点是能够提供最高毫秒级精度的时间序列数据存储,能够长久保存原始数据并且不失精度。它拥有很强的数据写入能力,支持大并发的数据写入,并且拥有可无限水平扩展的存储容量
opentsdb域名:http://zbx.uxin001.com:4242/
opentsdb_list: 192.168.3.51:4242 192.168.3.52:4242 192.168.3.53:4242
路径:/data/cloudera/opentsdb/
hbash:/etc/hbase/conf.cloudera.hbase/hbase-site.xml
tsdb:存储数据点
tsdb-uid:存储name和uid的映射关系
grafana图形展示和报警:
http://gfa.uxin001.com:3000/datasources/edit/2
配置数据源:
1.10是slb 理解为opentsdb即可
获取meric 图形展示:
报警规则: