创建 Helm 部署 values 文件企业版
你需要为每个 Neo4j 集群成员创建一个包含所有配置设置的 Helm 部署 YAML 文件。
重要配置参数
neo4j.name-
独立服务器和集群服务器之间没有区别。这意味着可以通过增加更多服务器将独立服务器升级为集群。所有 Neo4j 集群服务器都通过
neo4j.name参数的值关联在一起。当通过 Neo4j Helm chart 安装时,它们将加入由neo4j.name标识的集群。
neo4j.name与 Helm release name(发布名称) 不同,后者用于在 Kubernetes 中的其他地方引用集群服务器。
由 Helm chart 创建的所有其他 K8s 对象名称和标签均派生自neo4j.name和 release 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.5CPU 和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",或者如果你想接受链接:Neo4j 评估许可,请设置为"eval"。
有关如何获取 Neo4j 企业版有效许可的更多信息,请参阅 /licensing/ 和 link:/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"
edition: "enterprise"
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"
edition: "enterprise"
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