前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >OpenTSDB实现原理与安装

OpenTSDB实现原理与安装

作者头像
用户5252199
发布2022-04-18 18:39:46
7880
发布2022-04-18 18:39:46
举报
文章被收录于专栏:大数据技术博文

OpenTSDB是一种基于Hbase的分布式的,可伸缩的时间序列数据库

特别适合用来做监控类别的数据存储,它的底层是基于HBase,是一种以Metirc为单元的存储结果,可以实现大数据量下的毫秒级别的查询

  • OpenTSDB介绍

opentsdb是基于Hbase的时序数据库[时间序列数据库]。不具备通用性,主要针对具有时间特性和需求的数据,如监控数据、温度变化数据等,比较适合存储具有时间特性的数据,同时提供特定的工具进行查询等操作

  • OpenTSDB工作原理

OpenTSDB是一个时间序列数据库,由一个 Time Series Daemon (TSD) 和一系列命令行实用程序组成。

与OpenTSDB交互主要通过运行一个或者多个 TSD 来实现。每个 TSD 是独立的。没有master,没有共享状态,

可以运行尽可能多的 TSD 来处理工作负载。

每个 TSD 使用开源数据库 HBase 或托管Google Bigtable服务来存储和检索时间序列数据。数据模式针对类似时间序列的快速聚合进行了高度优化,以最大限度的减少存储空间。

TSD 的用户不需要直接访问底层仓库。直接通过telnet协议,HTTP API 或者简单的内置 GUI 与 TSD 进行通信,所有的通信都发生在同一个端口上(TSD 通过查看接收到的前几个字节来计算出客户端的协议)

  • OpenTSDB存储的核心概念
  1. Metric: 监控项,比如CPU、MEMORY等
  2. Tags: 标签,Tags由一系列的Tag组成,是一种K/V格式的数据。 标签是用来描述Metric,往往用来多维数据的展现(比如Prometheus中的数据格式)
  3. Value: Value表示的一个Metric的实际值
  4. Timestamp: 时间戳,用来描述Value是什么时候产生的。
  5. Data Point: 某个Metric在某个时间点的数值
  6. DataPoint包括以下几个部分: Metric、Tags、Value、Timestamp

可以理解为一个监控项就是一个DataPoint,最终保存到OpenTSDB的 就是由很多的DataPoint组成!

  • OpenTSDB安装

OpenTSDB是依赖于HBase进行数据存储的,所以在安装OpenTSDB组件之前,需要已经部署了HBase组件,在这里我是直接在大数据集群进行安装的,已经部署了HBase。

  • OpenTSDB下载:

https://github.com/OpenTSDB/opentsdb/releases

可以选择:

https://github.com/OpenTSDB/opentsdb/releases/download/v2.4.0/opentsdb-2.4.0.noarch.rpm

https://github.com/OpenTSDB/opentsdb/releases/download/v2.4.0/opentsdb-2.4.0.tar.gz

进行安装。

代码语言:javascript
复制
yum localinstall opentsdb-2.4.0.noarch.rpm

我这里选择的是通过rpm包方式进行安装

OpenTSDB安装之后的目录介绍:

  • /etc/opentsdb —— 配置文件目录
  • /usr/share/opentsdb —— 应用程序目录
  • /usr/share/opentsdb/bin —— "tsdb"启动脚本目录
  • /usr/share/opentsdb/lib —— Java JAR library
  • /usr/share/opentsdb/plugins —— 插件和依赖
  • /usr/share/opentsdb/static —— GUI 静态文件
  • /usr/share/opentsdb/tools —— 脚本和其他工具
  • /var/log/opentsdb —— 日志存放目录

安装包安装后OpenTSDB自动将启动/停止脚本加入了系统service中,可以直接通过service opentsdb start/stop 来操作。

具体的脚本存放位置:/etc/init.d/opentsdb

  • OpenTSDB配置

打开 /etc/opentsdb/opentsdb.conf 文件,配置HBase的地址和ZK地址

代码语言:javascript
复制
tsd.storage.hbase.zk_basedir = /hbase-unsecure
tsd.storage.hbase.zk_quorum = zk_url // 配置你的ZK地址

HBase创建对应表

第一次运行OpenTSDB实例的话,需要先创建HBase表,OpenTSDB已经给准备好了创建脚本,可以到

代码语言:javascript
复制
env COMPRESSION=NONE HBASE_HOME=/usr/hdp/2.6.1.0-129/hbase /usr/share/opentsdb/tools/create_table.sh

可以在Hbase 中看到表已经创建成功

启动opentsdb

代码语言:javascript
复制
service opentsdb start

启动报错,提示bash: servie: 未找到命令…

可以使用:

代码语言:javascript
复制
/usr/share/opentsdb/etc/init.d/opentsdb start 

再次进行启动。

启动之后,可以通过http://xx.xx.xx.xx:4242 访问 TSD 的web界面

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 大数据技术博文 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档