Closed taoyantu closed 2 years ago
给个具体的场景和查询样例,我看看怎么实现?
就是我们准备对ES集群进行升级,从ES 5 版本升级到ES 7 版本,新搭建ES 7 集群。用两套logstash,将数据在两个集群都写入。 现在一些客户端服务 查询数据,使用的是 msearch接口
POST _msearch {"index":"xxxxxx"} {"query":{yyyyyy}}
为了灰度验证,希望以索引名作为判断,将指定的索引从访问老集群迁移到访问新集群,单不影响其他索引的访问。 这种请求体里的 index 能做判断,进行路由分流吗?
更好的做法可以参考:
通过索引名是没有办法做到合理的切换的,应用会搞的特别复杂,走网关无缝透明就可以轻松实现。
请求体进行路由分流是完全可以的,可以使用 JavaScript 来进行解析和判断,比如这个教程: https://gateway.infinilabs.com/zh/docs/tutorial/path_rewrite_by_javascript/
请问一下,网关能对 _msearch的查询方法进行路由吗?根据索引名称发送到不同的es进行查询?