部署Raft listenerGraph
全文索引的数据是异步写入Elasticsearch集群的。流程是通过Storage服务的 Raft listener(简称listener)这个单独部署的进程,从Storage服务读取数据,然后将它们写入Elasticsearch集群。
前提条件Graph
- 已经了解全文索引的Graph。
- 已经Graph。
- 完成Graph。
- 准备一台或者多台额外的服务器,来部署Raft listener。
注意事项Graph
- 请保证Nebula 各组件(Metad、Storaged、Graphd、listener)有相同的版本。
- 只能为一个图空间“一次性添加所有的 listener 机器”。尝试向已经存在有 listener 的图空间再添加新 listener 会失败。因此,需在一个命令语句里完整地添加全部的 listener。
部署流程Graph
第一步:准备listener的配置文件Graph
你必须在各需要部署 listener 的机器上准备对应的配置文件。文件名称必须为nebula-storaged-listener.conf
。用户可以参考提供的Graph。注意去掉文件后缀.production
。
Note
在配置文件中请使用真实的(listener机器)IP地址替换127.0.0.1
。
第二步:启动listenerGraph
执行如下命令启动启动listener:
./bin/nebula-storaged --flagfile <listener_config_path>/nebula-storaged-listener.conf
listener_config_path
是存放 listener 配置文件的路径。
第三步:添加 listener 到 NebulaGraph 集群Graph
Graph进入需要创建全文索引的图空间。然后执行如下命令添加 listener:
ADD LISTENER ELASTICSEARCH <listener_ip:port> [,<listener_ip:port>, ...]
Warning
listener 必须使用真实的IP地址。
请在一个语句里完整地添加所有 listener。例如:
nebula> ADD LISTENER ELASTICSEARCH 192.168.8.5:46780,192.168.8.6:46780;
查看 listenerGraph
执行SHOW LISTENER
语句可以列出所有的 listener。
示例Graph
nebula> SHOW LISTENER;
+--------+-----------------+-----------------------+----------+
| PartId | Type | Host | Status |
+--------+-----------------+-----------------------+----------+
| 1 | "ELASTICSEARCH" | "[192.168.8.5:46780]" | "ONLINE" |
+--------+-----------------+-----------------------+----------+
| 2 | "ELASTICSEARCH" | "[192.168.8.5:46780]" | "ONLINE" |
+--------+-----------------+-----------------------+----------+
| 3 | "ELASTICSEARCH" | "[192.168.8.5:46780]" | "ONLINE" |
+--------+-----------------+-----------------------+----------+
删除listenerGraph
执行REMOVE LISTENER ELASTICSEARCH
语句可以删除图空间的所有listener。
示例Graph
nebula> REMOVE LISTENER ELASTICSEARCH;
Danger
删除 listerner 后,将不能重新添加 listerner,因此也无法继续向ES集群同步,文本索引数据将不完整。如果确实需要,只能重新创建 space。
下一步Graph
部署Graph。
最后更新: 2021年5月14日