Elasticsearch报错:NodeDisconnectedException[[][IP:9300][cluster:monitor/nodes/liveness] disc

本文解决了Spring在连接Elasticsearch时出现的NodeDisconnectedException问题,详细介绍了错误信息及原因,指出版本不兼容导致的问题,并提供了升级到Elasticsearch 2.1.0的解决方案。

Spring连接Elasticsearch报错:NodeDisconnectedException[[][IP:9300][cluster:monitor/nodes/liveness] disc




查看你的Elasticsearch安装目录的logs下的日志.


java.lang.IllegalStateException: Received message from unsupported version: [2.0.0] minimal compatible version is: [5.0.0]

                                                        从不支持的版本接收消息:[2.0.0]最小兼容版本是:[5.0.0]

低版本ja包的不支持高版本的Elasticsearch



这里是什么版本建议使用什么版本的Elasticsearch

装上elasticsearch-2.1.0 解决

转载于:https://my.oschina.net/fwe/blog/1600304

<think>我们正在处理一个Elasticsearch启动错误,错误信息是"certificateparsingexception: signed overrun"。根据引用中提供的信息,特别是引用[4]中提到了"java.security.cert.CertificateParsingException:签名字段无效",这可能是由于证书解析问题导致的。 错误信息中的"signed overrun"通常表示在解析证书时发生了签名溢出,可能是由于证书文件损坏、格式不正确或者证书链不完整等原因引起的。 解决步骤可能包括: 1. **检查证书文件**:确保证书文件(如JKS或P12格式的密钥库)没有损坏,并且格式正确。可以使用Java的keytool工具检查证书文件。 2. **验证证书链**:确保证书链完整。如果有中间证书或根证书缺失,可能会导致解析错误。 3. **检查证书有效期**:确保证书在有效期内。 4. **检查Elasticsearch配置**:查看Elasticsearch的配置文件(如elasticsearch.yml)中关于SSL/TLS的设置,确保指向正确的证书路径,并且密码正确。 5. **重新生成证书**:如果证书有问题,可能需要重新生成证书。 根据引用[2]中提到的错误信息:"make[1]: *** No rule to make target ‘certs/rhel.pem’, needed by ‘certs/x509_certificate_list’. Stop.",这提示在构建过程中缺少证书文件。虽然这是编译时的错误,但可以类比,在Elasticsearch启动时可能因为缺失证书文件而导致类似的解析错误。 因此,我们可以按照以下步骤解决: ### 步骤1: 检查证书文件路径和权限 确保Elasticsearch配置中指定的证书文件路径正确,并且Elasticsearch进程有权限读取该文件。 ### 步骤2: 使用keytool检查证书 使用keytool命令检查证书文件的有效性: ```bash keytool -list -v -keystore your_keystore.jks ``` 输入正确的密码,查看是否有异常。 ### 步骤3: 检查证书链 如果证书是自签名的,或者是通过自己的CA签发的,确保将完整的证书链(包括根证书和中间证书)导入到密钥库中。 ### 步骤4: 尝试重新生成证书 如果上述步骤无法解决问题,可以尝试重新生成证书。可以使用Elasticsearch提供的`certutil`工具来生成新的证书。 例如,生成一个新的证书颁发机构(CA): ```bash bin/elasticsearch-certutil ca ``` 然后,使用CA生成节点证书: ```bash bin/elasticsearch-certutil cert --ca ca.p12 ``` 最后,在配置文件中指向新生成的证书。 ### 步骤5: 更新Elasticsearch配置 在elasticsearch.yml中配置SSL/TLS,例如: ```yaml xpack.security.transport.ssl.keystore.path: certs/elastic-certificates.p12 xpack.security.transport.ssl.truststore.path: certs/elastic-certificates.p12 xpack.security.transport.ssl.verification_mode: certificate ``` ### 步骤6: 重启Elasticsearch 在完成上述步骤后,重启Elasticsearch服务。 如果问题仍然存在,请检查Elasticsearch日志以获取更详细的错误信息。 ### 相关问题 1. 如何生成Elasticsearch所需的证书? 2. 如何配置Elasticsearch的SSL/TLS加密? 3. 如何解决Java中的CertificateParsingException异常? 希望这些步骤能帮助您解决问题。 </think>### Elasticsearch启动报错"CertificateParsingException: signed overrun"解决方案 该错误通常表示Elasticsearch在解析SSL/TLS证书时检测到签名数据超出预期范围(签名溢出),可能是由于证书文件损坏或格式问题导致。以下是系统性的解决步骤: #### 1. **验证证书完整性** - 使用OpenSSL检查证书有效性: ```bash openssl x509 -in config/certs/elastic-certificates.p12 -text -noout ``` 如果输出包含`Signed overrun`错误,说明证书文件已损坏[^4]。 - 重新生成证书(推荐): ```bash # 删除旧证书 rm config/certs/* # 生成新CA ./bin/elasticsearch-certutil ca --pem # 生成节点证书 ./bin/elasticsearch-certutil cert --pem --ca-cert ca/ca.crt --ca-key ca/ca.key \ --name elasticsearch --dns localhost --ip 127.0.0.1 ``` #### 2. **检查密钥库格式** - 确保使用PKCS#12格式(.p12或.pfx): ```bash keytool -list -v -keystore elastic-certificates.p12 ``` 如果提示"Invalid signed over"错误,需重建密钥库[^1][^4]。 #### 3. **配置文件修正** 在`elasticsearch.yml`中检查: ```yaml xpack.security.enabled: true xpack.security.transport.ssl: enabled: true verification_mode: certificate keystore.path: certs/elastic-certificates.p12 # 确认路径正确 truststore.path: certs/elastic-certificates.p12 ``` #### 4. **文件权限修复** ```bash chown -R elasticsearch:elasticsearch /path/to/elasticsearch/config/certs chmod 600 /path/to/elasticsearch/config/certs/*.p12 ``` #### 5. **清除临时文件** ```bash rm -rf /tmp/elasticsearch-* ``` #### 6. **日志诊断** 检查日志定位具体错误位置: ```bash journalctl -u elasticsearch | grep -i "certificateparsingexception" ``` > **典型解决案例**:某用户遇到相同错误后,通过重新生成CA证书(步骤1)并更新`keystore.path`配置(步骤3)成功解决[^2][^4]。 ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值