GCP 上的 Neo4j企业版
通过使用 GCP Marketplace 上的官方列表,可以轻松地将 Neo4j 部署在 Google Cloud Platform (GCP) 的虚拟机上。它可以配置为仅部署 Neo4j Enterprise Edition 2025.x 版本,支持单机模式或集群模式(1、3、4、5、6 或 7 台服务器)。不再支持旧版本的 Neo4j,例如 4.4 和 5.26 LTS。
Neo4j Terraform 部署模块
GCP Marketplace 列表使用 HashiCorp Terraform IaC 工具在 GCP 上部署 Neo4j 企业版。HashiCorp Terraform 是一个基础设施部署模块,可自动创建和管理 Google Cloud 资源。它将多个参数作为输入,部署一组云资源,并提供可用于连接到 Neo4j DBMS 的输出。
您可以在 GitHub 上找到 Terraform 配置文件的存储库。存储库结构如下
neo4j-terraform-gcp/
├── modules/ # Terraform modules
│ └── neo4j/ # Main Neo4j module
│ ├── scripts/ # Startup scripts for Neo4j
│ ├── main.tf # Main module configuration
│ ├── network.tf # Network configuration
│ ├── variables.tf # Module variables
│ ├── outputs.tf # Module outputs
│ └── versions.tf # Module provider requirements
├── test/ # Test configurations
├── metadata.yaml # GCP Marketplace metadata
├── metadata.display.yaml # GCP Marketplace display metadata
├── logo.png # Logo for GCP Marketplace
├── main.tf # Root module configuration
├── variables.tf # Root module variables
├── outputs.tf # Root module outputs
├── versions.tf # Provider and version constraints
└── terraform.tfvars.example # Example variables file
重要注意事项
-
部署云资源会产生费用。有关更多信息,请参阅 GCP 定价计算器。
-
Neo4j Terraform 模块会部署一个新的 VPC,其中包含位于所选区域的单个子网。与 Azure 和 AWS(子网与特定可用区对齐)不同,GCP 子网是区域性的(且 VPC 是全局的)。
-
Neo4j Terraform 模块使用实例组来部署 VM 实例。若要停止由组管理的 VM,必须先将其从该组中移除。
-
可以使用 SSH(通过 GCP 控制台中的浏览器内 SSH)连接到实例。点击 GCP 控制台中的 SSH 按钮即可。
部署步骤
在使用 Terraform 模块部署 Neo4j 之前,请确保已满足以下先决条件
-
Terraform 1.2.0 或更高版本。请参阅官方 Terraform 安装指南获取说明。
-
Google Cloud SDK
-
已启用计费的 GCP 项目
-
在 GCP 中创建资源的相应权限
-
在
gcloudCLI 中配置的默认项目 (gcloud config set project YOUR_PROJECT_ID)
选项 1:从 GCP Marketplace 部署
-
点击 Launch(启动)。
-
配置部署参数。有关每个参数的详细信息,请参阅输入参数。
-
检查并点击 Launch(启动)。
选项 2:直接使用模块
-
确保在 gcloud CLI 中设置了默认 GCP 项目
gcloud config set project YOUR_PROJECT_ID -
将
terraform.tfvars.example复制到terraform.tfvars并更新值。有关每个参数的详细信息,请参阅 输入参数。 -
在包含 Terraform 配置文件的目录中初始化 Terraform
terraform init -
规划部署
terraform plan -
应用配置
terraform apply
输入参数
以下变量可以在 terraform.tfvars 文件中进行配置。输入的完整列表可以在 ./variables.tf 文件中找到。
|
| 变量 | 参数名称 | 描述 | 默认值 |
|---|---|---|---|
|
项目 ID |
用于配置资源的 GCP 项目 ID。 |
|
|
许可证类型 |
Neo4j 许可证类型 (enterprise-byol 或 evaluation)。 |
|
|
区域 |
创建资源的 GCP 区域。 |
|
|
可用区 |
部署解决方案的可用区。 |
|
|
部署名称 |
部署和 VM 实例的名称。 |
|
|
镜像版本 |
用于 Neo4j 实例的 VM 镜像。 |
|
|
网络名称 |
要使用或创建的 VPC 网络名称。 |
|
|
子网名称 |
要使用或创建的子网名称。 |
|
|
创建新网络 |
是创建新网络还是使用现有网络 |
|
|
子网 CIDR |
子网的 CIDR 范围。 |
|
|
服务器数量 |
要部署的 Neo4j 服务器数量。节点计数必须为 1(单机)或 3/5/7(集群) |
|
|
机器类型 |
用于 Neo4j 服务器的 GCP 机器类型。 |
|
|
磁盘大小 (GB) |
数据磁盘的大小(以 GB 为单位)。 |
|
|
管理员密码 |
Neo4j 管理员用户的密码。密码长度必须至少为 8 个字符。 |
|
|
安装 Neo4j Bloom |
是否安装 Neo4j Bloom。 |
|
|
Bloom 许可证密钥 |
Neo4j Bloom 的许可证密钥(如果安装)。 |
|
|
防火墙源范围 |
外部访问的源 IP 范围(逗号分隔)。流量仅允许来自这些 IP 地址范围内的源。输入范围时请使用 CIDR 表示法。 |
|
已部署的云资源
由 Terraform 模块创建的环境包含以下 GCP 资源
-
VPC 网络和子网(可选)。
-
用于内部和外部访问的防火墙规则。
-
带有持久磁盘的 Neo4j VM。
-
配置 Neo4j 以进行单机或集群操作。
模板输出
安装成功完成后,Terraform 模块提供以下输出
| 输出名称 | 描述 |
|---|---|
neo4j_url |
访问 Neo4j Browser 的 URL。 |
neo4j_bolt_url |
连接到 Neo4j 的 Bolt URL。 |
neo4j_ip_addresses |
Neo4j 节点的 IP 地址。 |
neo4j_instance_names |
Neo4j 实例名称。 |
neo4j_instance_zones |
部署 Neo4j 实例的可用区。 |
neo4j_instance_machine_types |
Neo4j 实例的机器类型。 |
|
通过点击标题为 Log into the Neo4j Browser(登录 Neo4j 浏览器) 的按钮,可以在新窗口中轻松启动 Neo4j Browser。 |
许可
从 GCP Marketplace 安装和启动 Neo4j 即表示接受 Neo4j 许可协议。部署 Neo4j 时,您需要确认您拥有企业版许可证,或者接受 Neo4j 评估版许可证的条款。
如果您需要 Bloom 企业版,则需要提供 Neo4j 颁发的密钥,因为安装过程中需要此密钥。
要获取 Bloom 的有效许可证,请联系您的 Neo4j 客户代表,或通过联系表单进行咨询。
删除部署并销毁资源
要删除部署并销毁所有关联资源,您可以使用以下 Terraform 命令
terraform destroy
此命令将提示您确认销毁 Terraform 配置中定义的所有资源。在确认之前,请仔细审查拟议的更改。有关 terraform destroy 命令的详细信息,请参阅官方 Terraform 文档。