ES 7.x api 遇到的一些问题

在接入es的过程中总结了一些出现的问题

1.NoNodeAvailableException[None of the configured nodes are available:

如果es集群设置了密码,但是客户端连接的时候没有设置用户名密码,就会报这个错误,如果需要密码认证连接es集群就需要rest客户端api,不能用transportclient,因为7.x之后取消了密码认证的PreBuiltXPackTransportClient 连接客户端


2.在restHighLevelClient执行时,报了一些错误,错误的原因都是因为jar包冲突

(1)java.lang.RuntimeException: Request cannot be executed; I/O reactor status: STOPPED

(2)java.lang.NoSuchMethodError: org.apache.commons.codec.binary.Base64.encodeBase64URLSafeString

,在发现这几种错误的时候,可以看下这几个jar包有没有冲突的情况

Httpclient

Httpcore

commons-codec


3.在使用api连接es集群时

9300是tcp通讯端口,集群间和transportclient都是用的9300;

9200是http协议暴露的RESTful服务的端口号,在使用restHighLevelClient时,需要使用9200端口

你可能感兴趣的:(ES 7.x api 遇到的一些问题)