高可用(HA)集群配置

TigerGraph系统的高可用集群(即High Availability或HA配置)表示在一个服务器集群中,通过副本的方式来确保业务的不间断运行,以防止因为集群中一台或多台服务器宕机或某些组件损坏导致的服务不可用。TigerGraph的高可用配置在所有组件工作正常时提供负载均衡功能,而在某些组件损坏时提供实时切换功能。一台TigerGraph的服务器上包含多个组件(GSE、GPE、RESTPP等)。默认情况下,HA的副本系数(即repliction factor)为“2”,即系统对同一数据同时保存两份完整的副本,并保存在不同的计算机节点上。在高级HA配置中,用户也可以自定义副本系数。

系统要求

  • 高可用配置至少需要3台计算机节点组成集群。节点可以是物理主机,也可以是虚拟主机。即便图数据库只有一个分块,也必须如此。

  • 若分布式系统上的图数据库有N个分块(N大于一),则集群中必须拥有2N台计算机节点。

  • 节点之间所有的TigerGraph版本必须一致。

限制条件

  1. 进行HA配置的时间位于系统安装完成之后,数据库应用部署之前。

  2. 当前版本下,如果需要将一个非HA配置转换成HA配置,必须清除所有的数据和元数据,并关闭TigerGraph服务。在将来的版本中,这个限制会有所改进。

操作步骤

从2.1版本开始,HA配置被集成到了平台安装过程中。请参阅:TigerGraph Platform Installation Guide

(A) :安装 TigerGraph

请更具TigerGraph Platform Installation Guide提供的步骤安装TigerGraph系统。

(B) :停止TigerGraph服务

首先请确认已经以 tigergraph 系统账户名登录主机m1。在创建或修改HA配置前,首先需要将TigerGraph系统完全关闭。如果系统内存有任何数据,请先清除数据(例如使用命令"gsql DROP ALL")。

(C) :启用HA

在完成集群安装后,使用下面的命令创建HA配置

该命令会自动生成一个副本系数为“2”的分布式数据库配置文件。某些组件可能会拥有高于2的副本系数。

例:

如果HA配置失败(例如某些HA的要求未满足),系统会返回一条报错信息:

{% endcode-tabs-item %} {% endcode-tabs %}

(D) :[可选] HA高级配置

HA高级配置是可选的步骤。高级用户可以通过数次执行"gadmin --set"命令来自定义HA配置的参数,并手动定义每台集群节点上需要运行哪些TigerGraph组件。下面列出的是我们推荐的组件分布方式。在文末的表格中我们也列出了不同情况下的不同配置方法。

例:假设我们有一个包含三台主机的集群,分别为m1,m2和m3。Kafka、GPE、GSE和RESTPP在m1和m2上都安装,副本系数为2。则我们可以判断这是一个非分布式图数据的高可用部署。

(E) :安装软件包

HA配置完成后,请在第一台计算机节点(通常为m1)上安装软件包。

实际案例

下面的表格列出了不同情况下的安装方式。注意,如果你希望从一种配置方式转换到另外一种配置方式,请事先停止整个TigerGraph系统。​