如何配置 Netflix conductor 以运行独立的弹性搜索而不是嵌入式弹性搜索?
如果你有一个 conductor-config.properties,只需确保这些属性指向你已经启动并运行的有效 elasticsearch:
workflow.elasticsearch.instanceType=EXTERNAL
workflow.elasticsearch.url=http://elasticsearch:9200
然后应该能够使用该配置运行导体: java conductor-server-2.15.0-SNAPSHOT-all.jar conductor-config.properties
https://github.com/Netflix/conductor/blob/master/es5-persistence/src/main/java/com/netflix/conductor/dao/es5/index/ElasticSearchRestDAOV5.java您可以以此为例,自行交换弹性容器,修改 conductor-config.properties。当您运行时,它将被复制:退房 https://github.com/s50600822/conductor-cheat在回购中只做
docker-compose up
查看 https://github.com/Netflix/conductor/blob/master/es5-persistence/src/main/java/com/netflix/conductor/dao/es5/index/ElasticSearchRestDAOV5.java 以获取其他选项。
要添加外部弹性搜索,我们需要遵循代码更改,如中所述下面的链接。https://github.com/Netflix/conductor/tree/master/es5-persistence。并重建jar并使用属性再次运行导体服务器。
如果您仍然收到错误,我建议按照以下链接进行操作https://github.com/Netflix/conductor/issues/489。
您可以使用 elasticsearch2 或 elasticsearch5 的独立安装,因为相关的支持类已经随 Netflix Conductor 二进制文件一起提供。
要进行外部配置,您必须执行以下操作
- 安装和配置独立的弹性搜索。默认情况下安装将公开 2 个端口 9200/HTTP 或 9300/TCP。
- 使用主机和端口更新服务器属性文件,以便通信将开始与 的独立实例发生弹性搜索。
希望这有帮助。