web端连接es
通过安装head插件,可以通过地址http://localhost:9200/_plugin/head/ 来访问控制台
java client 连接es遇到的2个问题
<b>没有可用的节点</b>
javaclient连接未经配置的es,会报出<code>None of the configured nodes are available</code>异常。解决办法是配置2个参数。这两个参数可以在<code>es_home/config/elasticsearch.yml</code>中配置。然后重启es即可。
network.publish_host: 192.168.1.75
network.bind_host: 192.168.1.75##z注意,":"后面要加一个空格,否则会报错。
参数配置成功后,如果仍然报相同的错误,请确保防火墙的策略正确,或者防火墙被关闭。
下面有详细的异常信息和其他的一些相关信息。
异常信息:
Exception in thread "main" NoNodeAvailableException[None of the configured nodes are available: [{#transport#-1}{192.168.1.75}{es/192.168.1.75:9300}]]
at org.elasticsearch.client.transport.TransportClientNodesService.ensureNodesAreAvailable(TransportClientNodesService.java:290)
at org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:207)
at org.elasticsearch.client.transport.support.TransportProxyClient.execute(TransportProxyClient.java:55)
at org.elasticsearch.client.transport.TransportClient.doExecute(TransportClient.java:288)
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:359)
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:86)
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:56)
at c11_se.es.EsDemo.main(EsDemo.java:20)
分析:
原因是默认情况下(2.3.x)的transport模块的2个配置发布地址、绑定地址的host是<code>127.0.0.1</code>
启动日志中会打印这两个参数
<code>[xxxx][INFO ][transport ] [Zero] publish_address {127.0.0.1:9300}, bound_addresses {127.0.0.1:9300}, {[::1]:9300}</code>
在_plugin/head界面中也可以查看到这些信息。
。
只需要对这这2个配置进行修改即可。
网友评论