弹性搜索无法启动 - 使用 Ansible 进行设置

Posted

技术标签:

【中文标题】弹性搜索无法启动 - 使用 Ansible 进行设置【英文标题】:Elastic Search fails to start - Setting using Ansible 【发布时间】:2019-03-09 03:43:25 【问题描述】:

启动弹性搜索时出现以下错误。弹性搜索是通过 ansibles 调用的:

[2018-10-03T19:40:53,846][INFO][o.e.n.Node][nZYtSvi] 开始... [2018-10-03T19:40:53,951][ERROR][o.e.b.Bootstrap ] [nZYtSvi] 异常 java.lang.IllegalArgumentException: 否 找到正在运行的站点本地(私有)地址,得到 [name:lo (lo),名称:eth0 (eth0)] 在 org.elasticsearch.common.network.NetworkUtils.getSiteLocalAddresses(NetworkUtils.java:184) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.common.network.NetworkService.resolveInternal(NetworkService.java:246) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.common.network.NetworkService.resolveInetAddresses(NetworkService.java:220) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.common.network.NetworkService.resolveBindHostAddresses(NetworkService.java:130) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.transport.TcpTransport.bindServer(TcpTransport.java:732) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.transport.netty4.Netty4Transport.doStart(Netty4Transport.java:175) ~[?:?] 在 org.elasticsearch.common.component.AbstractLifecycleComponent.start(AbstractLifecycleComponent.java:69) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.transport.TransportService.doStart(TransportService.java:219) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.common.component.AbstractLifecycleComponent.start(AbstractLifecycleComponent.java:69) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.node.Node.start(Node.java:694) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Bootstrap.start(Bootstrap.java:278) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:351) [elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:132) [elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:123) [elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:70) [elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) [elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.cli.Command.main(Command.java:90) [elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) [elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) [elasticsearch-5.6.12.jar:5.6.12] [2018-10-03T19:40:53,957][警告 ][o.e.b.ElasticsearchUncaughtExceptionHandler] [] 未捕获的异常 在线程 [main] org.elasticsearch.bootstrap.StartupException 中: java.lang.IllegalArgumentException:没有正常运行的站点本地 找到(私人)地址,得到 [name:lo (lo), name:eth0 (eth0)] org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:136) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:123) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:70) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:134) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:91) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:84) ~[elasticsearch-5.6.12.jar:5.6.12] 原因: java.lang.IllegalArgumentException:没有正常运行的站点本地 找到(私人)地址,得到 [name:lo (lo), name:eth0 (eth0)] org.elasticsearch.common.network.NetworkUtils.getSiteLocalAddresses(NetworkUtils.java:184) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.common.network.NetworkService.resolveInternal(NetworkService.java:246) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.common.network.NetworkService.resolveInetAddresses(NetworkService.java:220) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.common.network.NetworkService.resolveBindHostAddresses(NetworkService.java:130) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.transport.TcpTransport.bindServer(TcpTransport.java:732) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.transport.netty4.Netty4Transport.doStart(Netty4Transport.java:175) ~[?:?] 在 org.elasticsearch.common.component.AbstractLifecycleComponent.start(AbstractLifecycleComponent.java:69) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.transport.TransportService.doStart(TransportService.java:219) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.common.component.AbstractLifecycleComponent.start(AbstractLifecycleComponent.java:69) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.node.Node.start(Node.java:694) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Bootstrap.start(Bootstrap.java:278) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:351) ~[elasticsearch-5.6.12.jar:5.6.12] 在 org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:132) ~[elasticsearch-5.6.12.jar:5.6.12] ... 6 更多 [2018-10-03T19:40:54,892][INFO][o.e.n.Node][nZYtSvi] 停止... [2018-10-03T19:40:54,896][INFO][o.e.n.Node ] [nZYtSvi] 停止 [2018-10-03T19:40:54,896][INFO ][o.e.n.Node ] [nZYtSvi] 关闭 ... [2018-10-03T19:40:54,909][INFO ][o.e.n.Node ] [nZYtSvi] 关闭

【问题讨论】:

【参考方案1】:

尝试在 elasticsearch.yml 配置文件中添加 network.host 0.0.0.0

【讨论】:

以上是关于弹性搜索无法启动 - 使用 Ansible 进行设置的主要内容,如果未能解决你的问题,请参考以下文章

在 rspec 测试用例中启动弹性搜索集群时权限被拒绝

无法通过弹性搜索与 dockerized 进程进行通信,并显示“所有已配置的节点都不可用”

如何记录所有已执行的弹性搜索查询

如何使用弹性搜索索引 10 亿行 CSV 文件?

是否有可能对弹性搜索中的热门命中结果进行聚合?

使用密码验证后弹性搜索`无法建立连接,因为目标机器主动拒绝`