温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

neo4j集群如何部署

发布时间:2026-09-09 07:22:33 来源:亿速云 阅读:120 作者:小樊 栏目:数据库

下面按常见生产场景给你一个清晰、可落地的 Neo4j 集群部署方案。Neo4j 的集群主要指 Neo4j Enterprise Edition(企业版),社区版不支持真正集群。


一、Neo4j 集群类型概览

1. Causal Cluster(因果集群,最常用)

用于高可用 + 读写扩展

组成角色:

  • Core(核心节点)
    • 保证数据一致性和高可用
    • 通常 3 / 5 个(奇数)
  • Read Replica(只读副本)
    • 只同步读,不参与写
    • 可水平扩展

✅ 推荐生产用法
3 Core + N Read Replica


二、部署前准备

1. 环境要求

  • Linux(CentOS / Ubuntu)
  • JDK 17(Neo4j 5.x)
  • 至少 3 台机器(Core)
  • 开放端口:
    • 7474(HTTP)
    • 7687(Bolt)
    • 5000(集群通信)
    • 6000(raft)

三、Core 节点部署示例(3 节点)

节点示例

节点 IP
core1 10.0.0.11
core2 10.0.0.12
core3 10.0.0.13

1. 安装 Neo4j(所有节点)

sudo apt install neo4j-enterprise
# 或 rpm / tar 包

2. 配置 neo4j.conf(关键)

core1

# 基本
server.default_listen_address=0.0.0.0
server.bolt.listen_address=0.0.0.0:7687

# 集群
dbms.mode=CORE

# 当前节点
dbms.cluster.advertised_address=10.0.0.11:5000
dbms.cluster.raft.advertised_address=10.0.0.11:6000

# 初始成员
dbms.cluster.initial_discovery_members=10.0.0.11:5000,10.0.0.12:5000,10.0.0.13:5000

# 安全
dbms.security.auth_enabled=true

core2 / core3

只需改 IP 地址即可。


3. 启动集群

neo4j start

查看状态:

cypher-shell
CALL dbms.cluster.overview();

四、Read Replica(只读副本)

配置示例

dbms.mode=READ_REPLICA
dbms.cluster.advertised_address=10.0.0.21:5000
dbms.cluster.initial_discovery_members=10.0.0.11:5000,10.0.0.12:5000,10.0.0.13:5000

✅ 只读副本可随时加


五、客户端连接

写请求

bolt://10.0.0.11:7687

读请求(可负载均衡)

bolt://10.0.0.21:7687

或使用:

CALL dbms.routing.getRoutingTable();

六、常见部署方式

方式 1:物理机 / 虚拟机

  • 稳定
  • 运维清晰

方式 2:Docker

services:
  core1:
    image: neo4j:enterprise
    environment:
      - NEO4J_dbms_mode=CORE

方式 3:Kubernetes(高级)

  • 使用 StatefulSet
  • 官方 Helm Chart(有限支持)

七、运维重点

  • ✅ Core 必须奇数(3/5)
  • ✅ 不要脑裂(网络分区)
  • ✅ 定期备份
  • ✅ 监控:
    • 集群状态
    • Raft 延迟
    • 磁盘 IO

八、最小可用集群

✅ 3 Core 节点
即可实现:

  • 高可用
  • 自动选主
  • 数据冗余

如果你愿意,我可以:

  • 给你 完整 docker-compose
  • 给你 K8s 部署 YAML
  • 帮你设计 适合你业务的节点规模

你现在是准备 测试环境 还是 生产部署?

向AI问一下细节
推荐阅读:
  1. Neo4j是什么
  2. Neo4j怎么用

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手