创建 Helm 部署值文件
您为每个 Neo4j 集群成员创建一个包含所有配置设置的 Helm 部署 YAML 文件。
重要配置参数
neo4j.name
-
独立服务器和集群服务器没有区别。这意味着可以通过添加更多服务器将独立服务器升级为集群。所有 Neo4j 集群服务器都通过参数
neo4j.name
的值连接在一起。通过 Neo4j Helm Chart 安装时,它们将加入由neo4j.name
标识的集群。
neo4j.name
不同于 Helm 发布名称,发布名称用于在 Kubernetes 中的其他地方引用集群服务器。
Helm Chart 创建的所有其他 K8s 对象的名称和标签都源自neo4j.name
和 发布名称。neo4j.name
参数是强制性的,如果未指定,安装将失败。neo4j.name
在命名空间内必须是唯一的。如果您想在同一命名空间中安装 2 个集群,它们的
neo4j.name
值必须不同。 neo4j.minimumClusterSize
-
独立服务器和集群服务器没有区别。默认情况下,集群中的服务器可以托管主数据库和辅助数据库。有关更多详细信息,请参阅操作视图。
neo4j.minimumClusterSize
默认设置为 1,这意味着服务器无需等待其他服务器即可启动。安装集群时,您应将neo4j.minimumClusterSize
设置为集群中所需成员的数量。如果您以后决定添加超出neo4j.minimumClusterSize
的额外集群服务器,则需要使用 Cypher 命令ENABLE SERVER
手动启用它。您还可以使用配置参数neo4j.operations.enableServer
在服务器加入集群时自动启用它。有关更多信息,请参阅横向扩展。 neo4j.resources
-
Neo4j 集群成员的大小由
neo4j.resources.cpu
和neo4j.resources.memory
参数的值定义。Neo4j 实例的最小配置为0.5
CPU 和2GB
内存。如果提供无效值或小于最小值,Helm 将抛出错误,例如Error: template: neo4j/templates/_helpers.tpl:157:11: executing "neo4j.resources.evaluateCPU" at <fail (printf "Provided cpu value %s is less than minimum. \n %s" (.Values.neo4j.resources.cpu) (include "neo4j.resources.invalidCPUMessage" .))>: error calling fail: Provided cpu value 0.25 is less than minimum. cpu value cannot be less than 0.5 or 500m
有关更多信息,请参阅配置资源分配。
neo4j.password
-
neo4j
用户的密码。所有集群成员都必须设置相同的密码。
如果您不提供密码,Neo4j Helm Chart 将自动为您生成一个。(请记下它。)您不能使用
neo4j
作为初始密码,因为这是默认密码。 neo4j.edition
和neo4j.acceptLicenseAgreement
-
默认情况下,Helm Chart 安装 Neo4j Community Edition。
如果您想安装 Neo4j Enterprise Edition,请设置配置参数edition: "enterprise"
,并通过将neo4j.acceptLicenseAgreement
设置为"yes"
(如果您有有效许可证)或"eval"
(如果您想接受链接:Neo4j 评估许可证)来确认许可证合规性。
有关如何获取 Neo4j Enterprise Edition 有效许可证的更多信息,请参阅 https://neo4j.ac.cn/licensing/ 和链接:https://neo4j.ac.cn/terms/licensing/,或使用表单联系 Neo4j。 volumes.data
-
volumes.data
参数将每个集群成员的data
卷挂载映射到该成员的持久卷。有关更多信息,请参阅卷挂载和持久卷。
有关所有 Neo4j Helm Chart 配置选项的详细信息,请参阅配置 Neo4j Helm 部署。 |
为每台服务器创建 values.yaml
文件
根据您的 Kubernetes 环境选择选项卡,并使用提供的示例,为您的每个集群服务器创建一个包含所有配置设置的 YAML 文件。
本指南假定 YAML 文件名为 server-1.values.yaml、server-2.values.yaml 和 server-3.values.yaml。
这些示例使用供应商提供的存储类。如果您想使用不同类型的存储类,例如区域磁盘,请查阅云供应商关于创建新存储类的文档。
neo4j:
name: "my-cluster"
minimumClusterSize: 3
resources:
cpu: "0.5"
memory: "2Gi"
password: "my-password"
edition: "enterprise"
acceptLicenseAgreement: "yes"
volumes:
data:
mode: "dynamic"
dynamic:
# * premium-rwo provisions SSD disks (recommended)
# * standard-rwo provisions balanced SSD-backed disks
# * standard provisions HDD disks
storageClassName: premium-rwo
neo4j:
name: "my-cluster"
minimumClusterSize: 3
resources:
cpu: "0.5"
memory: "2Gi"
password: "my-password"
acceptLicenseAgreement: "yes"
volumes:
data:
mode: "dynamic"
dynamic:
# gp2 is a general-purpose SSD volume
storageClassName: gp2
neo4j:
name: "my-cluster"
minimumClusterSize: 3
resources:
cpu: "0.5"
memory: "2Gi"
password: "my-password"
acceptLicenseAgreement: "yes"
volumes:
data:
mode: "dynamic"
dynamic:
# * managed-csi-premium provisions premium SSD disks (recommended)
# * managed-csi provisions standard SSD backed disks
storageClassName: managed-csi-premium