1.问题描述
一小伙伴使用DEM搭建DEM搭建集群时提示服务器内部错误,根据沟通之前环境正常。故障信息如下图所示:
2.处理过程
远程协助小伙伴排查,首先查看dem资源监控信息主机状态信息正常。
于是查看tommcat日志排查发现提示Caused by: java.net.NoRouteToHostException: 没有到主机的路由 (Host unreachable)
详细信息如下:
[root@dw01 logs]# tail -50f catalina.out
2023-02-22 23:09:42
[ERROR] process remote(192.168.100.249) call fail!
com.dameng.common.util.rpc.RpcException: 没有到主机的路由 (Host unreachable)
at com.dameng.common.util.rpc.RpcException.throwz(SourceFile:56) ~[com.dameng.common.util.jar:?]
at com.dameng.common.util.rpc.Rpc$1.invoke(SourceFile:183) ~[com.dameng.common.util.jar:?]
at com.sun.proxy.$Proxy90.canWrite(Unknown Source) ~[?:?]
at com.dameng.dem.server.service.DMAgentServiceClient.canWrite(DMAgentServiceClient.java:248) ~[dem.jar:?]
at com.dameng.dem.server.service.DMAgentServiceClientService.checkDeployEpParamForRemoteV2(DMAgentServiceClientService.java:690) ~[dem.jar:?]
at sun.reflect.GeneratedMethodAccessor48.invoke(Unknown Source) ~[?:?]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_222-ea]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_222-ea]
at com.dameng.dem.server.service.DEMRPC.invokeAndEncodeResponse(DEMRPC.java:42) ~[dem.jar:?]
at com.dameng.dem.server.service.BaseService.doProcessCall(BaseService.java:235) ~[dem.jar:?]
at com.dameng.dem.server.service.BaseService.processCall(BaseService.java:129) ~[dem.jar:?]
at com.dameng.dem.server.service.RemoteServiceServlet.processPost(RemoteServiceServlet.java:284) ~[dem.jar:?]
at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62) ~[gwt-servlet.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:661) ~[servlet-api.jar:?]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) ~[servlet-api.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[catalina.jar:8.5.37]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.37]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) ~[tomcat-websocket.jar:8.5.37]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.37]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.37]
at com.dameng.dem.server.filter.UrlFilter.doFilter(UrlFilter.java:107) ~[dem.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.37]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.37]
at com.dameng.dem.server.filter.EncodingFilter.doFilter(EncodingFilter.java:30) ~[dem.jar:?]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[catalina.jar:8.5.37]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[catalina.jar:8.5.37]
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198) ~[catalina.jar:8.5.37]
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) ~[catalina.jar:8.5.37]
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493) ~[catalina.jar:8.5.37]
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) ~[catalina.jar:8.5.37]
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) ~[catalina.jar:8.5.37]
at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650) ~[catalina.jar:8.5.37]
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) ~[catalina.jar:8.5.37]
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) ~[catalina.jar:8.5.37]
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:800) ~[tomcat-coyote.jar:8.5.37]
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) ~[tomcat-coyote.jar:8.5.37]
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:806) ~[tomcat-coyote.jar:8.5.37]
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1498) ~[tomcat-coyote.jar:8.5.37]
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) ~[tomcat-coyote.jar:8.5.37]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:1.8.0_222-ea]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:1.8.0_222-ea]
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) ~[tomcat-util.jar:8.5.37]
at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_222-ea]
Caused by: java.net.NoRouteToHostException: 没有到主机的路由 (Host unreachable)
at java.net.PlainSocketImpl.socketConnect(Native Method) ~[?:1.8.0_222-ea]
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350) ~[?:1.8.0_222-ea]
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206) ~[?:1.8.0_222-ea]
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188) ~[?:1.8.0_222-ea]
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392) ~[?:1.8.0_222-ea]
at java.net.Socket.connect(Socket.java:589) ~[?:1.8.0_222-ea]
at com.dameng.common.util.rpc.a.cttrr.<init>(SourceFile:29) ~[com.dameng.common.util.jar:?]
at com.dameng.common.util.rpc.a.afgfgh.<init>(SourceFile:38) ~[com.dameng.common.util.jar:?]
at com.dameng.common.util.rpc.a.d5rtyy.afgfgh(SourceFile:28) ~[com.dameng.common.util.jar:?]
at com.dameng.common.util.rpc.Rpc$1.invoke(SourceFile:149) ~[com.dameng.common.util.jar:?]
... 41 more
通过日志提示对环境检查,发现其中一台防火墙处于开启状态。于是关闭防火墙
重新运行部署,正常部署完成无异常
日常实践中通过表面是看不出具体是什么问题的,一定第一时间去查看日志分析具体原因。同时部署时检查环境是否配置到位,以便于达到事倍功半的效果。
文章
阅读量
获赞