如何水平扩展和垂直扩展DolphinDB集群?

2022-04-28 00:00:00 数据 集群 节点 副本 控制

随着业务的扩展,数据量不断积累,数据库系统的数据容量和计算能力会逐渐不堪重负,因此的数据库系统必须具备良好的扩展性。DolphinDB集群中的数据节点是集计算和存储于一体的,所以要提高计算能力和数据容量,只需针对数据节点即可。DolphinDB既支持水平扩展,即增加节点,也支持垂直扩展,即增加节点的存储。

在扩展集群前,需要对DolphinDB集群有基本的概念。DolphinDB集群由3个角色组成:控制节点(Controller)、代理节点(Agent)和数据节点(Data Node)。每个角色任务分配如下:

  • 控制节点负责管理元数据,提供Web集群管理工具。
  • 代理节点负责节点的启动和停止,每台服务器上必须有一个代理节点。
  • 数据节点负责计算和存储。

与集群相关的配置文件,一般位于config目录下:

controller.cfg:位于控制节点所在的服务器,负责定义控制节点的相关配置,如IP、端口号、控制节点连接数上限等。

cluster.cfg:位于控制节点所在的服务器,负责定义集群内每一个节点的个性化配置,如存储路径、连接数、内存限制等。

cluster.nodes:位于控制节点所在的服务器,集群的成员配置文件,包含节点的IP、端口、节点别名和角色。

agent.cfg:包含代理节点的IP、端口和控制节点的IP和端口。每个物理服务器必须有一个代理节点。

如果是水平扩展集群,需要修改集群的成员配置文件(cluster.nodes),如果数据节点位于新的物理服务器上,那么还需要部署一个新的代理节点(agent.cfg)来负责新物理机上节点的启停,然后重启控制节点来加载新的数据节点。当新的数据节点启动后,节点的计算能力会即时纳入集群的计算资源统筹,但是已经存储在集群中的数据不会调整到新的数据节点,系统会将后续新进入的数据按策略分配到各个数据节点。

如果是垂直扩展集群,只需要修改数据节点的配置文件(cluster.cfg),为指定节点的volumes参数增加路径。

下面将详细介绍扩展集群的步骤。

1. 集群配置说明

集群部署可以参考教程多物理服务器集群部署。

示例集群有3个数据节点,每个数据节点位于一台物理服务器上,控制节点位于另外一台物理服务器上:

控制节点:172.18.0.10

数据节点1:172.18.0.11

数据节点2:172.18.0.12

数据节点3:172.18.0.13

各个配置文件的信息如下:

controller.cfg

localSite=172.18.0.10:8990:ctl8990

相关文章