4

我有一个配置了 DHF 5 和 ml-gradle 的 MarkLogic 集群。我有多个 HTTP 应用程序服务器和几个查询选项文件。

当我执行时mlDeploy,查询选项文件被部署到最终的应用服务器,而不是其他服务器。有没有办法告诉 ml-gradle 将它们部署到其他应用服务器?甚至,某些应用程序服务器的某些选项文件?

我可以使用 curl 手动执行此操作,但我想避免这样做。

4

2 回答 2

4

有一个内置任务可以帮助将它们从一个上下文(应用服务器)复制到另一个。有关详细信息,请参阅 ml-gradle wiki:

https://github.com/marklogic-community/ml-gradle/wiki/How-modules-are-loaded#copying-search-options-to-additional-app-servers

如果您有想要在最终和暂存中公开的搜索选项,则特别有用。默认mlLoadModules将其上传到 final,然后该任务可以将其传播到登台。

于 2021-01-14T08:35:08.177 回答
1

如果您计划将搜索选项加载到 DHS,那么您可能需要使用不同的方法来加载搜索选项。gradle 任务只会将选项加载到一组中的最终应用程序服务器中,并且无法使用另一个答案中提到的复制任务访问该文件。

DHS 默认有多个组:

  • 评估者(主要群体)
  • 分析仪
  • 馆长
  • 操作员

静态 E 节点分配给 Evaluator 组,而动态 E 节点将分配给其他组之一。

将搜索选项文件放在 gradle 项目中的以下位置:

src/main/ml-modules/root/[Group Name]/[App Server Name]/rest-api/options

本文提供了有关该过程的更多详细信息:

在 DHS 中部署 REST API 搜索查询选项

于 2021-01-14T13:20:16.447 回答