自定义NebulaGraph集群的配置参数¶
NebulaGraph集群中 Meta、Storage、Graph 服务都有各自的配置,其在用户创建的NebulaGraph集群实例的 YAML 文件中被定义为config
。config
中的设置会被映射并加载到对应服务的 ConfigMap 中。各个服务在启动时会挂载 ConfigMap 中的配置到/usr/local/nebula/etc/
目录下。
Note
暂不支持通过 Helm 自定义NebulaGraph集群的配置参数。
config
结构如下:
Config map[string]string `json:"config,omitempty"`
前提条件¶
已使用 K8s 创建一个集群。具体步骤,参见使用 Kubectl 创建NebulaGraph集群。
操作步骤¶
以下示例使用名为nebula
的集群、名为nebula_cluster.yaml
的 YAML 配置文件,说明如何为集群的 Graph 服务配置config
:
-
执行以下命令进入
nebula
集群的编辑页面。kubectl edit nebulaclusters.apps.nebula-graph.io nebula
-
在 YAML 文件的
spec.graphd.config
配置项中,添加enable_authorize
和auth_type
。apiVersion: apps.nebula-graph.io/v1alpha1 kind: NebulaCluster metadata: name: nebula namespace: default spec: graphd: resources: requests: cpu: "500m" memory: "500Mi" limits: cpu: "1" memory: "1Gi" replicas: 1 image: vesoft/nebula-graphd version: v3.5.0 storageClaim: resources: requests: storage: 2Gi storageClassName: fast-disks config: //为 Graph 服务自定义参数。 "enable_authorize": "true" "auth_type": "password" ...
如果需要为 Meta 服务和 Storage 服务配置
config
,则在spec.metad.config
和spec.storaged.config
中添加对应的配置项。 -
执行
kubectl apply -f nebula_cluster.yaml
使上述更新生效。在自定义参数
enable_authorize
和auth_type
后,Graph 服务对应的 ConfigMap(nebula-graphd
)中的配置将被覆盖。
在线修改集群配置¶
在线修改集群配置主要通过调用HTTP
接口对集群的配置参数进行修改,而无需重启集群 Pod。
需要注意的是,只有当config
中的配置项均为可在运行时动态修改的参数时,才能触发在线修改集群配置操作。如果config
中的配置项包含不可动态修改的参数,那么集群配置将通过重启 Pod 的方式进行更新。
关于各个服务可动态修改的参数,分别参见 Meta 服务配置参数、Storage 服务配置参数、Graph 服务配置参数的配置参数表格中是否支持运行时动态修改一列。
更多信息¶
有关 Meta、Storage、Graph 服务的配置参数的详细介绍,参见 Meta 服务配置参数、Storage 服务配置参数、Graph 服务配置参数。