配置参考

参考表,其中列出了所有可配置参数及其默认值。

通用配置

表 1. 通用配置参考
参数 描述 默认值

镜像

Neo4j 镜像

neo4j

镜像标签

Neo4j 版本

(默认值与 Helm Chart 本身的发布版本一致)

镜像拉取策略

镜像拉取策略

IfNotPresent

Pod 中断预算

Pod 中断预算

{}

启用认证

需要登录/密码吗?

true

插件

自动安装的插件。(语法必须是有效的 JSON 数组字符串)此处列出有效插件

"[\"apoc\"]"

默认数据库

在 Neo4j 中配置的默认数据库名称 (dbms.default_database)

neo4j

neo4j 密码

如果需要密码,用于登录 Neo4j 数据库的密码

(10 个字符的随机字符串)

现有密码 Secret

包含 neo4j 密码的 Kubernetes Secret 名称

(无)

现有密码 Secret 密钥

`existingPasswordSecret` 中包含 neo4j 密码的键

neo4j-password

Pod 标签

应用于核心与副本 StatefulSet Pod 的额外/自定义标签

{}

Pod 注解

应用于核心与副本 StatefulSet Pod 的额外/自定义注解。

{}

rbac.create

是否为此 Chart 创建 Role 与 RoleBinding。

true

serviceAccount.create

是否为此 Chart 创建 ServiceAccount。

true

serviceAccount.annotations

应用于核心与副本服务账户的额外/自定义注解。

{}

serviceAccount.name

自定义核心与副本服务账户名称。如果为空,名称将根据 Chart 的完整名称生成。

(无)

安全上下文

Neo4j Pod 的 SecurityContext

默认值为 `{}`, 但我们建议使用 `{ runAsNonRoot: true, runAsUser: 7474 }` 以避免 Pod 以 root 身份运行。更多信息请点击此处

容器安全上下文

Neo4j 数据库容器的 SecurityContext

默认值为 `{}`, 建议仅在无法使用 Pod 安全上下文时设置 containerSecurityContext。

Neo4j 核心成员

表 2. 核心成员配置参考

参数

描述

默认值

core.configMap

为核心集群成员提供配置的 Configmap。如果未指定,将使用 Chart 附带的默认值。

$NAME-neo4j-core-config

core.envFrom

`envFrom` 条目的 YAML 列表,允许从任意数量的 ConfigMap 和 Secret 设置 Pod 配置。

[]

core.standalone

是否以单服务器独立模式运行。在使用独立模式时,core.numberOfServers 将被 **忽略**,您将只获得 1 个 Neo4j Pod。其余核心配置仍适用。

false

core.resources

核心数据库成员所需的资源(例如 CPU、内存)

`{}` (无特定请求或限制)

core.numberOfServers

核心模式下的机器数量

3

core.sideCarContainers

要添加到核心 Pod 的 Sidecar 容器。示例用例是一个 Sidecar,在使用 HTTP API 时识别并标记领导者。

{}

core.initContainers

要添加到核心 Pod 的 Init 容器。示例用例是一个安装自定义插件/扩展的脚本。

{}

core.persistentVolume.enabled

是否启用持久化

true

core.persistentVolume.storageClass

后端 PVC 的存储类

`standard` (使用 beta 存储类注解)

core.persistentVolume.size

数据卷大小

1Ti

core.persistentVolume.mountPath

持久卷挂载根路径

/data

core.persistentVolume.subPath

要挂载的卷子目录

nil

core.persistentVolume.annotations

持久卷声明注解

{}

core.additionalVolumes

有关此选项的更多信息,请参阅用户指南中的“其他存储”部分。

{}

core.additionalVolumeMounts

有关此选项的更多信息,请参阅用户指南中的“其他存储”部分。

{}

core.terminationGracePeriodSeconds

底层 Pod 终止宽限期;允许 Neo4j 在退出前正确地将缓冲区刷新到磁盘,避免数据损坏。

300

core.service.type

服务类型

ClusterIP

core.service.annotations

服务注解

{}

core.service.labels

自定义服务标签

{}

core.service.loadBalancerSourceRanges

允许访问负载均衡器 (LB) 的 IP CIDR 列表(如果 `core.service.type: LoadBalancer`)

[]

core.discoveryService.type

服务类型

ClusterIP

core.discoveryService.annotations

服务注解

{}

core.discoveryService.labels

自定义服务标签

{}

core.discoveryService.loadBalancerSourceRanges

允许访问负载均衡器 (LB) 的 IP CIDR 列表(如果 `core.discoveryService.type: LoadBalancer`)

[]

Neo4j 读取副本

表 3. 读取副本配置参考

参数

描述

默认值

readReplica.configMap

为 RR 集群成员提供配置的 Configmap。如果未指定,将使用 Chart 附带的默认值。

$NAME-neo4j-replica-config

readReplica.envFrom

`envFrom` 条目的 YAML 列表,允许从任意数量的 ConfigMap 和 Secret 设置 Pod 配置。

[]

readReplica.resources

读取副本数据库成员所需的资源(例如 CPU、内存)

`{}` (无特定请求或限制)

readReplica.numberOfServers

READ_REPLICA 中的机器数量。不能与 core.standalone=true 模式一起使用

0

readReplica.autoscaling.enabled

启用水平 Pod 自动伸缩器

false

readReplica.autoscaling.targetAverageUtilization

目标 CPU 利用率

70

readReplica.autoscaling.minReplicas

自动伸缩的最小副本数

1

readReplica.autoscaling.maxReplicas

自动伸缩的最大副本数

3

readReplica.initContainers

要添加到副本 Pod 的 Init 容器。示例用例是一个安装自定义插件/扩展的脚本。

{}

readReplica.persistentVolume.*

请参阅 `core.persistentVolume.*` 设置;它们对于读取副本的行为相同

不适用

readReplica.additionalVolumes

有关此选项的更多信息,请参阅用户指南中的“其他存储”部分。

{}

readReplica.additionalVolumeMounts

有关此选项的更多信息,请参阅用户指南中的“其他存储”部分。

{}

readReplica.terminationGracePeriodSeconds

底层 Pod 终止宽限期;允许 Neo4j 在退出前正确地将缓冲区刷新到磁盘,避免数据损坏。

300

readReplica.service.type

服务类型

ClusterIP

readReplica.service.annotations

服务注解

{}

readReplica.service.labels

自定义服务标签

{}

readReplica.service.loadBalancerSourceRanges

允许访问负载均衡器 (LB) 的 IP CIDR 列表(如果 `readReplica.service.type: LoadBalancer`)

[]

命名您的部署

此 Chart 使用 `fullnameOverride` 约定,允许您控制应用于集群的资源的名称。默认情况下,当您安装名为 `mygraph` 的发布版本时,您会得到诸如 `mygraph-neo4j-core` 和 `mygraph-neo4j-replica` 之类的资源名称,它们是发布名称、应用程序名称和组件名称的组合。

如果您想覆盖此默认设置,可以指定以下任何值:

  • fullnameOverride

  • fullnamePrefix

  • fullnameSuffix

例如,如果您设置 `fullnameOverride=graph` 和 `fullnamePrefix=marketing`,那么您将看到部署的资源名称如下所示:

  • marketing-graph-core

  • marketing-graph-replica

(等等),这将省略 Helm 发布名称和应用程序名称 (neo4j)。

© . All rights reserved.