跳转至

自定义NebulaGraph集群的配置参数

NebulaGraph集群中 Meta、Storage、Graph 服务都有各自的配置,其在用户创建的NebulaGraph集群实例的 YAML 文件中被定义为configconfig中的设置会被映射并加载到对应服务的 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

  1. 执行以下命令进入nebula集群的编辑页面。

    kubectl edit nebulaclusters.apps.nebula-graph.io nebula
    
  2. 在 YAML 文件的spec.graphd.config配置项中,添加enable_authorizeauth_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.configspec.storaged.config中添加对应的配置项。

  3. 执行kubectl apply -f nebula_cluster.yaml使上述更新生效。

    在自定义参数enable_authorizeauth_type后,Graph 服务对应的 ConfigMap(nebula-graphd)中的配置将被覆盖。

在线修改集群配置

在线修改集群配置主要通过调用HTTP接口对集群的配置参数进行修改,而无需重启集群 Pod。

需要注意的是,只有当config中的配置项均为可在运行时动态修改的参数时,才能触发在线修改集群配置操作。如果config中的配置项包含不可动态修改的参数,那么集群配置将通过重启 Pod 的方式进行更新。

关于各个服务可动态修改的参数,分别参见 Meta 服务配置参数Storage 服务配置参数Graph 服务配置参数的配置参数表格中是否支持运行时动态修改一列。

更多信息

有关 Meta、Storage、Graph 服务的配置参数的详细介绍,参见 Meta 服务配置参数Storage 服务配置参数Graph 服务配置参数


最后更新: January 31, 2024