首先感谢iotdb 团队多年的支持,不了解iotdb 可以看下iotdb官方网站[IoTDB Website]。
单机版本已经稳定运行了3年多。随着业务的增长,对数据处理的压力越来越大,迫切需要升级到集群版本。进入正题:
1. 在本地测试好调用的jar 兼容问题,0.13.5 版本的jar 可以直接访问1.1.1 版本,反过来1.1.1版本的jar 包不支持 0.13.5 版本的服务器,为了兼容部分老服务器0.13.5的数据库,所以我们保持使用 0.13.5版本的jar 文件,这是很重要的一步。
2. 从官方网址下载 1.1.1 版本 [Apache Downloads] 下载比较慢,我用迅雷下载的,速度很快
3. 修改 conf 目录下的iotdb-datanode.properties:
dn_rpc_address=0.0.0.0
默认的是127.0.0.1 不能外网访问
#然后修改存储目录,记得跟老版本的目录区分开
dn_system_dir=/mntb/iotdb/newdata/data/datanode/system
dn_data_dirs=/mntb/iotdb/newdata/data/datanode/data
dn_consensus_dir=/mntb/iotdb/newdata/data/datanode/consensus
dn_wal_dirs=/mntb/iotdb/newdata/data/datanode/wal
dn_tracing_dir=/mntb/iotdb/newdata/data/datanode/tracing
dn_sync_dir=/mntb/iotdb/newdata/data/datanode/sync
4. 修改iotdb-common.properties,根据自己的业务调整参数:
enable_last_cache=false
# 93 days
default_ttl_in_ms=8035200000
enable_cross_space_compaction=false
target_compaction_file_size=536870912
compaction_thread_count=1
#注意密码一旦改了启动了就不能再改了
admin_password=xxxxx
5. 修改iotdb-confignode.properties 数据存储目录
cn_system_dir=/mntb/iotdb/newdata/data/confignode/system
cn_consensus_dir=/mntb/iotdb/newdata/data/confignode/consensus
6. 修改confignode-env.sh 内存,confignode官方推荐是2G固定内存:
# Maximum heap size
MAX_HEAP_SIZE="2G"
# Minimum heap size
HEAP_NEWSIZE="2G"
# Maximum direct memory size
MAX_DIRECT_MEMORY_SIZE=${MAX_HEAP_SIZE}
7. 修改 datanode-env.sh 内存 根据进物理内存调整, 我写的21G
8. 启动验证下
nohup sbin/start-confignode.sh > /dev/null 2>&1 &
nohup sbin/start-datanode.sh > /dev/null 2>&1 &
9. 用cli 看看是否成功
10. 用自己的代码连接下验证读取,检查jar 是否兼容
接下来准备数据:
11. 登录老版本0.13.5的cli,执行 flush,然后停掉 老版本。
12. 最好备份好 老版本的data 目录
13. 登录 1.1.1版本的cli,使用 load 指令,直接load老版本的数据进来
load '/mntb/iotdb/data' verify=false onSuccess=none
过程可能比较久
14. 等提示load 成功了 可以验证数据是否完整,大功告成。
本文档详细记录了从IoTDB单机版本0.13.5升级到1.1.1集群版本的过程,包括兼容性测试、配置文件修改、内存设置、数据迁移等关键步骤,并强调了在升级过程中需要注意的事项。

7935

被折叠的 条评论
为什么被折叠?



