我正在尝试设置跨群集搜索。
我的问题是我的所有ES群集都支持带有基本身份验证的nginx代理
我可以通过请求nginx端点来访问弹性休止端点:
https://<username>:<password>@<ngix-enpoint>:<ngix-port>
我可以使用此端点和基本身份验证来设置跨群集搜索吗?
当前elasticsearch.yml
配置:
search:
remote:
cluster_one:
seeds: <ngix-enpoint>:<ngix-port>
cluster_two:
seeds: <ngix-enpoint>:<ngix-port>
我应该在哪里添加身份验证信息? 谢谢。
答案 0 :(得分:0)
根据文档,elasticsearch跨群集搜索功能需要tcp连接,不能配置http端点。
不幸的是,官方弹性文档并没有明确说明,但要注意config examples中使用的端口号:
search:
remote:
cluster_one:
seeds: 127.0.0.1:9300
cluster_two:
seeds: 127.0.0.1:9301
这些端口号来自transport module
的{{3}} 9300-9400。
可以将nginx配置为代理到弹性搜索的tcp连接,例如可以找到default range。
如果您的跨群集搜索节点位于相同的专用子网中,则作为远程群集,最好公开端口9300并直接连接到远程群集节点。