分布式事务数据库HotDB的计算节点负载均衡

2022-03-15 00:00:00 集群 节点 服务 状态 计算

计算节点负载均衡

HotDB Server支持多计算节点集群的节点自治。以下简称计算节点集群中Primary状态的计算节点为Primary计算节点;计算节点集群中Secondary状态的计算节点为Secondary计算节点。
Primary和Secondary计算节点的数据服务完全对等,均支持所有类型的数据操作且保证数据的一致性。集群中一个或多个(不支持多数计算节点同一时间故障)节点发生故障后,只要还有一个或更多节点可用,则整体数据服务依旧可用。

HotDB Server支持负载均衡:可选择使用LVS等方式,进行SQL请求的分发。应用端可借助LVS的VIP访问HotDBServer的数据库服务,同时保证使用透明与服务不间断。也可使用其余负载均衡方案进行处理,例如F5加自定义检测;应用直连计算节点,但发生异常时更换节点等方式。

启动说明

在计算节点集群环境部署成功后,启动计算节点:
#cd /usr/local/hotdb-2.5.0/hotdb-server/bin
#shhotdb_server start

查看HotDB Server启动状态:

计算节点启动后不开放服务端口,会暂时将自己的角色状态设置为Started。当集群中所有计算节点都启动后,有一个计算节点会变为Primary,其余计算节点变为Secondary,且所有计算节点均开放数据服务端口,整个集群进入正常运行状态,示例:
Primary节点:
Secondary节点:
管理端3325状态查看:

当Primary服务异常时,剩余Secondary中的一个会变为新的Primary,原Primary会被踢出集群。
原Primary:
#cd/usr/local/hotdb-2.5.0/hotdb-server/bin
#shhotdb_server stop
新Primary:

管理端状态查看:

若原Primary服务重新启动(相当于新节点加入),当前Primary发现Started的节点,新节点会加入该集群变为Secondary。
原Primary:
#cd /usr/local/hotdb-2.5.0/hotdb-server/bin
#sh hotdb_server start
管理端状态查看:

多计算节点集群启动后通过VIP访问数据库服务,即可实现透明的负载均衡,可保证服务不间断。

多计算节点集群注意事项:

  1. 计算节点集群启动时Primary具有随机性,但主配置库所在的服务器上的计算节点不会成为Primary;
  2. 故障的计算节点经过一段时间,会自行关闭服务端口变为Started状态;
  3. Secondary发现Primary失去响应且自己不在主配置库服务器上,会发起新选举,收到多数投票变为新Primary;
  4. 新节点加入,Primary发现新Started的节点加入,会添加新发现的节点;Primary发现Secondary失去响应,则会剔除该节点;
  5. 集群环境升级版本,如果不影响业务,建议关闭集群升级后再启动;
  6. 集群中各节点的server.xml配置,除集群相关的参数都必须一致;
  7. 各计算节点服务器时间差异需小于1s;
  8. 计算节点服务器之间要求任何时候网络延迟均小于1s;
  9. 建议一个局域网网段内,只部署一套多计算节点集群;
  10. 10.配置库IP需配置实际IP。
  11. 来源 
  12. https://zhuanlan.zhihu.com/p/389539430

相关文章