單機(jī)版部署指導(dǎo)
單機(jī)版部署指導(dǎo)
本章將介紹如何啟動(dòng)IoTDB單機(jī)實(shí)例,IoTDB單機(jī)實(shí)例包括 1 個(gè)ConfigNode 和1個(gè)DataNode(即通常所說(shuō)的1C1D)。
1. 注意事項(xiàng)
安裝前請(qǐng)確認(rèn)系統(tǒng)已參照系統(tǒng)配置準(zhǔn)備完成。
部署時(shí)推薦優(yōu)先使用
hostname進(jìn)行IP配置,可避免后期修改主機(jī)ip導(dǎo)致數(shù)據(jù)庫(kù)無(wú)法啟動(dòng)的問(wèn)題。設(shè)置hostname需要在目標(biāo)服務(wù)器上配置/etc/hosts,如本機(jī)ip是192.168.1.3,hostname是iotdb-1,則可以使用以下命令設(shè)置服務(wù)器的 hostname,并使用hostname配置IoTDB的cn_internal_address、dn_internal_address、dn_rpc_address。echo "192.168.1.3 iotdb-1" >> /etc/hosts部分參數(shù)首次啟動(dòng)后不能修改,請(qǐng)參考下方的【參數(shù)配置】章節(jié)進(jìn)行設(shè)置
無(wú)論是在linux還是windows中,請(qǐng)確保IoTDB的安裝路徑中不含空格和中文,避免軟件運(yùn)行異常。
請(qǐng)注意,安裝部署(包括激活和使用軟件)IoTDB時(shí)需要保持使用同一個(gè)用戶(hù)進(jìn)行操作,您可以:
- 使用 root 用戶(hù)(推薦):使用 root 用戶(hù)可以避免權(quán)限等問(wèn)題。
- 使用固定的非 root 用戶(hù):
- 使用同一用戶(hù)操作:確保在啟動(dòng)、激活、停止等操作均保持使用同一用戶(hù),不要切換用戶(hù)。
- 避免使用 sudo:盡量避免使用 sudo 命令,因?yàn)樗鼤?huì)以 root 用戶(hù)權(quán)限執(zhí)行命令,可能會(huì)引起權(quán)限混淆或安全問(wèn)題。
推薦部署監(jiān)控面板,可以對(duì)重要運(yùn)行指標(biāo)進(jìn)行監(jiān)控,隨時(shí)掌握數(shù)據(jù)庫(kù)運(yùn)行狀態(tài),監(jiān)控面板可以聯(lián)系商務(wù)獲取,部署監(jiān)控面板步驟可以參考:監(jiān)控面板部署。
在安裝部署數(shù)據(jù)庫(kù)前,可以使用健康檢查工具檢測(cè) IoTDB 節(jié)點(diǎn)運(yùn)行環(huán)境,并獲取詳細(xì)的檢查結(jié)果。 IoTDB 健康檢查工具使用方法可以參考:健康檢查工具。
2. 安裝步驟
2.1 前置檢查
為確保您獲取的IoTDB企業(yè)版安裝包完整且正確,在執(zhí)行安裝部署前建議您進(jìn)行SHA512校驗(yàn)。
準(zhǔn)備工作:
- 獲取官方發(fā)布的 SHA512 校驗(yàn)碼:發(fā)布?xì)v史文檔中各版本對(duì)應(yīng)的"SHA512校驗(yàn)碼"
校驗(yàn)步驟(以 linux 為例):
- 打開(kāi)終端,進(jìn)入安裝包所在目錄(如
/data/iotdb):cd /data/iotdb - 執(zhí)行以下命令計(jì)算哈希值:
sha512sum timechodb-{version}-bin.zip - 終端輸出結(jié)果(左側(cè)為SHA512 校驗(yàn)碼,右側(cè)為文件名):

- 對(duì)比輸出結(jié)果與官方 SHA512 校驗(yàn)碼,確認(rèn)一致后,即可按照下方流程執(zhí)行IoTDB企業(yè)版的安裝部署操作。
注意事項(xiàng):
- 若校驗(yàn)結(jié)果不一致,請(qǐng)聯(lián)系天謀工作人員重新獲取安裝包
- 校驗(yàn)過(guò)程中若出現(xiàn)"文件不存在"提示,需檢查文件路徑是否正確或安裝包是否完整下載
2.2 解壓安裝包并進(jìn)入安裝目錄
unzip iotdb-enterprise-{version}-bin.zip
cd iotdb-enterprise-{version}-bin2.3 參數(shù)配置
環(huán)境腳本配置
- ./conf/confignode-env.sh(./conf/confignode-env.bat)配置
| 配置項(xiàng) | 說(shuō)明 | 默認(rèn)值 | 推薦值 | 備注 |
|---|---|---|---|---|
| MEMORY_SIZE | IoTDB ConfigNode節(jié)點(diǎn)可以使用的內(nèi)存總量 | 空 | 可按需填寫(xiě),填寫(xiě)后系統(tǒng)會(huì)根據(jù)填寫(xiě)的數(shù)值來(lái)分配內(nèi)存 | 修改后保存即可,無(wú)需執(zhí)行;重啟服務(wù)后生效 |
- ./conf/datanode-env.sh(./conf/datanode-env.bat)配置
| 配置項(xiàng) | 說(shuō)明 | 默認(rèn)值 | 推薦值 | 備注 |
|---|---|---|---|---|
| MEMORY_SIZE | IoTDB DataNode節(jié)點(diǎn)可以使用的內(nèi)存總量 | 空 | 可按需填寫(xiě),填寫(xiě)后系統(tǒng)會(huì)根據(jù)填寫(xiě)的數(shù)值來(lái)分配內(nèi)存 | 修改后保存即可,無(wú)需執(zhí)行;重啟服務(wù)后生效 |
系統(tǒng)通用配置
打開(kāi)通用配置文件(./conf/iotdb-system.properties 文件),設(shè)置以下參數(shù):
| 配置項(xiàng) | 說(shuō)明 | 默認(rèn)值 | 推薦值 | 備注 |
|---|---|---|---|---|
| cluster_name | 集群名稱(chēng) | defaultCluster | 可根據(jù)需要設(shè)置集群名稱(chēng),如無(wú)特殊需要保持默認(rèn)即可 | 支持熱加載,但不建議手動(dòng)修改該參數(shù) |
| schema_replication_factor | 元數(shù)據(jù)副本數(shù),單機(jī)版此處設(shè)置為 1 | 1 | 1 | 默認(rèn)1,首次啟動(dòng)后不可修改 |
| data_replication_factor | 數(shù)據(jù)副本數(shù),單機(jī)版此處設(shè)置為 1 | 1 | 1 | 默認(rèn)1,首次啟動(dòng)后不可修改 |
ConfigNode配置
打開(kāi)ConfigNode配置文件(./conf/iotdb-system.properties文件),設(shè)置以下參數(shù):
| 配置項(xiàng) | 說(shuō)明 | 默認(rèn) | 推薦值 | 備注 |
|---|---|---|---|---|
| cn_internal_address | ConfigNode在集群內(nèi)部通訊使用的地址 | 127.0.0.1 | 所在服務(wù)器的IPV4地址或hostname,推薦使用hostname | 首次啟動(dòng)后不能修改 |
| cn_internal_port | ConfigNode在集群內(nèi)部通訊使用的端口 | 10710 | 10710 | 首次啟動(dòng)后不能修改 |
| cn_consensus_port | ConfigNode副本組共識(shí)協(xié)議通信使用的端口 | 10720 | 10720 | 首次啟動(dòng)后不能修改 |
| cn_seed_config_node | 節(jié)點(diǎn)注冊(cè)加入集群時(shí)連接的ConfigNode 的地址,cn_internal_address:cn_internal_port | 127.0.0.1:10710 | cn_internal_address:cn_internal_port | 首次啟動(dòng)后不能修改 |
DataNode 配置
打開(kāi)DataNode配置文件 ./conf/iotdb-system.properties,設(shè)置以下參數(shù):
| 配置項(xiàng) | 說(shuō)明 | 默認(rèn) | 推薦值 | 備注 |
|---|---|---|---|---|
| dn_rpc_address | 客戶(hù)端 RPC 服務(wù)的地址 | 127.0.0.1 | 默認(rèn)本機(jī)可直接訪問(wèn)。非本機(jī)訪問(wèn),請(qǐng)修改此配置項(xiàng)為所在服務(wù)器的IPV4地址或hostname,推薦使用所在服務(wù)器的IPV4地址。 | 重啟服務(wù)生效 |
| dn_rpc_port | 客戶(hù)端 RPC 服務(wù)的端口 | 6667 | 6667 | 重啟服務(wù)生效 |
| dn_internal_address | DataNode在集群內(nèi)部通訊使用的地址 | 127.0.0.1 | 所在服務(wù)器的IPV4地址或hostname,推薦使用hostname | 首次啟動(dòng)后不能修改 |
| dn_internal_port | DataNode在集群內(nèi)部通信使用的端口 | 10730 | 10730 | 首次啟動(dòng)后不能修改 |
| dn_mpp_data_exchange_port | DataNode用于接收數(shù)據(jù)流使用的端口 | 10740 | 10740 | 首次啟動(dòng)后不能修改 |
| dn_data_region_consensus_port | DataNode用于數(shù)據(jù)副本共識(shí)協(xié)議通信使用的端口 | 10750 | 10750 | 首次啟動(dòng)后不能修改 |
| dn_schema_region_consensus_port | DataNode用于元數(shù)據(jù)副本共識(shí)協(xié)議通信使用的端口 | 10760 | 10760 | 首次啟動(dòng)后不能修改 |
| dn_seed_config_node | 節(jié)點(diǎn)注冊(cè)加入集群時(shí)連接的ConfigNode地址,即cn_internal_address:cn_internal_port | 127.0.0.1:10710 | cn_internal_address:cn_internal_port | 首次啟動(dòng)后不能修改 |
??注意:VSCode Remote等編輯器無(wú)自動(dòng)保存配置功能,請(qǐng)確保修改的文件被持久化保存,否則配置項(xiàng)無(wú)法生效
2.4 啟動(dòng) ConfigNode 節(jié)點(diǎn)
進(jìn)入iotdb的sbin目錄下,啟動(dòng)confignode
./sbin/start-confignode.sh -d #“-d”參數(shù)將在后臺(tái)進(jìn)行啟動(dòng)如果啟動(dòng)失敗,請(qǐng)參考下方常見(jiàn)問(wèn)題。
2.5 啟動(dòng) DataNode 節(jié)點(diǎn)
進(jìn)入iotdb的sbin目錄下,啟動(dòng)datanode:
./sbin/start-datanode.sh -d #“-d”參數(shù)將在后臺(tái)進(jìn)行啟動(dòng)2.6 激活數(shù)據(jù)庫(kù)
方式一:命令激活
- 進(jìn)入 IoTDB CLI
# Linux 系統(tǒng)與 MacOS 系統(tǒng)啟動(dòng)命令如下:
# V2.0.6.x 版本之前
Shell > bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw root
# V2.0.6.x 版本及之后
Shell > bash sbin/start-cli.sh -h 127.0.0.1 -p 6667 -u root -pw TimechoDB@2021
# Windows 系統(tǒng)啟動(dòng)命令如下:
# V2.0.4.x 版本之前
Shell > sbin\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
# V2.0.4.x 版本及之后, V2.0.6.x 版本之前
Shell > sbin\windows\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw root
# V2.0.6.x 版本及之后
Shell > sbin\windows\start-cli.bat -h 127.0.0.1 -p 6667 -u root -pw TimechoDB@2021- 執(zhí)行以下內(nèi)容獲取激活所需機(jī)器碼:
show system info- 將返回機(jī)器碼復(fù)制給天謀工作人員:
+--------------------------------------------------------------+
| SystemInfo|
+--------------------------------------------------------------+
| 01-TE5NLES4-UDDWCMYE|
+--------------------------------------------------------------+
Total line number = 1
It costs 0.030s- 將工作人員返回的激活碼輸入到CLI中,輸入以下內(nèi)容
- 注:激活碼前后需要用
'符號(hào)進(jìn)行標(biāo)注,如所示
- 注:激活碼前后需要用
IoTDB> activate '01-D4EYQGPZ-EAUJJODW-NUKRDR6F-TUQS3B75-EDZFLK3A-6BOKJFFZ-ALDHOMN7-NB2E4BHI-7ZKGFVK6-GCIFXA4T-UG3XJTTD-SHJV6F2P-Q27B4OMJ-R47ZDIM3-UUASUXG2-OQXGVZCO-MMYKICZU-TWFQYYAO-ZOAGOKJA-NYHQTA5U-EWAR4EP5-MRC6R2CI-PKUTKRCT-7UDGRH3F-7BYV4P5D-6KKIA==='方式二:文件激活
- 啟動(dòng)Confignode、Datanode節(jié)點(diǎn)后,進(jìn)入activation文件夾, 將 system_info文件復(fù)制給天謀工作人員
- 收到工作人員返回的 license文件
- 將license文件放入對(duì)應(yīng)節(jié)點(diǎn)的activation文件夾下;
2.7 驗(yàn)證激活
可在 CLI 中通過(guò)執(zhí)行 show activation 命令查看激活狀態(tài),當(dāng)看到“ClusterActivationStatus”字段狀態(tài)顯示為 ACTIVATED 表示激活成功
-驗(yàn)證.png)
3. 常見(jiàn)問(wèn)題
部署過(guò)程中多次提示激活失敗
- 使用
ls -al命令:使用ls -al命令檢查安裝包根目錄的所有者信息是否為當(dāng)前用戶(hù)。 - 檢查激活目錄:檢查
./activation目錄下的所有文件,所有者信息是否為當(dāng)前用戶(hù)。
- 使用
Confignode節(jié)點(diǎn)啟動(dòng)失敗
步驟 1: 請(qǐng)查看啟動(dòng)日志,檢查是否修改了某些首次啟動(dòng)后不可改的參數(shù)。
步驟 2: 請(qǐng)查看啟動(dòng)日志,檢查是否出現(xiàn)其他異常。日志中若存在異常現(xiàn)象,請(qǐng)聯(lián)系天謀技術(shù)支持人員咨詢(xún)解決方案。
步驟 3: 如果是首次部署或者數(shù)據(jù)可刪除,也可按下述步驟清理環(huán)境,重新部署后,再次啟動(dòng)。
步驟 4: 清理環(huán)境:
a. 結(jié)束所有 ConfigNode 和 DataNode 進(jìn)程。
# 1. 停止 ConfigNode 和 DataNode 服務(wù) sbin/stop-standalone.sh # 2. 檢查是否還有進(jìn)程殘留 jps # 或者 ps -ef|grep iotdb # 3. 如果有進(jìn)程殘留,則手動(dòng)kill kill -9 <pid> # 如果確定機(jī)器上僅有1個(gè)iotdb,可以使用下面命令清理殘留進(jìn)程 ps -ef|grep iotdb|grep -v grep|tr -s ' ' ' ' |cut -d ' ' -f2|xargs kill -9b. 刪除 data 和 logs 目錄。
說(shuō)明:刪除 data 目錄是必要的,刪除 logs 目錄是為了純凈日志,非必需。
cd /data/iotdb rm -rf data logs