簡介
工作原理
OpenTSDB是一個(gè)時(shí)間序列數(shù)據(jù)庫,由一個(gè) Time Series Daemon (TSD) 和一系列命令行實(shí)用程序組成。與OpenTSDB交互主要通過運(yùn)行一個(gè)或者多個(gè) TSD 來實(shí)現(xiàn)。每個(gè) TSD 是獨(dú)立的。沒有master,沒有共享狀態(tài),所以你可以運(yùn)行盡可能多的 TSD 來處理工作負(fù)載。每個(gè) TSD 使用開源數(shù)據(jù)庫 HBase 或托管Google Bigtable服務(wù)來存儲(chǔ)和檢索時(shí)間序列數(shù)據(jù)。數(shù)據(jù)模式針對(duì)類似時(shí)間序列的快速聚合進(jìn)行了高度優(yōu)化,以最大限度的減少存儲(chǔ)空間。TSD 的用戶不需要直接訪問底層倉庫。你可以通過簡單的telnet樣式協(xié)議,HTTP API 或者簡單的內(nèi)置 GUI 與 TSD 進(jìn)行通信。所有的通信都發(fā)生在同一個(gè)端口上(TSD 通過查看接收到的前幾個(gè)字節(jié)來計(jì)算出客戶端的協(xié)議)。

安裝準(zhǔn)備
操作環(huán)境
操作系統(tǒng)為Centos7,CPU架構(gòu)為x86。
從 OpenTSDB下載地址 選擇合適的版本下載。這里我們以 opentsdb-2.3.0.rpm 為例。
部署HBase
我們使用HBase為OpenTSDB存儲(chǔ)和檢索時(shí)間序列數(shù)據(jù)提供服務(wù)??梢允褂肁pache HBase,或者使用其他Hadoop生態(tài)發(fā)行版。
這里,我們使用 紅象云騰 的CRH平臺(tái)中的HBase來提供服務(wù)。
部署CRH平臺(tái)的HDFS,ZOOKEEPER以及HBASE服務(wù)。詳情請(qǐng)參考CRH部署文檔。
安裝OpenTSDB
將opentsdb安裝包下載到本地:
wget https://github.com/OpenTSDB/opentsdb/releases/download/v2.3.0/opentsdb-2.3.0.rpm
執(zhí)行以下命令進(jìn)行安裝:
yum localinstall opentsdb-2.3.0.rpm
OpenTSDB主要目錄介紹:
- /etc/opentsdb —— 配置文件目錄
- /usr/share/opentsdb —— 應(yīng)用程序目錄
- /usr/share/opentsdb/bin —— "tsdb"啟動(dòng)腳本目錄
- /usr/share/opentsdb/lib —— Java JAR library
- /usr/share/opentsdb/plugins —— 插件和依賴
- /usr/share/opentsdb/static —— GUI 靜態(tài)文件
- /usr/share/opentsdb/tools —— 腳本和其他工具
- /var/log/opentsdb —— 日志存放目錄
安裝包安裝后包括一個(gè)init腳本 /etc/init.d/opentsdb ,此腳本可以 start,stop 和 restart OpenTSDB。簡單地調(diào)用 service opentsdb start 啟動(dòng)和 service opentsdb stop 關(guān)閉。
注意,在安裝之后,tsd 將不是運(yùn)行狀態(tài),所以你能夠編輯配置文件。編輯配置文件,然后啟動(dòng) TSD。
建表
如果你第一次用你的HBase實(shí)例運(yùn)行OpenTSDB,你需要?jiǎng)?chuàng)建必要的HBase表。使用 /usr/share/opentsdb/tools/create_table.sh 腳本可以輕松建表。執(zhí)行:
cd /usr/share/opentsdb/tools
env COMPRESSION=NONE HBASE_HOME=/usr/crh/current/hbase-master ./create_table.sh
COMPRESSION參數(shù)指定壓縮方式,可選值是 NONE,LZO,GZIP,或者 SNAPPY 。這個(gè)命令將在指定的HBase中創(chuàng)建四張表:tsdb, tsdb-uid, tsdb-tree 和 tsdb-meta。如果你只是評(píng)估OpenTSDB,現(xiàn)在就不用關(guān)心壓縮方式。在生產(chǎn)環(huán)境中,你要使用一個(gè)最合適的有效壓縮庫。
配置
編輯 /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 屬性值為以逗號(hào)分隔的要連接的zookeeper節(jié)點(diǎn)主機(jī)列表,格式如上。
其他配置信息請(qǐng)參考 配置說明
啟動(dòng)一個(gè) TSD
當(dāng)完成以上配置后,就可以啟動(dòng) TSD 了:
servie opentsdb start
如果 service opentsdb start 命令報(bào)錯(cuò),可以直接使用 /usr/share/opentsdb/etc/init.d/opentsdb start,其他命令亦同。
在成功啟動(dòng)之后,就可以通過 http://127.0.0.1:4242 (如果這個(gè)TSD運(yùn)行在你的本地機(jī)器上)訪問 TSD 的web界面。
總結(jié)
可以看出來,OpenTSDB的安裝還是很簡單的,當(dāng)前版本的配置屬性也不是很多,應(yīng)該很容易上手。但是,想要大規(guī)模使用起來,無論開發(fā)方面還是運(yùn)維方面,都需要對(duì)OpenTSDB有更多的了解。
這里,我們只簡單的介紹了OpenTSDB的工作原理以及安裝,更多相關(guān)內(nèi)容將在以后討論。
參考:
http://opentsdb.net/overview.html
http://opentsdb.net/docs/build/html/installation.html#id1
轉(zhuǎn)載請(qǐng)注明出處……