使用极限网关实现 ES 跨集群搜索

使用 ES 的小伙伴,有没有在用跨集群搜索的? 熟悉 ES 的小伙伴都知道,ES 本身就能实现跨集群搜索,那为啥还要聊这个?试想一下,如果集群都上线投产了,才出现跨集群搜索需求,那么可能出现两种情况:

  1. 两个集群都使用了证书加密传输,要实现互联,需要重新设置证书,还要重启集群;
  2. 两个集群之间可能网络不能互通;

到了这里,我们的 极限网关 就派的上用场了。在以上场景中,只要网关能顺利连接到各个集群就行了。

话不多说,我们来 demo 一下。

数据准备

集群 A,含有 test 和 test-2 索引,数据很简单。

集群 B,含有 test-follower 和 test-3 索引,其中 test-follower 索引是集群 A 的复制索引。

网关配置

网关配置使用专门的 merge_cross_search_results 配置。

做个简单的演示,只需修改这三个变量。

  • LR_ELASTICSEARCH_ENDPOINT1 : 代表集群 A ;
  • LR_ELASTICSEARCH_ENDPOINT2 : 代表集群 B ;
  • LR_ELASTICSEARCH_ENDPOINT3 : 代表默认集群,可以复用集群 A 或 B ;

集群 A 和 B 是我们要做跨集群搜索的,搜索请求会在这两个集群执行,然后合并结果。

非搜索请求会发送到这个 LR_ELASTICSEARCH_ENDPOINT3 指定的集群,但是 _cat/indices?format=json 会显示集群 A 和 B 的索引。

跨集群搜索

测试一

通配符 test* 查询集群 A 和 B ,所有数据,注意查询语法,必须包含冒号。

结果包含了集群 A 的索引:test 和 test-2 ,以及集群 B 的索引:test-follower 和 test-3 。

测试二

通配符 test* 查询集群 A 和 B ,包含关键字 cluster 的内容。

测试三

通配符 test* 查询集群 A 和 B ,进行聚合查询。

测试四

通配符 test* 查询集群 A 和 B ,进行带查询条件的聚合查询。

测试五

显示集群 A 和 B 的所有索引。

最后

这次的分享就到这里了,相信大家也看到了极限网关是非常灵活的。欢迎与我一起交流 ES 的各种问题和解决方案。

相关推荐
小羊没烦恼!5 天前
微服务化的基石——持续集成
java·大数据·word·powerpoint·.net
一隅论数智5 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
LaughingZhu5 天前
Product Hunt 每日热榜 | 2026-09-19
人工智能·深度学习·神经网络·搜索引擎·百度
尧炎科技5 天前
防潮抗变形,就选纯品梅花全桉多层板
大数据
程序员大阳5 天前
副队长大数据教程(5)--集群情况下虚拟机网络配置
大数据·集群·nat·网路
自由能燃气设备5 天前
商用全预混低氮冷凝锅炉免费方案vs付费方案对比+选型避坑指南
大数据·数据库·人工智能
科创致远5 天前
科创致远 ESOP 系统核心效能与实战价值展示
大数据·数据库·人工智能·精益工程
嘉立创FPC苗工5 天前
FPC与机器人的双向赋能,解锁智能装备进化新势能
大数据·人工智能·制造·fpc·电路板
AI职业加油站5 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
龙亘川5 天前
一网统管AI平台民生业务实践:基于城市数字底座赋能公积金业务服务升级
大数据·安全·智慧城市·开源软件·数据可视化·政务