Windows Server上部署IoTDB 集群

windows,server,部署,iotdb,集群 · 浏览次数 : 815

小编点评

## Windows Server 2019 上 IoTDB 集群部署实践记录 **安装步骤:** 1. **下载安装包:** 从官方网站下载 https://iotdb.apache.org/Download/下载 IoTDB 1.0.0 版本的All in one二进制文件。 2. **解压缩安装包:** 解压缩得到 apache-iotdb-1.0.0目录,目录包含以下文件: * **conf** 目录:存放配置文件 * **bin** 目录:存放启动脚本 * **README.md** 文件:介绍文件 * **license** 文件:授权声明 3. **配置环境:** * 确保已安装了 OpenJDK 17 运行环境。 * 配置 **JAVA_HOME** 环境变量,将路径设置为安装包解压缩后的 **bin** 目录。 4. **注册表配置:** * 修改 **Registry Editor**,将 Tcpip参数 **MaxUserPort** 设置为 **65534** 和 **TcpTimedWaitDelay** 设置为 **30**。 * 运行 **regedit** 命令,将以下配置添加到 **HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OpenJDK\17.0\Java\Configuration** 窗口中: * **MaxUserPort:** 65534 * **TcpTimedWaitDelay:** 30 5. **启动集群:** * 将安装包部署至 3 台服务器上,每个服务器上选择不同的目录。 * 配置文件在每个服务器上统一为 **./conf/iotdb-common.properties**。 * 配置每个服务器的配置文件为: * **./conf/iotdb-confignode.properties**:ConfigNode * **./conf/iotdb-datanode.properties**:DataNode 6. **启动集群:** * 启动 3 个 ConfigNode 和 3 个 DataNode 的集群。 * 检查集群状态,所有节点应显示为 **Running**。 **注意事项:** * **端口冲突:** 在集群默认配置中,ConfigNode 和 DataNode 使用相同的端口,请确保端口未被占用。 * **防火墙规则:** 在集群运行过程中,请确保防火墙开放端口 6667、10710-10760、22277、8777、40010、50010 和 9003。 * **启动日志:** 检查 DataNode 的启动日志,确保没有错误。 **最后状态:** * 所有节点的状态应显示为 **Running**,说明集群部署成功。 **参考资料:** * IoTDB 文档:`show cluster details` * Windows Registry 配置:`HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OpenJDK\17.0\Java\Configuration`

正文

本文是参考官方的 IoTDB 集群版(1.0.0)的安装及启动教程:https://iotdb.apache.org/zh/UserGuide/V1.0.x/Cluster/Cluster-Setup.html ,在Windows Server 2019上部署集群的实践记录。

前置检查

使用微软发布的OpenJDK 17 运行环境,并配置好 JAVA_HOME 环境变量。从微软官方网站下载 https://learn.microsoft.com/zh-cn/java/openjdk/download

image

下载msi的一键安装包 microsoft-jdk-17.0.5-windows-x64.msi。 在服务器上进行安装

image

修改Windows的注册表,将Tcpip的参数MaxUserPort=65534 和 TcpTimedWaitDelay=30

image

首次启动ConfigNode节点时,确保已清空ConfigNode节点的data/confignode目录;首次启动DataNode节点时,确保已清空DataNode节点的data/datanode目录。

如果整个集群处在可信环境下,可以关闭机器上的防火墙选项,在windows 防火墙下开通iotdb 规则,我开通了如下端口6667, 10710-10760, 22277, 8777, 40010, 50010,9003.

image

image

在集群默认配置中,ConfigNode 会占用端口 10710 和 10720,DataNode 会占用端口 6667、10730、10740、10750 和 10760, 请确保这些端口未被占用,或者手动修改配置文件中的端口配置。


安装包获取

打开官网Download Page :https://iotdb.apache.org/Download/

下载 IoTDB 1.0.0 版本的All in one二进制文件。

image

解压得到 apache-iotdb-1.0.0目录,目录有一个注意事项是在路径上不能有空格。打开 apache-iotdb-1.0.0,可见以下目录:

image

image

集群安装配置

集群安装

IoTdb 包含 ConfigNode 和 DataNode, 请将安装包部署于你目标集群的所有机器上,推荐将安装包部署于所有服务器的相同目录下。 本次集群共3台机器,ip分别为:192.168.67.45,192.168.67.46,192.168.67.47,其中192.168.67.45 作为seed-confignode.

集群配置

接下来需要修改每个服务器上的配置文件,登录服务器, 并将工作路径切换至 apache-iotdb-1.0.0, 配置文件在 ./conf 目录内,以下所有配置项在集群启动后不可修改

  • 对于所有部署 ConfigNode 的服务器,需要修改通用配置ConfigNode 配置
  • 对于所有部署 DataNode 的服务器,需要修改通用配置和 DataNode 配置

1、通用配置

注:务必保证所有节点的通用配置完全一致,否则节点无法启动,通用配置为./conf/iotdb-common.properties,本次集群cluster_name=TrueloveCluster

image

2、ConfigNode 配置

注:务必保证所有端口均未被占用,否则节点无法启动,配置文件为./conf/iotdb-confignode.properties

image

3、DataNode 配置

注:务必保证所有端口均未被占用,否则节点无法启动,配置文件为./conf/iotdb-datanode.properties

image

启动集群

本次启动3个ConfigNode 和 3个DataNode 的集群,集群可以提供服务的标准是至少启动一个 ConfigNode 且启动 不小于(数据/元数据)副本个数的 DataNode,要求3集群公共配置的./conf/iotdb-common.properites必须保持一致。

总体启动流程分为三步:

  1. 启动种子 ConfigNode
  2. 增加 ConfigNode(可选)
  3. 增加 DataNode
1、启动 Seed-ConfigNode

集群第一个启动的节点必须是 ConfigNode,第一个启动的 ConfigNode 必须遵循本小节教程。

第一个启动的 ConfigNode 是 Seed-ConfigNode,标志着新集群的创建。 在启动 Seed-ConfigNode 前,请打开通用配置文件 ./conf/iotdb-common.properties,并检查如下参数:

image

image

启动confignode,切换至sbin目录运行启动脚本:

.\sbin\start-confignode.bat

2、增加ConfigNode(2个)

启动前务必保证 ./conf/iotdb-common.properites 中的所有配置参数与 Seed-ConfigNode 完全一致,配置 ./conf/iotdb-confignode.properties

image

服务器192.168.67.46

image

服务器192.168.67.47

image

启动confignode,切换至sbin目录运行启动脚本:

.\sbin\start-confignode.bat

3、增加DataNode(3个)

在保证ConfigNode启动成功后才可以增加DataNode,配置 ./conf/iotdb-datanode.properties

可以向集群中添加任意个 DataNode。 在添加新的 DataNode 前,请先打开通用配置文件 ./conf/iotdb-common.properties 并检查以下参数:

image

接着打开它的配置文件 ./conf/iotdb-datanode.properties 并检查以下参数:

image

服务器192.168.67.45

image

服务器192.168.67.46

image

服务器192.168.67.47

image

启动,进入sbin目录执行启动脚本

.\sbin\start-datanode.bat

验证集群

以上是在3台服务器上启动的3C3D(3个ConfigNode 和 3个DataNode)集群为例, 这里假设3个ConfigNode的IP地址依次为192.168.67.45,192.168.67.46,192.168.67.47,且3个ConfigNode启动时均使用了默认的端口10710与10720; 3个DataNode的IP地址依次为192.168.67.45,192.168.67.46,192.168.67.47,且3个DataNode启动时均使用了默认的端口6667、10730、10740、10750与10760。

在 Cli 执行 show cluster details,看到的结果应当如下:

image

所有节点的状态均为 Running,则说明集群部署成功。上面有两个DataNode的状态是Unknown. 检查DataNode的启动日志没有问题, 这是由于还有相关的端口没有在防火墙上开通,需要开通如下端口号: 6667, 10710-10760, 22277, 8777, 40010, 50010,9003.

image

与Windows Server上部署IoTDB 集群相似的内容:

Windows Server上部署IoTDB 集群

本文是参考官方的 IoTDB 集群版(1.0.0)的安装及启动教程:https://iotdb.apache.org/zh/UserGuide/V1.0.x/Cluster/Cluster-Setup.html ,在Windows Server 2019上部署集群的实践记录。前置检查使用微软发布的O

将IoTDB注册为Windows服务

昨天写的文章《Windows Server上部署IoTDB集群》,Windows下的IoTDB是控制台程序,打开窗口后,很容易被别人给关掉,因此考虑做成Windows服务,nssm正是解决该问题的利器。 1.下载nssm:http://www.nssm.cc/download 查看官网提示,如果是w

Apache IoTDB C# SDK 介绍

最近今天写了IoTDB的三篇相关文章,完成了安装部署和客户端连接:Windows Server上部署IoTDB 集群DBeaver 连接IoTDBDriver将IoTDB注册为Windows服务TsFile 是 IoTDB 的底层数据文件,一种专门为时间序列数据设计的列式文件格式。IoTDB TsF

windows server + iis 部署若伊前端vue项目

一、背景说明 工作原因,一直使用若伊前后端分离版框架进行二次开发。客户的服务器多数为windows server系统,少部分为linux系统。过去一直是使用nginx进行前端的部署,nginx的代理功能确实强大,但是在windows系统上发现一些小问题。前阵子机缘巧合之下发现了Windows ser

基于 Vagrant 手动部署多个 Redis Server

环境准备 宿主机环境:Windows 10 虚拟机环境:Vagrant + VirtualBox Vagrantfile 配置 首先,我们需要编写一个 Vagrantfile 来定义我们的虚拟机配置。假设已经在 D:\Vagrant\redis 目录下创建了一个 Vagrantfile,其内容如下:

[转帖]Python模块winRM

https://www.jianshu.com/p/ac095497bad4 一、介绍 winRM服务是windows server下PowerShell的远程管理服务。Python脚本通过连接winRM模块操作windows命令行。 二、使用方法 被控制windows server上winRM服务

Windows server 2016:无法打开此计算机上的组策略对象。你可能没有相应的权限。

问题现象: 使用服务器管理器打开本地安全策略,或使用win+R快捷键,输入gpedit.msc打开系统组策略时,出现报错:无法打开此计算机上的组策略对象。你可能没有相应的权限。 解决方法: 1、使用win+E快捷键打开资源管理器,点击”查看“,勾选”隐藏的项目“,因为C:\Windows\Syste

如何在 Windows Server 2022 阿里云服务器上搭建自己的 MQTT 服务器之一Apache-Apollo服务器。

一、简介 最近,在做一个项目的时候,需要在线管理网络继电器,以前也做过硬件的项目,但是这样的项目不多。现在我想实现一个在线可以接受网络继电器发送的信号,也可以向网络继电器发送命令,控制其的运行。这个功能的实现需要物联网的支持,我在咨询了网络继电器卖家,想要在线实现网络硬件的管理有三种解决方案。 第一

如何在 Windows Server 2022 阿里云服务器上搭建自己的 MQTT 服务器之二Mosquitto服务器

一、介绍 最近几天都在搭建MQTT服务器,几天前搭建好了一个 Apache-Apollo的 MQTT 服务器,当我们在管理我们的主题的时候,发现主题的名称的斜杠(/)变成了点号(.),正好我在调试程序,在调用的时候出现了一些问题,各种解决办法都想了,还是没有解决,于是就向重新搭建一个 MQTT 服务

Windows Server 2022 初始设置

添加本地用户 添加新的本地用户。 在CUI配置上,按如下方式设置。 使用管理员权限运行 PowerShell 并按如下方式进行配置。 Windows PowerShell 版权所由 (C) Microsoft Corporation。 保留所有权利。 安装最新的 PowerShell,了解新功能和改