部署Raft listener

全文索引的数据是异步写入Elasticsearch集群的,通过Raft listener(简称listener)这个独立进程,从Storage服务获取数据,然后将它们写入Elasticsearch集群。

前提条件

注意事项

  • 为listener提供服务的Storage服务必须与集群中其他所有Nebula Graph服务具有相同或更新的版本。

  • 目前您只能为一个图空间一次性的添加listener。向已经存在listener的图空间添加listener会失败。请在一个语句里一次性添加多个listener。

部署流程

第一步:准备listener的配置文件

你必须在需要部署listener的机器上准备listener的配置文件。文件名称必须为nebula-storaged-listener.conf。您可以参考提供的模板

说明:在配置文件中请使用真实的IP地址替换域名或回送地址(127.0.0.1)。

第二步:启动listener

执行如下命令启动启动listener:

  1. ./bin/nebula-storaged --flagfile <listener_config_path>/nebula-storaged-listener.conf

listener_config_path是存储listener配置文件的路径。

第三步:添加listener到Nebula Graph

连接Nebula Graph,然后执行USE <space>进入需要创建全文索引的图空间。最后执行如下命令添加listener:

说明:listener必须使用真实的IP地址。

  1. ADD LISTENER ELASTICSEARCH <listener_ip:port> [,<listener_ip:port>, ...]

请在一个语句里一次性添加多个listener。例如:

  1. nebula> ADD LISTENER ELASTICSEARCH 192.168.8.5:46780,192.168.8.6:46780;

查看listener

执行SHOW LISTENER语句可以列出listener。

示例

  1. nebula> SHOW LISTENER;
  2. +--------+-----------------+-----------------------+----------+
  3. | PartId | Type | Host | Status |
  4. +--------+-----------------+-----------------------+----------+
  5. | 1 | "ELASTICSEARCH" | "[192.168.8.5:46780]" | "ONLINE" |
  6. +--------+-----------------+-----------------------+----------+
  7. | 2 | "ELASTICSEARCH" | "[192.168.8.5:46780]" | "ONLINE" |
  8. +--------+-----------------+-----------------------+----------+
  9. | 3 | "ELASTICSEARCH" | "[192.168.8.5:46780]" | "ONLINE" |
  10. +--------+-----------------+-----------------------+----------+

删除listener

执行REMOVE LISTENER ELASTICSEARCH语句可以删除图空间的所有listener。

示例

  1. nebula> REMOVE LISTENER ELASTICSEARCH;

下一步

部署全文索引和listener后,全文索引会在Elasticsearch集群中自动创建,您可以进行全文搜索。详情请参见全文搜索