IoTDB 集群高效管理小帮手:开机自启

0071a556ecd72cdcab1b5789a4504c85.jpeg

通过 Linux 系统服务,实现 IoTDB 更高效的启动方式!

IoTDB 是一个专为工业物联网领域设计的高性能时间序列数据库。在生产环境中,确保 IoTDB 集群的稳定运行至关重要。本文将介绍如何通过 Linux 系统服务来管理 IoTDB 集群,实现高效的启动、监控和自动重启

01 基本配置

(1)背景

传统的 IoTDB 启动方式存在一些局限性,如后台启动需要额外参数,且不支持自动重试、开机启动等功能。为了解决这些问题,IoTDB在新版本(V1.3.1)中引入了 daemon-confignode.sh 和 daemon-datanode.sh 脚本来注册 IoTDB 为系统服务

(2)环境需求

  • Linux 系统

  • 存在 systemctl 命令

  • 已设置 JAVA_HOME

  • 操作用户为 root 或拥有对应权限

(3)新增脚本介绍

  • sbin/daemon-confignode.sh:注册 IoTDB ConfigNode 为系统服务。

  • sbin/daemon-datanode.sh:注册 IoTDB DataNode 为系统服务。

执行脚本后,IoTDB 的 ConfigNode 和 DataNode 将注册为系统服务。服务文件将生成在 /etc/systemd/system 目录下。我们可以使用 systemctl 命令来管理服务。

02 使用方式

(1)手动启动服务

systemctl start iotdb-confignode
systemctl start iotdb-datanode

(2)配置开机自启动

systemctl enable iotdb-confignode
systemctl enable iotdb-datanode

(3取消开机自启动

systemctl disable iotdb-confignode
systemctl disable iotdb-datanode

(4)停止服务

systemctl stop iotdb-confignode
systemctl stop iotdb-datanode

停止服务后,状态应为 inactive (dead),否则需要查看日志分析原因。

注意:

使用 systemctl start iotdb-confignode、systemctl start iotdb-datanode 启动 IoTDB 后,可以用 sbin/stop-confignode.sh、sbin/stop-confignode.sh 的脚本去停止 IoTDB,此时不会自动重启对应节点。

使用sbin/start-confignode.sh、sbin/start-datanode.sh 启动 IoTDB 后,无法使用 systemctl 观测到进程状态(建议使用 systemctl 来进行启动和停止)。

(5)查看状态

systemctl status iotdb-confignode
systemctl status iotdb-datanode

(6)重启服务

systemctl restart iotdb-confignode
systemctl restart iotdb-datanode

03 服务特性及注意事项

(1)服务特性

服务将具备以下特性:

  • 启动失败时自动重启。

  • 异常退出时自动重启(如 Java 进程 OOM 或 JVM 崩溃)。

  • 正常退出不会自动重启(如使用 kill 命令或 systemctl stop)。

(2)注意事项

  • IoTDB 日志位于 IoTDB 所在目录的 logs 目录下。

  • 启动后可以使用 start-cli.sh 执行 show cluster 查看集群状态。

  • 状态为 active (running) 时, 不代表服务完全启动,如果 10 分钟之后状态仍是 active (running) 则代码服务一定成功启动。

  • 如果状态为 failed,需要查看日志并解决问题后,执行 systemctl daemon-reload 后再通过 systemctl 启动服务。

04 如何调整默认服务配置

(1方式一

  • 修改 daemon-confignode.sh、daemon-datanode.sh 中的 [Unit]、[Service]、[Install] 区域配置项,具体配置项的含义参考附录

  • 执行 daemon-confignode.sh、daemon-datanode.sh 脚本

(2方式二

  • 修改 /etc/systemd/system 中的 iotdb-confignode.service、iotdb-datanode.service 文件

  • 执行 systemctl deamon-reload

05 总结

本文详细介绍了如何通过 Linux 系统服务来高效管理 IoTDB 集群,重点在于实现自动启动、监控和重启。为了克服传统启动方式的局限性,IoTDB 在新版本(V1.3.1)中引入了 daemon-confignode.sh 和 daemon-datanode.sh 脚本,使得 IoTDB 可以注册为系统服务。

通过本文介绍的方法,可以显著提高 IoTDB 集群在生产环境中的管理效率,确保其稳定运行,实现高效的启动、监控和自动重启。欢迎大家使用!

规上企业应用实例

能源电力:中核武汉国网信通产业集团华润电力大唐先一上海电气国轩清安储能太极股份绍兴安瑞思

航天航空:中航机载共性北邮一号卫星

钢铁冶炼:宝武钢铁中冶赛迪

交通运输:中车四方长安汽车城建智控德国铁路

智慧工厂与物联:PCB 龙头企业博世力士乐德国宝马京东昆仑数据怡养科技

aae3b98c05a8790e4557f90e0119a9ed.gif

93c6939a3783f5340c7dacd3e31db3dc.jpeg

f500b26905a7ee4decd99deda13cb906.jpeg

d68156e8a0da73d0afa6f7726576ce42.jpeg

d62ac9ff7754e3f6a28796aef7f9e816.gif

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Apache IoTDB

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值