OpenTSDB简介及安装

本文介绍了时间序列数据库OpenTSDB的基本概念、工作原理及安装配置流程。OpenTSDB利用HBase存储时间序列数据,提供了丰富的API接口进行数据交互。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


简介

工作原理

OpenTSDB是一个时间序列数据库,由一个 Time Series Daemon (TSD) 和一系列命令行实用程序组成。与OpenTSDB交互主要通过运行一个或者多个 TSD 来实现。每个 TSD 是独立的。没有master,没有共享状态,所以你可以运行尽可能多的 TSD 来处理工作负载。每个 TSD 使用开源数据库 HBase 或托管Google Bigtable服务来存储和检索时间序列数据。数据模式针对类似时间序列的快速聚合进行了高度优化,以最大限度的减少存储空间。TSD 的用户不需要直接访问底层仓库。你可以通过简单的telnet样式协议,HTTP API 或者简单的内置 GUI 与 TSD 进行通信。所有的通信都发生在同一个端口上(TSD 通过查看接收到的前几个字节来计算出客户端的协议)。

安装准备

操作环境

操作系统为Centos7,CPU架构为x86。
OpenTSDB下载地址 选择合适的版本下载。这里我们以 opentsdb-2.3.0.rpm 为例。

部署HBase

笔者使用HBase为OpenTSDB存储和检索时间序列数据提供服务。可以使用Apache HBase,或者使用其他Hadoop生态发行版。

这里,笔者使用 红象云腾 的CRH平台中的HBase来提供服务。 部署CRH平台的HDFS,ZOOKEEPER以及HBASE服务。详情请参考CRH部署文档。

安装OpenTSDB

将opentsdb安装包下载到本地:

wget https://github.com/OpenTSDB/opentsdb/releases/download/v2.3.0/opentsdb-2.3.0.rpm
复制代码

执行以下命令进行安装:

yum localinstall opentsdb-2.3.0.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 —— 日志存放目录

安装包安装后包括一个init脚本 /etc/init.d/opentsdb ,此脚本可以 startstoprestart OpenTSDB。简单地调用 service opentsdb start 启动和 service opentsdb stop 关闭。

注意,在安装之后,tsd 不是运行状态,所以你能够编辑配置文件。编辑配置文件,然后启动 TSD。

建表

如果你第一次用你的HBase实例运行OpenTSDB,你需要创建必要的HBase表。使用 /usr/share/opentsdb/tools/create_table.sh 脚本可以轻松建表。执行:

cd /usr/share/opentsdb/tools
env COMPRESSION=NONE HBASE_HOME=/usr/crh/current/hbase-master ./create_table.sh 
复制代码

COMPRESSION参数指定压缩方式,可选值是 NONE,LZO,GZIP,或者 SNAPPY 。这个命令将在指定的HBase中创建四张表:tsdb, tsdb-uid, tsdb-tree 和 tsdb-meta。如果你只是评估OpenTSDB,现在就不用关心压缩方式。在生产环境中,你要使用一个最合适的有效压缩库。

配置

编辑 /etc/opentsdb/opentsdb.conf 配置文件:

tsd.storage.hbase.zk_basedir = /hbase-unsecure
tsd.storage.hbase.zk_quorum = xwd1:2181,xwd2:2181,xwd3:2181
复制代码

提示:tsd.storage.hbase.zk_basedir 属性值参考 HBase 属性 zookeeper.znode.parent 的值;tsd.storage.hbase.zk_quorum 属性值为以逗号分隔的要连接的zookeeper节点主机列表,格式如上。

其他配置信息请参考 配置说明

启动一个 TSD

当完成以上配置后,就可以启动 TSD 了:

servie opentsdb start
复制代码

如果 service opentsdb start 命令报错,可以直接使用 /usr/share/opentsdb/etc/init.d/opentsdb start,其他命令亦同。

在成功启动之后,就可以通过 http://127.0.0.1:4242 (如果这个TSD运行在你的本地机器上)访问 TSD 的web界面。

小结

可以看出来,OpenTSDB的安装还是很简单的,当前版本的配置属性也不是很多,应该很容易上手。但是,想要大规模使用起来,无论开发方面还是运维方面,都需要对OpenTSDB有更多的了解。

这里,笔者只简单的介绍了OpenTSDB的工作原理以及安装,更多相关内容将在以后讨论。

参考:
opentsdb.net/overview.ht…
opentsdb.net/docs/build/…


原创不易,与君共勉!

文章最新地址

转载于:https://juejin.im/post/5b0bbe6b6fb9a009d54c0bca

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值