异常:NoNodeAvailableException

Posted shuaiandjun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了异常:NoNodeAvailableException相关的知识,希望对你有一定的参考价值。

现象

 1、启动时候出现

node null not part of the cluster Cluster [********], ignoring...

2、启动时正常,但是请求时出现

NoNodeAvailableException

原因

1、配置错误

     使用Transport Client时要特别注意配置信息

     (1)spring.data.elasticsearch.cluster-name

技术分享图片

(2)spring.data.elasticsearch.cluster-nodes(有一种情况是访问es是外网地址,但是却在同一个内网环境中且内网访问不通,这时要关闭嗅探功能

技术分享图片

 (3)索引名称

技术分享图片

(4)TransportClient的访问端口是9300!9300!9300

(5)Settings settings = Settings.builder() .put("client.transport.sniff", false)//关闭嗅探,避免进入内网搜索

    当ES服务器监听使用内网服务器IP而访问使用外网IP时,如果将client.transport.sniff设置为true,则在自动发现时会使用内网IP进行通信,导致无法连接到ES服务器;建议将参数  设置为false,然后直接使用addTransportAddress方法手动添加入口节点;

(6)TransportClient版本与ES版本不一致;

(7)InetAddress.getByName()方法中参数值,必须替换为您的ES实例基本信息界面中的内网地址(比如192.168.0.37)。

      

以上是关于异常:NoNodeAvailableException的主要内容,如果未能解决你的问题,请参考以下文章

Kotlin 协程协程异常处理 ① ( 根协程异常处理 | 自动传播异常 | 在协程体捕获异常 | 向用户暴露异常 | 在 await 处捕获异常 | 非根协程异常处理 | 异常传播特性 )

Kotlin 协程协程异常处理 ① ( 根协程异常处理 | 自动传播异常 | 在协程体捕获异常 | 向用户暴露异常 | 在 await 处捕获异常 | 非根协程异常处理 | 异常传播特性 )

异常--异常体系异常的处理异常的捕获finally语句块和自定义异常

Java❤️认识异常异常的基本使用认识异常(异常详解)❤️

异常(异常)

JavaSE基础七----<异常>常见的异常,异常处理机制,自定义异常