TigerGraph文档
2.3
2.3
  • TigerGraph 2.3 技术文档目录
  • TigerGraph 版本比较
  • GSQL 图数据库算法库
  • 版本发布, 功能变更
    • 版本发布 - TigerGraph 2.3
      • 版本发布 - TigerGraph 2.2
    • 变更日志
  • INTRODUCTION AND OVERVIEW
    • TigerGraph 入门指南
    • GSQL 101
      • 环境准备
      • 定义一个Schema
      • 加载数据
      • 使用内置的SELECT进行查询
      • 使用参数化GSQL查询进行查询
      • 总结:你学到的东西
    • TigerGraph平台概览
    • Knowledge Base and FAQs
      • TigerGraph 常见问题
      • GSQL 常见问题
    • Kafka Loader用户手册
  • 系统管理指南
    • TigerGraph 管理员指南
      • 硬件及软件配置
      • 安装和配置
        • 安装指南
        • 高可用(HA)集群配置
        • 集群的扩容
        • 软件许可激活
      • 系统权限管理
        • 用户权限及验证
        • LDAP
        • 单点登录(SSO)
      • 数据加密
        • 链接的加密
        • 非活跃数据(Data At Rest)的加密
      • 系统管理
        • 基于Web的管理工具:Admin Portal
        • 使用gadmin工具管理
        • 数据的备份与恢复
        • 系统维护中的常见问题
  • 开发者指南
    • GSQL 语言开发指南
      • 第一部分 数据定义及加载
        • 简介
        • 系统和语言基础
        • 定义一个图模型(Graph Schema)
        • 修改图模型
        • 创建数据加载任务
        • 执行加载作业
        • 附录
          • 关键词和系统预留词
          • GSQL 从开始到结束的整个过程和数据流向
      • 第二部分 查询
        • 简介
        • 创建、安装、执行查询
        • 数据类型
        • 累加器(Accumulators)
        • 运算符,函数和表达式
        • 声明和赋值
        • SELECT语句
        • 控制流语句
        • 数据修改语句
        • 输出语句以及文件对象
        • 异常处理语句
        • 注释
        • 附录
          • 附录A: 一般错误和问题
          • 附录B:查询语言的完整正式语法
          • 附录C. 图查询语言的预留词列表
          • 附录D. 示例
    • RESTPP API 开发指南
      • 简介
      • RESTPP请求
      • 系统预制函数(Endpoints)
      • 系统预制函数请求格式(JSON)
    • 事务处理及ACID支持
  • 图形界面 可视化
    • GraphStudio 用户指南
      • GraphStudio 概述
      • GraphStudio许可证
      • 用户权限管理
      • 设计图模型(Schema)
      • 将数据映射到图
      • 加载数据
      • 探索图数据
      • 编写查询
      • 导入和导出解决方案
      • 已知问题
      • GraphStudio中的专利及第三方软件版权说明
Powered by GitBook
On this page
  • 系统要求
  • 限制条件
  • 操作步骤
  • (A) :安装 TigerGraph
  • (B) :停止TigerGraph服务
  • (C) :启用HA
  • (D) :[可选] HA高级配置
  • (E) :安装软件包
  • 实际案例

Was this helpful?

  1. 系统管理指南
  2. TigerGraph 管理员指南
  3. 安装和配置

高可用(HA)集群配置

Previous安装指南Next集群的扩容

Last updated 6 years ago

Was this helpful?

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服务。在将来的版本中,这个限制会有所改进。

操作步骤

(A) :安装 TigerGraph

下面的步骤均需要使用 tigergraph 系统账户,并且在m1节点上操作。

(B) :停止TigerGraph服务

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

停止所有TigerGraph服务
gadmin stop ts3 -fy
gadmin stop all -fy
gadmin stop admin -fy

(C) :启用HA

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

gadmin --enable ha

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

例:

成功的HA配置
tigergraph@m1$ gadmin --enable ha
[FAB    ][m3,m2] mkdir -p ~/.gium
[FAB    ][m3,m2] scp -r -P 22 ~/.gium ~/
[FAB    ][m3,m2] mkdir -p ~/.gsql
[FAB    ][m3,m2] scp -r -P 22 ~/.gsql ~/
[FAB    ][m3,m2] mkdir -p ~/.venv
[FAB    ][m3,m2] scp -r -P 22 ~/.venv ~/
[FAB    ][m3,m2] cd ~/.gium; ./add_to_path.sh
[RUN    ] /home/tigergraph/.gsql/gpe_auto_start_add2cron.sh
[FAB    ][m3,m2] mkdir -p /home/tigergraph/.gsql/
[FAB    ][m3,m2] scp -r -P 22 /home/tigergraph/.gsql/all_log_cleanup /home/tigergraph/.gsql/
[FAB    ][m3,m2] mkdir -p /home/tigergraph/.gsql/
[FAB    ][m3,m2] scp -r -P 22 /home/tigergraph/.gsql/all_log_cleanup_add2cron.sh /home/tigergraph/.gsql/
[FAB    ][m1,m3,m2] /home/tigergraph/.gsql/all_log_cleanup_add2cron.sh
[FAB    ][m1,m3,m2] rm -rf /home/tigergraph/tigergraph_coredump
[FAB    ][m1,m3,m2] mkdir -p /home/tigergraph/tigergraph/logs/coredump
[FAB    ][m1,m3,m2] ln -s /home/tigergraph/tigergraph/logs/coredump /home/tigergraph/tigergraph_coredump

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

失败的HA配置
tigergraph@m1$ gadmin --enable ha
Detect config change. Please run 'gadmin config-apply' to apply.
ERROR:root: To enable HA configuration, you need at least 3 machines.
Enable HA configuration failed.

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

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

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

组件

键名

建议的主机数量

建议的副本数量

ZooKeeper

zk.servers

3 或 5

-

Dictionary Server

dictserver.servers

3 或 5

-

Kafka

kafka.servers

与GPE相同

与GPE相同

kafka.num.replicas

2 或 3

2 或 3

GSE

gse.servers

每台主机

每台主机

gse.replicas

2

2

GPE

gpe.servers

每台主机

每台主机

gpe.replicas

2

2

REST

restpp.servers

每台主机

每台主机

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

例: 三节点非分布式高可用集群
gadmin --set zk.servers m1,m2,m3
gadmin --set dictserver.servers m1,m2,m3
gadmin --set dictserver.base_ports 17797,17797,17797
gadmin --set kafka.servers m1,m2
gadmin --set kafka.num.replicas 2
gadmin --set gse.replicas 2
gadmin --set gpe.replicas 2
gadmin --set gse.servers m1,m2
gadmin --set gpe.servers m1,m2
gadmin --set restpp.servers m1,m2

(E) :安装软件包

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

gadmin pkg-install reset -fy

实际案例

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

目标部署方式

集群配置方式 (X为节点数)

具体步骤: A,B,C等字母对应上文中的步骤序号

非分布式图数据, 有HA

每台服务器都保存一个完整的数据副本。

  • 无论是第一次安装还是重新配置,步骤都是: (A) → B → C → D → E. 在步骤D中, 将总的副本数设置为 X , 例: gpe.replicas = X gse.replicas = X restpp.replicas = X ...

  • 注意: (A) 上的括号表示步骤A只适用于首次安装。

分布式图数据,无HA

图数据被分块后分布在不同的节点上。

  • 注意: 无HA等价于副本系数为1。

  • 首次安装时, skip 可跳过步骤B, C, D 和 E。

分布式图数据 有HA

图数据以副本系数N分块。 分块数量Y等于X/N。

  • 无论是第一次安装还是重新配置,步骤都是, (A) → B → C → D → E。在步骤D中, 将总的副本数设置为N,例如: gpe.replicas = N gse.replicas = N ...

  • 注意: (A) 上的括号表示步骤A只适用于首次安装。

​

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

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

TigerGraph Platform Installation Guide
TigerGraph Platform Installation Guide