Добрый день. Проблема следующая. Есть кластер, в котором три ноды и мастер. Есть три автомата которые настроены каждый на свою ноду. Переодически валится ошибка NoNodeAvailableException ... При этом сам кластер не сообщает про какие либо проблемы с нодами.
вот кусок стека:
at org.elasticsearch.client.transport.TransportClientNodesService.ensureNodesAreAvailable(TransportClientNodesService.java:351)
at org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:249)
at org.elasticsearch.client.transport.TransportProxyClient.execute(TransportProxyClient.java:60)
at org.elasticsearch.client.transport.TransportClient.doExecute(TransportClient.java:388)
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:403)
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:391)
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:46)
at org.elasticsearch.action.ActionRequestBuilder.get(ActionRequestBuilder.java:53)
2020-11-27 12:50:36,211 ERROR [ru.comita.services.ejb.AbstractSheduler] (EJB default - 4) Ошибка при обновлении статусов!: NoNodeAvailableException[None of the configured nodes are available: [{#transport#-1}{JlirWQfTSEC1hn-2btohmA}{eis-ukk-es14-master.uetp.dmz}{10.101.183.138:9300}]]
at org.elasticsearch.client.transport.TransportClientNodesService.ensureNodesAreAvailable(TransportClientNodesService.java:351)
at org.elasticsearch.client.transport.TransportClientNodesService.execute(TransportClientNodesService.java:249)
at org.elasticsearch.client.transport.TransportProxyClient.execute(TransportProxyClient.java:60)
at org.elasticsearch.client.transport.TransportClient.doExecute(TransportClient.java:388)
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:403)
at org.elasticsearch.client.support.AbstractClient.execute(AbstractClient.java:391)
at org.elasticsearch.action.ActionRequestBuilder.execute(ActionRequestBuilder.java:46)
at org.elasticsearch.action.ActionRequestBuilder.get(ActionRequestBuilder.java:53)
at ru.comita.services.ejb.AbstractSheduler.updatePurchaseState(AbstractSheduler.java:313)
at ru.comita.services.ejb.UpdatePurchaseStates44.start(UpdatePurchaseStates44.java:33)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.jboss.as.ee.component.ManagedReferenceMethodInterceptor.processInvocation(ManagedReferenceMethodInterceptor.java:52)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
at org.jboss.invocation.WeavedInterceptor.processInvocation(WeavedInterceptor.java:50)
at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:61)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
at org.jboss.invocation.InterceptorContext$Invocation.proceed(InterceptorContext.java:509)
at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.doMethodInterception(Jsr299BindingsInterceptor.java:90)
at org.jboss.as.weld.interceptors.Jsr299BindingsInterceptor.processInvocation(Jsr299BindingsInterceptor.java:103)
at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:61)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
at org.jboss.invocation.WeavedInterceptor.processInvocation(WeavedInterceptor.java:50)
at org.jboss.as.ee.component.interceptors.UserInterceptorFactory$1.processInvocation(UserInterceptorFactory.java:61)
at org.jboss.invocation.InterceptorContext.proceed(InterceptorContext.java:422)
А у вас между автоматами и сервером никаких "умных" сетевых устройств нет? Прокси там или какой-нибудь многоуровневый коммутатор, который время от времени соединение между автоматами и elasticsearch перерезал бы.
"Много сотен миллионов скачиваний и только ваша сеть имеет такие проблемы?" Не пойдет?
Тогда можно попробовать wireshark поставить на клиента, который ничего не делает и посмотреть, что происходит. Можно еще с установками поиграться, но лучше бы сеть наладить.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.