Graph 配置

本文介绍 graphd 配置文件。配置文件默认在 /usr/local/nebula/etc/ 目录下。如果您已指定 Nebula Graph 安装路径,则配置文件目录为 $pwd/nebula/etc/

  • *.default 文件为日常调试使用,也是服务启动时默认使用的配置文件
  • *.production 文件为推荐生产时使用的的文件,生产时请去掉 .production 后缀

Basics 基础配置

属性名默认值说明
daemonizetrue作为 daemon 进程运行
pid_file“pids/nebula-graphd.pid”进程 PID 文件

logging 日志相关

属性名默认值说明动态修改
log_dirlogs (也即 /usr/local/nebula/logs)graphd 日志文件存放路径,建议与 storaged 的数据目录放不同硬盘
minloglevel0对应的日志级别分别为 INFO(DEBUG),WARNING,ERROR,FATAL。通常在调试环境设置为 0,生产环境设置为 1,设置为 4 不打印任何日志。UPDATE CONFIGS 命令修改,立刻生效
v00-4: 当 minloglevel 设置为 0 时,可以进一步设置调试日志的详细程度,值越大越详细UPDATE CONFIGS 命令修改,立刻生效
logbufsecs0 (秒)日志缓存时间UPDATE CONFIGS 命令修改,立刻生效
redirect_stdouttrue将 stdout 和 stderr 重定向到单独的文件
stdout_log_file“stdout.log”stdout 目标文件名
stderr_log_file“stderr.log”stderr 目标文件名
slow_op_threshhold_ms50 (毫秒)慢操作和慢查询需要打印日志的阈值UPDATE CONFIGS 命令修改,立刻生效

例如,下面命令可以增加 graphd 的日志详细程度 v=1。

  1. nebula> UPDATE CONFIGS graph:v=1;

networking 网络通信相关

属性名默认值说明动态修改
meta_server_addrs“127.0.0.1:45500”meta server 地址列表,格式为 ip1:port1, ip2:port2, ip3:port3
port3699RPC 监听端口
meta_client_retry_times3与 meta service 重试次数UPDATE CONFIGS 命令修改,立刻生效
heartbeat_interval_secs3 (秒)与 meta service 心跳时长UPDATE CONFIGS 命令修改,下个心跳周期生效
client_idle_timeout_secs0关闭 idle 连接前的时长(单位秒), 0 为无穷大
session_idle_timeout_secs0idle sessions 过期时长(单位秒),0 为无穷大
num_netio_threads0networking 线程数,0为物理 CPU 核数
num_accept_threads1接受进入连接的线程数
num_worker_threads0执行用户请求的线程数,线程数为系统 CPU 核数
reuse_porttrue开启内核(>3.9) SO_REUSEPORT 选项
listen_backlog1024listen socket 的 backlog
listen_netdev“any”监听的网络服务
ws_http_port13000HTTP 协议监听端口 (内部使用)
ws_h2_port13002HTTP/2 协议监听端口(内部使用)
ws_ip“127.0.0.1”web service 绑定地址

注意: meta_server_addrs 参数中推荐使用实际 IP,127.0.0.1 有时不会被正确解析。

authorization (安全相关)

属性名默认值说明
enable_authorizefalse开启身份验证
auth_typepasswordpassword:帐密方式;ldap:LDAP 方式;cloud云:端方式

开启身份验证,仅能使用 root 账号登陆,例如:

  1. /usr/local/nebula/bin/nebula -u root -p nebula --addr=127.0.0.1 --port=3699

未开启身份验证,可不填账号信息或使用任意账号进行登陆,例如:

  1. /usr/local/nebula/bin/nebula --addr=127.0.0.1 --port=3699