小 T 導讀:TDengine,是濤思數據面對高速增長的物聯網大數據市場和技術挑戰推出的創新性的大數據處理産品,除卻讀寫性能、存儲壓縮能力強大之外,還有安裝簡單、操作難度低等優勢。今天我們就從常見的使用方式開始,給大家梳理一下TDengine的安裝配置過程。
目前,TDengine服務端僅支持Linux X64系統,推薦CentOS 7.9 和 Ubuntu 18.04。硬件平台支持X64和arm64。 客戶端支持Windows X64、Linux X64。mac版仍在開發中,未來将提供有限功能,用于開發環境。
下面,我們來分别從四種使用模式的角度探讨一下TDengine的安裝部署。
1.本地使用單機版TDengine:
第一步:下載安裝包:下載 | Taos Data,一鍵式安裝:博客: TDengine多種安裝包的安裝和卸載 | 濤思數據
第二步:安裝成功後,使用 systemctl start taosd命令來啟動 TDengine 的服務進程。接下來使用systemctl status taosd命令檢查服務是否正常工作。
現在,你就可以通過 TDengine 的命令行程序 taos 來訪問并體驗 TDengine了。
2.遠程客戶端連接使用單機版TDengine:
第一步,分别下載安裝客戶端和服務端(請确保客戶端和服務端版本号保持一緻):下載 | Taos Data,安裝:博客: TDengine多種安裝包的安裝和卸載 | 濤思數據
第二步,在服務端的/etc/taos/taos.cfg文件中配置正确的fqdn參數(請避免使用localhost等容易本身就在客戶端機器hosts文件中存在的名字),在客戶端的hosts文件(或dns服務中)配置這個參數值以及對應的正确ip。
第三步,打開6030-6040的TCP UDP端口以及6041,6042的TCP端口。
最後, 使用systemctl start taosd systemctl status taosd命令确保服務正常啟動後,在客戶端使用taos -h fqdn(或者ip)直接連上服務端正常使用。
可以看出,和本機試跑TDengine相比起來,TDengine服務端與客戶端分離的情況下多出了兩個步驟。本着知其然知其所以然的精神,強烈建議大家了解一下下文中TDengine在安裝部署模塊的設計。
上述兩種環境的配置差異可以簡單歸納為這個邏輯:
即在網絡環境正常的大前提下,可以幹擾到TDengine客戶端連接的隻有上面這兩種因素——1.端口配置;2.FQDN機制。
我們先來說端口配置規則:
TDengine要求數據庫服務端服務器至少要保證端口:6030 - 6042的TCP和UDP端口都是開放的,其各個端口的用途如下:
可以看到,6030-6034端口負責客戶端和服務端的通信。而6035-6040端口存在多節點集群之間的通訊和數據同步。
但是,為了覆蓋單機和集群兩種場景,我們要求大家開放6030-6040的TCP UDP端口以及6041,6042的TCP端口。而為了最大幅度降低意外情況的發生,我們強烈建議先關閉防火牆,等環境搭建完畢之後,再來配置端口。
由于在單機試用TDengine的情況下是沒有防火牆參與的,所以我們才會不需要配置TDengine端口開放規則。
第二個因素則是FQDN:
FQDN的全稱是Fully Qualified Domain Name。與域名相對,我們暫且翻譯成全域名比較好理解一點。
由于上一期文章的鋪墊,關于TDengine的FQDN相關原理和配置問題可以直接通過該篇文章來獲取——如何徹底搞懂TDengine的fqdn概念?這一篇文章就夠了 。
正因為默認的fqdn參數值是本機的hostname,所以,在單機試用情況下,用戶才可以無需任何配置直接使用客戶端訪問TDengine。
3.遠程客戶端連接使用集群版TDengine:
首先我們需要搭建一個可用的集群,這個環節請大家嚴格根據文檔 | 濤思數據的指導進行操作,可确保萬無一失。
最後,在集群搭建完畢後,一定要确保客戶端的hosts文件中添加了所有的集群節點的ip和fqdn參數值,确保它可以正确解析每個節點的ip。這樣客戶端就可以順利地訪問并使用TDengine的集群了。
四.最後,我們梳理一下連接器的使用
TDengine提供了豐富的應用程序開發接口,其中包括C/C 、Java、Python、Go、Node.js、C# 、Rust、RESTful 等,便于用戶快速開發應用。對于他們來說,各種連接器能否順利訪問并使用TDengine才是他們最關注的問題。
官方文檔上說:“當在另一台服務器使用連接器(除RESTful外)訪問 TDengine 數據庫的時候,我們需要安裝與服務端相同版本号的客戶端來使應用驅動(Linux系統中文件名為libtaos.so,Windows系統中為taos.dll)被安裝在系統中。否則,在連接時就會産生“無法找到相應庫文件”的錯誤。”
因此,大家一定不要忽略這一點——客戶端正常訪問并使用TDengine才是你的應用可以順利使用TDengine的前提。
有些不熟悉的用戶在安裝完客戶端就以為萬事大吉,然後就去弄應用的連接配置了。有的用戶則是使用taos連接命令看一下,又用一下show databases之類的命令發現沒問題,就去弄應用的連接配置了。以上這兩種都是不嚴謹的,在測試中一定要确保select以及insert操作的順利返回預期結果,如:
create table test (ts timestamp, value int ); insert into test values (now,1); select * from test;
如果驗證沒有成功,請返回前文根據描述繼續排查。如果仍然無效,請通過微信技術交流群,或者github上聯系我們,我們會盡最大的努力幫助大家。衷心希望大家能對TDengine有一個清晰的入門理解,畢竟好的開始是成功的一半。
驗證成功後,有應用程序使用需求的用戶就可以移步到文檔 | 濤思數據的《TDengine連接器》章節,根據需要找到相應連接器的正确配置方式。
,