AutohomeCorp / frostmourne

Frostmourne(霜之哀伤监控平台)是基于Elasticsearch, Prometheus, SkyWalking, InfluxDB,Mysql/TiDB,ClickHouse, SqlServer, IoTDB数据的分布式监控报警系统. Monitor & alert & alarm for Elasticsearch,Prometheus data。主要使用springboot2 + vue-element-admin
https://frostmourne-demo.github.io
MIT License
1.39k stars 308 forks source link

配置ES 8.7的数据源时,后台报SSLException: Received fatal alert: protocol_version #167

Closed voodoodoy closed 4 months ago

voodoodoy commented 4 months ago
日志 ```log "2024-05-28T10:12:39.461+08:00" "ERROR" "com.autohome.frostmourne.monitor.dao.elasticsearch.EsRestClientContainer" "87" "java.io.IOException" "Received fatal alert: protocol_version" "error when check cluster health" "com.autohome.frostmourne.monitor.dao.elasticsearch.EsRestClientContainer" "health" "-" "-" "tech" "frostmourne" "frostmourne.monitor" "-" "208" "http-nio-10054-exec-5" "-" "10.80.7.76" "-" "-" "-" "-" "java.io.IOException: Received fatal alert: protocol_version at org.elasticsearch.client.RestClient.extractAndWrapCause(RestClient.java:828) at org.elasticsearch.client.RestClient.performRequest(RestClient.java:248) at org.elasticsearch.client.RestClient.performRequest(RestClient.java:235) at org.elasticsearch.client.RestHighLevelClient.internalPerformRequest(RestHighLevelClient.java:1762) at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1732) at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1694) at org.elasticsearch.client.ClusterClient.health(ClusterClient.java:146) at com.autohome.frostmourne.monitor.dao.elasticsearch.EsRestClientContainer.health(EsRestClientContainer.java:85) at com.autohome.frostmourne.monitor.dao.elasticsearch.ElasticsearchSourceManager.reloadEsRestClientContainer(ElasticsearchSourceManager.java:49) at com.autohome.frostmourne.monitor.service.admin.impl.DataAdminService.saveDataSource(DataAdminService.java:87) at com.autohome.frostmourne.monitor.controller.DataNameController.saveDataSource(DataNameController.java:29) at sun.reflect.GeneratedMethodAccessor102.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) at java.lang.reflect.Method.invoke(Method.java:508) at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:879) at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:793) at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040) at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943) at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:909) at javax.servlet.http.HttpServlet.service(HttpServlet.java:660) at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) at javax.servlet.http.HttpServlet.service(HttpServlet.java:741) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:202) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:139) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:747) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:343) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:373) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1590) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1160) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:820) Caused by: javax.net.ssl.SSLException: Received fatal alert: protocol_version at com.ibm.jsse2.k.a(k.java:41) at com.ibm.jsse2.as.a(as.java:39) at com.ibm.jsse2.as.a(as.java:81) at com.ibm.jsse2.as.j(as.java:389) at com.ibm.jsse2.as.b(as.java:249) at com.ibm.jsse2.as.a(as.java:272) at com.ibm.jsse2.as.unwrap(as.java:383) at javax.net.ssl.SSLEngine.unwrap(SSLEngine.java:5) at org.apache.http.nio.reactor.ssl.SSLIOSession.doUnwrap(SSLIOSession.java:278) at org.apache.http.nio.reactor.ssl.SSLIOSession.doHandshake(SSLIOSession.java:332) at org.apache.http.nio.reactor.ssl.SSLIOSession.isAppInputReady(SSLIOSession.java:537) at org.apache.http.impl.nio.reactor.AbstractIODispatch.inputReady(AbstractIODispatch.java:120) at org.apache.http.impl.nio.reactor.BaseIOReactor.readable(BaseIOReactor.java:162) at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvent(AbstractIOReactor.java:337) at org.apache.http.impl.nio.reactor.AbstractIOReactor.processEvents(AbstractIOReactor.java:315) at org.apache.http.impl.nio.reactor.AbstractIOReactor.execute(AbstractIOReactor.java:276) at org.apache.http.impl.nio.reactor.BaseIOReactor.execute(BaseIOReactor.java:104) at org.apache.http.impl.nio.reactor.AbstractMultiworkerIOReactor$Worker.run(AbstractMultiworkerIOReactor.java:591) ... 1 more " "2024-05-28T10:12:39.463+08:00" "WARN" "com.autohome.frostmourne.monitor.dao.elasticsearch.ElasticsearchSourceManager" "50" "-" "-" "elasticsearch not health when reload. info: {""name"":""es"",""sniff"":false,""esHostList"":""192.168.2.60:30920"",""settings"":{""https"":""YES"",""version"":""8.x"",""sslCert"":""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"",""sslFormat"":""pkcs12"",""sslCertPassword"":""xxxxx"",""username"":""xxxxx"",""password"":""xxxxxx""},""lastUpdateTime"":1716862359430,""version"":""8.x""}" "com.autohome.frostmourne.monitor.dao.elasticsearch.ElasticsearchSourceManager" "reloadEsRestClientContainer" "-" "-" "tech" "frostmourne" "frostmourne.monitor" "-" "208" "http-nio-10054-exec-5" "-" "10.80.7.76" "-" "-" "-" "-" "-" ```
voodoodoy commented 4 months ago

问题已解决,封装了eclipse-temurin:11.0.21_9-jdk的镜像作为基础镜像,jdk8直到8u261后才支持TLSv1.3,jdk11以上默认支持,不知道是不是这个原因,我看原先提供的镜像里是jdk8u251