跳转到主要内容

文档 1.5 版本已不再积极维护,你当前浏览的是一份归档快照。 最新文档请参阅 最新版本。

HugeGraph-PD Quick Start

1 HugeGraph-PD 概述

HugeGraph-PD (Placement Driver) 是 HugeGraph 分布式版本的元数据管理组件,负责管理图数据的分布和存储节点的协调。它在分布式 HugeGraph 中扮演着核心角色,维护集群状态并协调 HugeGraph-Store 存储节点。

2 依赖

2.1 前置条件

  • 操作系统:Linux 或 MacOS(Windows 尚未经过完整测试)
  • Java 版本:≥ 11
  • Maven 版本:≥ 3.5.0

3 部署

有两种方式可以部署 HugeGraph-PD 组件:

  • 方式 1:下载 tar 包
  • 方式 2:源码编译

3.1 下载 tar 包

从 Apache HugeGraph 官方下载页面下载最新版本的 HugeGraph-PD:

1# 用最新版本号替换 {version},例如 1.5.0
2wget https://downloads.apache.org/incubator/hugegraph/{version}/apache-hugegraph-incubating-{version}.tar.gz  
3tar zxf apache-hugegraph-incubating-{version}.tar.gz
4cd apache-hugegraph-incubating-{version}/apache-hugegraph-pd-incubating-{version}

3.2 源码编译

 1# 1. 克隆源代码
 2git clone https://github.com/apache/hugegraph.git
 3
 4# 2. 编译项目
 5cd hugegraph
 6mvn clean install -DskipTests=true
 7
 8# 3. 编译成功后,PD 模块的构建产物将位于
 9#    apache-hugegraph-incubating-{version}/apache-hugegraph-pd-incubating-{version}
10#    target/apache-hugegraph-incubating-{version}.tar.gz

4 配置

PD 的主要配置文件为 conf/application.yml,以下是关键配置项:

 1spring:
 2  application:
 3    name: hugegraph-pd
 4
 5grpc:
 6  # 集群模式下的 gRPC 端口
 7  port: 8686
 8  host: 127.0.0.1
 9
10server:
11  # REST 服务端口号
12  port: 8620
13
14pd:
15  # 存储路径
16  data-path: ./pd_data
17  # 自动扩容的检查周期(秒)
18  patrol-interval: 1800
19  # 初始 store 列表,在列表内的 store 自动激活
20  initial-store-count: 1
21  # store 的配置信息,格式为 IP:gRPC端口
22  initial-store-list: 127.0.0.1:8500
23
24raft:
25  # 集群模式
26  address: 127.0.0.1:8610
27  # 集群中所有 PD 节点的 raft 地址
28  peers-list: 127.0.0.1:8610
29
30store:
31  # store 下线时间(秒)。超过该时间,认为 store 永久不可用,分配副本到其他机器
32  max-down-time: 172800
33  # 是否开启 store 监控数据存储
34  monitor_data_enabled: true
35  # 监控数据的间隔
36  monitor_data_interval: 1 minute
37  # 监控数据的保留时间
38  monitor_data_retention: 1 day
39  initial-store-count: 1
40
41partition:
42  # 默认每个分区副本数
43  default-shard-count: 1
44  # 默认每机器最大副本数
45  store-max-shard-count: 12

对于多节点部署,需要修改各节点的端口和地址配置,确保各节点之间能够正常通信。

5 启动与停止

5.1 启动 PD

在 PD 安装目录下执行:

1./bin/start-hugegraph-pd.sh

启动成功后,可以在 logs/hugegraph-pd-stdout.log 中看到类似以下的日志:

12024-xx-xx xx:xx:xx [main] [INFO] o.a.h.p.b.HugePDServer - Started HugePDServer in x.xxx seconds (JVM running for x.xxx)

5.2 停止 PD

在 PD 安装目录下执行:

1./bin/stop-hugegraph-pd.sh

6 验证

确认 PD 服务是否正常运行:

1curl http://localhost:8620/actuator/health

如果返回 {"status":"UP"},则表示 PD 服务已成功启动。