【问题标题】:Spring Data Elasticsearch with RestHighLevelClient for ES version 6.0.1Spring Data Elasticsearch with RestHighLevelClient for ES 6.0.1
【发布时间】:2021-04-24 09:56:23
【问题描述】:

我们有一个应用程序使用 spring data Elasticsearch(版本 3.1.20.RELEASE)和传输客户端连接到弹性搜索版本 6.1.2。

现在我们必须使用相同的应用程序连接到弹性搜索版本 6.0.1,它是 AWS 托管的 ES。问题是,它似乎没有为客户端公开传输端口 (9300)。

如果我们移动到更高版本的spring data Elasticsearch,它似乎不支持elasticsearch cluster 6.0.x,并且当前和更低版本的spring data Elasticsearch似乎不支持REST客户端。

我们无法升级我们的 ES 集群版本。因此,要么我们必须找到一种使用传输客户端连接到 AWS 的方法,要么我们必须使我们的应用程序与 REST 客户端兼容。我们如何解决这个问题?

【问题讨论】:

    标签: elasticsearch spring-data spring-data-elasticsearch


    【解决方案1】:

    AWS 不公开传输端口/协议。所以您必须使用 REST 协议。对于 Spring Data Elasticsearch,这至少意味着 3.2 版。但这需要 Elasticsearch 6.8。所以使用 Spring Data Elasticsearch 的唯一方法就是升级你的 ES 集群。

    另一种解决方案是使用Elasticsearch的RestClient和RestHighlevelClient实现访问集群,而不是使用Spring数据Elasticsearch

    【讨论】:

    • 是的,想了这么多。我们在 AWS 中创建了一个新的托管 Elasticsearch v7.9。 Spring Data ES 似乎可以正常工作。
    猜你喜欢
    • 2020-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-22
    • 1970-01-01
    • 2014-11-27
    • 1970-01-01
    • 2018-12-22
    相关资源
    最近更新 更多