前几天把测试环境ElasticSearch迁移到了另外一个网段的服务器,ElasticSearch环境配置没有改变,这几天经常出现刷新页面连接一直显示pending,过很长一段时间后返回的结果并没有搜到资源,再次刷新却能搜索到结果,经过查询web端日志发现ElasticSearch API报错:
None of the configured nodes were available:
[[Blind Justice][XBnx_giNQYSx8U9eFqfTbQ][localhost.localdomain][inet[/172.16.81.109:9300]]{max_local_storage_nodes=10}]
使用telnet连接ElasticSearch服务正常,web端代码未改动,推测为ElasticSearch配置问题,经查资料得知,在默认情况下,ElasticSearch使用0.0.0.0地址,查看ElasticSearch配置,果然network.host项并未配置,修改elasticsearch.yml配置,添加network.host=172.16.81.109 后重启,问题解决。
ElasticSearch部署到不同网段应修改elasticsearch.yml配置,将network.host设置为ElasticSearch所在服务器的ip地址即可。