我的Rails应用程序正在使用四个ec2实例运行。当用户使用url访问Rails应用程序时,将使用ELB使用四个ec2实例中的任何一个为用户提供rails应用程序。
Elasticsearch服务器安装在其中一个rails服务器上。我如何才能将安装在一个服务器上的同一Elasticsearch服务器用于其余三个Rails服务器的其余部分来进行搜索?
最佳答案
我正在使用内部(10.x.x.x)地址连接到Elasticsearch。Elasticsearch::Model.client = Elasticsearch::Client.new(host:'10.x.x.x',port:9200)
只要正确设置入站规则,您就可以从任何ec2主机连接到您的elasticsearch实例。
确保elasticsearch在10.x.x.x上侦听,而不仅在127.0.0.1上侦听。
将network.host: _site_
放入elasticsearch.yml
关于ruby-on-rails - 在另一个Rails应用程序中使用一个Rails应用程序的Elasticsearch服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36616596/