Neo4J 部署方案


Neo4j可以嵌入到你的应用中,作为一个独立服务器运行或者部署成HA集群模式提供好性能服务。

表 20.1. Neo4j部署选项

  Single Instance Multiple Instances

Embedded

EmbeddedGraphDatabase

HighlyAvailableGraphDatabase

Standalone

Neo4j Server

Neo4j Server high availability mode


20.1.1. 服务器模式

Neo4j一半作为一个独立服务器访问,要么直接通过一个REST接口或者一个基于指定语言的驱动。 关于Neo4j服务器的信息,请参考: 第 17 章 Neo4j服务器。 要以HA模式运行服务器,请参考: 第 22 章 高可用性模式

20.1.2. 嵌入模式

通过引入一个正确的Java库就可以将Neo4j引入到你的应用中。 当编码的时候,你可以参考 GraphDatabaseServiceAPI。 要从单例模式切换到多例多高性能多模式,只需要简单的从 EmbeddedGraphDatabase 到HighlyAvailableGraphDatabase 。

### 部署Neo4j于华为云容器引擎(CCE) #### 准备工作 为了成功部署Neo4j,在开始之前需完成必要的准备工作。这包括但不限于拥有一个已创建并配置好的CCE集群以及具备基本的Kubernetes操作技能[^2]。 #### 创建持久卷(Persistent Volume, PV) 和 持久卷声明(PersistentVolumeClaim, PVC) 由于图数据库的数据存储需求,建议先设置好PV和PVC来确保数据的安全性和持久化保存。通过定义YAML文件可以轻松做到这一点: ```yaml apiVersion: v1 kind: PersistentVolume metadata: name: neo4j-pv-volume spec: capacity: storage: 5Gi accessModes: - ReadWriteOnce hostPath: path: "/mnt/data" --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: neo4j-pvc-claim spec: accessModes: - ReadWriteOnce resources: requests: storage: 5Gi ``` 上述代码片段展示了如何利用`hostPath`方式指定本地路径作为存储介质;实际生产环境中推荐采用更可靠的解决方案如对象存储服务(OBS)[^4]。 #### 定义Neo4j Deployment资源清单 接下来就是编写用于启动Neo4j实例的服务描述文档——Deployment YAML: ```yaml apiVersion: apps/v1 kind: Deployment metadata: labels: app: neo4j name: neo4j-deployment spec: replicas: 1 selector: matchLabels: app: neo4j template: metadata: labels: app: neo4j spec: containers: - image: neo4j:latest name: neo4j-container ports: - containerPort: 7474 protocol: TCP volumeMounts: - mountPath: /data name: data- name: data-storage persistentVolumeClaim: claimName: neo4j-pvc-claim ``` 这段脚本指定了要拉取官方最新的Neo4j镜像,并将其挂载至先前准备好的磁盘空间内以便长期保存节点间关系型数据结构[^3]。 #### 设置Service以暴露外部访问端口 为了让外界能够连接到新建立起来的图数据库服务器,还需要额外设定一项名为Service的对象: ```yaml apiVersion: v1 kind: Service metadata: name: neo4j-service spec: type: LoadBalancer ports: - port: 80 targetPort: 7474 selector: app: neo4j ``` 这里选择了`LoadBalancer`类型的负载均衡器,它会自动分配公网IP地址给当前服务,从而允许远程客户端发起HTTP请求与目标主机通信[^1]。 #### 应用资源配置 最后一步便是执行命令将所有预先编写的模板上传至云端平台之上: ```bash kubectl apply -f pv_pvc.yaml kubectl apply -f deployment.yaml kubectl apply -f service.yaml ``` 以上指令依次处理了三个不同功能模块的内容,即完成了整个安装流程的操作指南。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值