CentOS 7.x 部署 Dolphindb 集群
Dolphindb 简单说明
Dolphindb Cluster 有三种节点:控制节点、代理节点和数据节点。简单理解其关系:控制节点控制代理节点启动数据。节点作用说明:
- 控制节点用于集群元数据的管理和协调,不能作为任务的主入口。
- 代理节点用于关闭或开启数据节点。
- 数据节点用于数据存储,以及查询计算任务的入口。
假设我们的 license 是两个数据节点,dolphindb1 作为控制节点,那么节点部署分布如下(如果两个数据节点部署在一台物理机上,那么一个代理节点就可以):
主机名 | IP地址 | 部署节点 |
---|---|---|
dolphindb1 | 172.16.1.11 | 控制节点、代理节点、控制节点 |
dolphindb2 | 172.16.1.12 | 代理节点、数据节点 |
Dolphindb 集群部署
- Dolphindb 集群部署步骤见 GitHub文档。首先去Dolphindb官网下载最新的zip包,然后上传至两台 CentOS 服务器上。
- 解压缩安装包(此步骤两台主机都操作)。
0 14:16:14 root@dolphindb1,172.16.1.11:~ # mkdir -p /datas/app/dolphindb
0 14:16:18 root@dolphindb1,172.16.1.11:~ # cd /datas/app/
0 14:16:30 root@dolphindb1,172.16.1.11:/datas/app # unzip DolphinDB_Linux64_V1.30.9.zip -d dolphindb
- 软件授权许可更新(许可证是需要购买)(此步骤两台主机都操作)。
0 14:41:40 root@dolphindb1,172.16.1.11:/datas/app # cd dolphindb/server/
0 14:41:42 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # ll dolphindb.lic # 将你购买的许可证替换此文件即可
-rw-r--r--. 1 root root 387 May 17 15:56 dolphindb.lic
- 配置控制节点。
0 15:02:38 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # mkdir -p config data log
# 创建控制节点配置文件
0 15:04:48 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # vim config/controller.cfg
mode=controller
localSite=172.16.1.11:8990:master
localExecutors=3
maxConnections=512
maxMemSize=16
webWorkerNum=2
workerNum=4
dfsReplicationFactor=2
dfsReplicaReliabilityLevel=0
dfsMetaDir=/datas/app/dolphindb/server/dfsMeta
dataSync=1
lanCluster=0
# 创建集群成员配置文件。
0 15:13:16 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # vim config/cluster.nodes
localSite,mode
172.16.1.11:8960:dolphindb1-agent,agent
172.16.1.11:8961:dolphindb1-NODE1,datanode
172.16.1.12:8960:dolphindb2-agent,agent
172.16.1.12:8961:dolphindb2-NODE1,datanode
# 创建集群中数据节点的配置文件。
0 16:18:23 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # vim config/cluster.cfg
maxConnections=512
maxMemSize=32
workerNum=4
localExecutors=3
webWorkerNum=2
newValuePartitionPolicy=add
chunkCacheEngineMemSize=8
dolphindb1-NODE1.chunkMetaDir=/datas/app/dolphindb/server/chunkMeta
dolphindb2-NODE1.chunkMetaDir=/datas/app/dolphindb/server/chunkMeta
dolphindb1-NODE1.volumes=/datas/dolphindbData/dolphindb1-NODE1,/data/dolphindbData/dolphindb1-NODE1 # 分散两个磁盘做存储,有助于加快速度。
dolphindb2-NODE1.volumes=/datas/dolphindbData/dolphindb2-NODE1,/data/dolphindbData/dolphindb2-NODE1
diskIOConcurrencyLevel=2
dolphindb1-NODE1.persistenceDir=/datas/app/dolphindb/server/persistence
dolphindb2-NODE1.persistenceDir=/datas/app/dolphindb/server/persistence
maxPubConnections=32
subExecutors=4
dolphindb1-NODE1.subPort=8962
dolphindb2-NODE1.subPort=8962
lanCluster=0
preloadModules=plugins::parquet
persistenceWorkerNum=1
- 配置代理节点。
# 代理配置文件中的 controllerSite 值应该与 controller.cfg 中的 localSite 配置保持一致。
# dolphindb1 配置
0 16:20:27 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # vim config/agent.cfg
mode=agent
workerNum=3
localExecutors=2
maxMemSize=4
localSite=172.16.1.11:8960:dolphindb1-agent
controllerSite=172.16.1.11:8990:master
lanCluster=0
# dolphindb2 配置。
0 16:28:15 root@dolphindb2,172.16.1.12:/datas/app/dolphindb/server # mkdir -p config data log
0 16:28:26 root@dolphindb2,172.16.1.12:/datas/app/dolphindb/server # vim config/agent.cfg
mode=agent
workerNum=3
localExecutors=2
maxMemSize=4
localSite=172.16.1.12:8960:dolphindb2-agent
controllerSite=172.16.1.11:8990:master
lanCluster=0
- 启动集群。
# dolphindb1 操作。
## 编写简单的启动脚本,启动代理节点。
0 10:23:14 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # vim startAgent.sh
#!/bin/sh
nohup ./dolphindb -console 0 -mode agent -home data -script dolphindb.dos -config config/agent.cfg -logFile log/agent.log &
## 启动控制节点。
0 10:23:18 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # vim startController.sh
#!/bin/sh
nohup ./dolphindb -console 0 -mode controller -home data -script dolphindb.dos -config config/controller.cfg -logFile log/controller.log -nodesFile config/cluster.nodes -clusterConfig config/cluster.cfg &
0 10:36:57 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # chmod +x startAgent.sh startController.sh
0 10:37:15 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # ./startAgent.sh
0 10:37:26 root@dolphindb1,172.16.1.11:/datas/app/dolphindb/server # ./startController.sh
# dolphindb2 操作。
0 10:37:50 root@dolphindb2,172.16.1.12:/datas/app/dolphindb/server # chmod +x startAgent.sh
0 10:37:58 root@dolphindb2,172.16.1.12:/datas/app/dolphindb/server # ./startAgent.sh
- 启动数据节点,在浏览器输入 controller 的地址和端口,http://172.16.1.11:8990,默认账户:admin,默认密码:123456。
Dolphindb 常用操作
- 修改 DolphinDB Cluster Manager 的密码。首先需要在 Dolphindb官网 下载客户端连接程序。
- 同样在 GUI 客户端中操作,添加插件。
# 首先需要先将下载的插件上传到 dolphindb 服务中,随便哪一台都可以。
0 11:46:22 root@dolphindb1,172.16.1.11:~ # ll /datas/app/dolphindb/server/plugins/parquet/
total 16996
-rw-r--r--. 1 root root 17395928 May 18 14:42 libPluginParquet.so
-rw-r--r--. 1 root root 323 May 18 14:42 PluginParquet.txt
# 在 GUI 添加数据上面上传插件的那个节点,加载插件。
写作不易,转载请注明出处,谢谢~~